Search

Full-text search. No separate cluster.

BM25 tokenised full-text search across any stored attribute — in the same namespace and through the same API as your vector search. No Elasticsearch. No secondary index to maintain.

Capabilities

BM25 ranking, stored in your bucket.

Ranking

Okapi BM25 scoring

Industry-standard BM25 ranking with term frequency saturation and document length normalization. Better than TF-IDF, with no external search engine dependency.

Tokenization

Multi-language tokenizer

Unicode-aware tokenization supporting Latin, CJK, and other character sets. Stopword removal and stemming configurable per namespace.

Attributes

Search across any stored field

Full-text search targets the text attributes you store alongside each vector. Search across title, body, metadata fields — no schema declaration needed upfront.

Storage

Inverted index in your bucket

The inverted index is stored as objects in your bucket — not on ManyVector disks. Same durability and sovereignty guarantees as your vector data.

Filtering

Combine with metadata filters

Pair full-text search with structured attribute filters. Search for "invoice" only in documents where source == "finance" and date > "2025-01-01".

Hybrid

Fuse with vector results via RRF

Use full-text as a standalone search or combine with vector results using Reciprocal Rank Fusion for the highest-quality retrieval in a single query.

By the numbers

Full-text search without the ops overhead.

BM25

ranking algorithm

<5ms

p50 text query

Any

language supported

1

API for all search modes

FAQ

Common questions

What ranking algorithm powers full-text search?

BM25 (Okapi BM25) — the same algorithm used by Elasticsearch and Lucene. It ranks results by term frequency and inverse document frequency, tuned per field length.

Do I need a separate search engine?

No. Full-text search is built into ManyVector's query API. No Elasticsearch, no OpenSearch, no separate cluster to operate.

How do I control which fields are searchable?

Pass searchable_attributes when creating your namespace. Only those fields are tokenized and indexed for text queries.

Is stemming and stop-word removal supported?

Yes. ManyVector applies Unicode-aware tokenization and English stemming by default. Additional language configurations are available in the API.

Full-text search without the ops overhead.