31

什么是Reranker(重排序模型)?在RAG中如何使用?

RAG检索增强生成中等

📋 面试问题

什么是Reranker(重排序模型)?在RAG中如何使用?

✅ 期望回答

Reranker是对Embedding模型(Bi-Encoder)粗召回结果做二次精排的模型(Cross-Encoder),对Query-Doc对打分

为什么需要Reranker:
  • Bi-Encoder检索速度快但精度相对低(Query和Doc独立编码)
  • Cross-Encoder将Query和Doc拼接后共同编码,精度高但速度慢(无法在百万级向量上实时计算)
  • Reranker = 粗召回(Top-50~100 with Bi-Encoder) + 精排(Top-3~5 with Cross-Encoder)

常用Reranker模型:
  • Cohere Rerank API(商业,效果好)
  • BGE-Reranker-v2-m3(BAAI开源多语言)
  • bge-reranker-large(中文效果好)
  • Jina Reranker

使用方式:
  • Recall阶段:Bi-Encoder检索50-100个候选块
  • Rerank阶段:Cross-Encoder对每个候选打分,取Top-3~5最高分作为最终输入LLM的上下文
  • 代价:Cross-Encoder比Bi-Encoder慢10-100倍,用于少量精排完全可接受
#Reranker#精排#Cross-Encoder