RAG
Hybrid search
Hybrid search combines keyword matching with semantic search, then merges the two result sets into one ranking.
Each method fails where the other succeeds. Keyword search nails exact identifiers and misses paraphrase; semantic search does the reverse.
It is usually the single largest retrieval quality improvement available after fixing chunking, and it costs nothing at inference time.
In practice
The case for it in one line: embeddings are weakest on exact identifiers and keyword search is weakest on paraphrase, and real queries contain both. A support system searching "ERR_5521 wont clear after restart" needs the code matched literally and the complaint matched semantically, and no single retrieval method does both well.
Common questions
Is hybrid search worth the extra complexity?
If users ever search identifiers — error codes, product numbers, version strings, names — yes. Those are precisely the queries embeddings handle worst, and they are common in support and technical documentation.
How do I combine keyword and vector results?
Reciprocal rank fusion is the usual starting point because it needs no score calibration between the two methods. Weighted score blending works too but requires normalising scores that are not naturally comparable.