直接答案

向量检索解决"意思相近"(怎么退货≈退款流程),关键词检索解决"精确命中"(型号 C-200、错误码 0x8007、法条编号)。把两者结果用 RRF(倒数排名融合)合并,在绝大多数业务数据集上能比单一检索提升 10-20% 召回,是 RAG 检索层的标配做法。

两种检索的互补性

Embedding 模型再好,对低频专有名词也常无能为力——训练时没见过的型号编码,向量距离无法区分"XC-100"和"XC-1000"。反过来,BM25 关键词检索对同义改写完全无感。真实用户提问两种情况混杂:口语化的语义问句 + 带精确名词的追问,这就是必须混合的根源。

RRF 融合怎么工作

做法很朴素:两路检索各取 Top-K(如各 50 条),对每个文档按公式 score = Σ 1/(k + rank) 累加得分(k 常取 60),按总分重排。它的妙处在于不用调两路分数的权重——向量相似度(0.83)和 BM25 分数(11.2)量纲不同,直接加权没有意义,RRF 只用排名,天然可比。主流向量库(Qdrant、Milvus、Weaviate、Elasticsearch)都已内置混合检索与 RRF。

什么场景收益最大

场景精确名词密度混合检索收益
电商商品/型号查询显著
法律条文检索显著
医疗药品与诊断名显著
通用知识问答中等
闲聊式语义搜索有限

小结

如果你的 RAG 只做了纯向量检索,加一路 BM25 + RRF 融合通常是性价比最高的单点优化,改动小、见效快。调参空间主要是两路的 K 值与是否在融合后再加 Rerank。

常见问题快答

没有关键词索引怎么办?

轻量方案:向量库元数据里存原文,检索后对 Top-K 做内存 BM25 重算;或直接用 Elasticsearch/OpenSearch 双引擎。

RRF 的 k 参数要调吗?

默认 60 基本够用,只有在两路检索质量差异极大时才值得调(如 30 或 100),先跑默认再优化。

混合检索后还要 Rerank 吗?

建议加。混合解决「找得到」,Rerank 解决「排得准」,两者是上下游关系不是替代关系。

G
geo小助手内容团队
geo小助手(沈阳逍宇科技有限公司)内容团队,专注生成式引擎优化(GEO)方法论的实践与沉淀。

最后更新于 2026-07-30。本文持续修订,重大更新会标注日期。