Skills
Make retrieval the fix, not generation: two-stage retrieve-then-rerank with a cross-encoder + BM25 hybrid
Industry analysis in 2026 finds RAG fails at retrieval ~73% of the time, not generation. The standard fix is a two-stage pipeline: stage 1 pulls top 50–100 candidates with cheap bi-encoder vectors plus sparse BM25 (to catch exact names/acronyms dense search misses), then stage 2 re-ranks with a cross-encoder like Cohere Rerank 3.5, Voyage rerank-2.5, or BGE reranker-v2 that scores each (query, chunk) pair jointly. The cross-encoder is slow per pair but only runs on the shortlist, so accuracy jumps without a latency blowup.
Source
↳ Follow the thread