Skip to content

feat: Support full-text search (FTS) in read_lance() #15

@Lucas61000

Description

@Lucas61000

Is your feature request related to a problem?

The Lance library natively supports full-text search via dataset.scanner(full_text_query=...) when an INVERTED index is present, but daft-lance's read_lance() does not expose this parameter.

Users who build FTS indices through daft_lance.create_scalar_index(index_type="INVERTED") have no way to perform full-text queries through Daft's DataFrame API — they must drop down to lance.dataset().scanner() directly.

A TODO has been in lance_scan.py since this feature was first noted: # TODO support fts and fast_search. Vector search (nearest) already follows this pattern; FTS is the missing counterpart.

Describe the solution you'd like

Pass full_text_query through default_scan_options, following the same pattern as nearest (vector search):

df = daft.read_lance(
    "s3://bucket/data/",
    default_scan_options={"full_text_query": "daft"},
)

Additional Context

Would you like to implement a fix?

Yes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions