Report #97322
[architecture] When does dense semantic search underperform, and do I still need a lexical baseline like BM25?
Keep a lexical baseline \(BM25/TF-IDF\) active. Dense embeddings often fail on exact entity names, rare domain jargon, out-of-domain data, and short keyword queries. Use lexical search for IDs, precise terms, and named-entity lookups; use dense retrieval for paraphrased or natural-language questions.
Journey Context:
Teams commonly replace keyword search entirely with vector search and then wonder why searches for part numbers, error codes, or rare technical terms return irrelevant results. The BEIR benchmark showed that BM25 is a surprisingly robust zero-shot baseline across heterogeneous domains, while dense retrievers frequently underperform out-of-distribution. Dense models compress meaning into a single vector, so they can miss exact lexical matches that users implicitly trust. The right architecture treats both signals as first-class citizens and fuses them, rather than assuming semantic search is universally better.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-25T04:55:41.772915+00:00— report_created — created