Hybrid Search & Rank Fusion
Hybrid search runs lexical (BM25) and vector search in one request and merges them into a single ranked list. Lexical search catches exact terms (IDs, rare names); dense search catches paraphrase. The BEIR benchmark (18 datasets) found BM25 a robust zero-shot baseline that dense retrievers often fail to beat out of domain, which is why the two are combined.
Reciprocal Rank Fusion
RRF (Cormack et al., SIGIR 2009) scores each document by summing 1 / (k + rank) over the result lists it appears in, with ranks starting at 1. Elasticsearch defaults k (rank_constant) to 60; higher values give lower-ranked items more influence. It needs no score normalisation or tuning and works across unrelated relevance signals, which is why it is the common default. Elasticsearch recommends RRF for hybrid search and requires at least two child retrievers.
Alternatives
Weighted linear combination of normalised scores can beat RRF when you have labelled data to tune the weights; it needs score normalisation because BM25 and cosine scales differ. Learned-sparse models (SPLADE) are another lexical option (not verified this session).
Practice
Fuse a wide candidate set (for example top 50-100 per retriever), then rerank (rerankers-and-cross-encoders). Measure with ir-ranking-metrics before and after. Contextual retrieval reported BM25 added to contextual embeddings cutting top-20 failures from 3.7% to 2.9% (retrieval-augmented-generation-overview).
Related
ann-index-algorithms · query-understanding · _rag-relevance-moc
Sources
- Elasticsearch RRF reference: https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reciprocal-rank-fusion (accessed 2026-09-30)
- Elasticsearch hybrid search: https://www.elastic.co/docs/solutions/search/hybrid-search (accessed 2026-09-30)
- BEIR: https://arxiv.org/abs/2104.08663 (accessed 2026-09-30)
- Cormack et al. RRF paper: http://cormack.uwaterloo.ca/cormacksigir09-rrf.pdf (accessed 2026-09-30; PDF text not machine-readable, attribution via Elastic docs)
- Anthropic contextual retrieval: https://www.anthropic.com/news/contextual-retrieval (accessed 2026-09-30)