向量检索擅长语义相似,但对精确关键词(型号、代码、专有名词、缩写)可能失灵——'iPhone 15 Pro'和'iPhone 14 Pro'向量极近;BM25 关键词检索正好相反,精确匹配强但没有语义泛化。混合检索两路并行召回,用倒数排名融合(RRF)合并结果,鲁棒性显著优于单一路线,是生产级 RAG 的标配。
Rerank 解决另一个问题:嵌入检索为效率用双塔架构(查询和文档分别编码,只在最后算相似度),交互浅、排序粗糙。重排序模型(如 BGE-Reranker、Cohere Rerank)是交叉编码器,把查询与候选文档拼接输入深度交互,精度高但慢,因此只对小集合用——先粗召回 top-50/100,再精排取 top-5。
易错点:认为有了向量检索就不需要关键词检索;rerank 的输入截断会丢信息,长文档应先定位段落。追问方向:查询改写(query rewrite)、HyDE(先让 LLM 生成假设答案再检索)各自解决什么问题?多路召回的去重与融合策略?