Choose an approach
Full-text search and sparse-vector search both rank on tokens. Full-text search matches tokens exactly, unless a field opts into stemming or other text processing. Sparse-vector search weights each token in your documents, which puts it between full-text search and semantic search. For general keyword retrieval, start with full-text search.
Hybrid search
Hybrid search combines two or more signals in a single workflow. It isn’t a field type, so an index declares nothing extra for it, and any index whose schema covers at least two signals can serve it. Reach for it when no single signal orders results well, as in a catalog where part numbers and descriptive phrases are both relevant. Full-text with dense is the common pairing on a document index, and sparse with dense is what a legacy vector index runs, but any combination works, including all three at once. A metadata or text-match filter can also serve as one of the signals, narrowing the pool before another one ranks what’s left. See Hybrid search for the patterns that combine them.Tune search
Each of these works with any approach:- Filter by metadata narrows the candidate pool before ranking, so an out-of-scope document can’t take a result slot. Text-match filters (
$match_phrase,$match_all,$match_any) do the same on full-text fields. - Rerank results reorders what a search returns, using a model that reads the query and the document together.
- Parallel queries raise throughput when you run many searches at once.