Reciprocal Rank Fusion (RRF) is a simple but highly effective technique for combining ranked result lists from multiple retrieval systems into a single, unified ranking. It is widely used in hybrid search and RAG pipelines where you want to merge results from different retrieval methods (e.g., vector search + keyword search).
The RRF Formula
$$\text{RRF}(d) = \sum_{r \in R} \frac{1}{k + \text{rank}_r(d)}$$
Where:
- d is a document
- R is the set of rankers being fused
- rank_r(d) is the rank of document d in ranker r's list
- k is a constant (typically 60) that prevents high-ranked items from dominating excessively
Key Properties
- Score-Agnostic: RRF only uses rank positions, not raw scores. This makes it robust to different score scales and distributions across retrievers.
- No Training Required: Unlike learned fusion methods, RRF needs no training data or parameter tuning — just set k and go.
- Handles Missing Documents: If a document only appears in one ranker's list, it still gets a score from that ranker and zero contribution from others.
Why RRF Works So Well
- Complementary Strengths: Vector (dense) retrieval excels at semantic similarity while keyword (sparse) retrieval excels at exact term matching. RRF captures the best of both.
- Robustness: By aggregating across multiple signals, RRF smooths out individual retriever failures.
- Simplicity: Despite its simplicity, RRF often matches or outperforms more complex learned fusion methods.
Practical Usage
RRF is the default fusion strategy in Elasticsearch (hybrid search), Weaviate, and many production RAG systems. It's a go-to technique when combining any set of ranked retrieval results.
reciprocal rank fusion (rrf)reciprocal rank fusionrrfrag
Explore 500+ Semiconductor & AI Topics
From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.