混合检索里 BM25 和向量的分数怎么融合?为什么很多团队直接用 RRF?
谁在问:中大厂 AI 应用组一二面;凡简历写了「混合检索」几乎必被追问
口语化问法
- 你简历上写了混合检索——BM25 的分和向量的分,你是怎么合到一起排序的?
- 两路召回的结果怎么合并?权重是拍脑袋定的吗?
- 为什么大家都用 RRF?它好在哪?
考察意图
这题是「读过文档」和「真做过」的分水岭。面试官在验证三件事:① 你是否理解两路分数量纲不可比这个真正的技术难点(而不是只知道「两路都做然后合并」);② 你是否清楚 RRF 的原理和取舍,而非把它当黑盒;③ 你有没有评测驱动的工程习惯——参数是测出来的还是抄来的。
参考答案
60 分答案(及格线)
BM25 分数和向量余弦相似度不在一个量纲上——余弦有界(0~1),BM25 无上界——所以不能直接加权相加。主流做法两种:一是先归一化(min-max/z-score)再按权重线性组合;二是 RRF,不看分数只看名次,每路给文档一个 1/(k+rank) 的分再求和,k 通常取 60。很多团队用 RRF 是因为它不需要调参、对分数分布不敏感,拿来就能用。
90 分答案(有生产经验的回答)
在 60 分基础上,能讲出取舍与演进:
- 为什么加权难做:α 依赖评测集才能调;分数分布会随语料增长、换 embedding 模型而漂移,调好的权重会失效;min-max 归一化还怕离群值,一个异常高分能把整路分数压扁。
- RRF 的代价:只看名次丢掉了分数强度——BM25 第 1 名比第 2 名高 10 倍置信和只高 0.1 分,在 RRF 里没区别,导致「单路强信号被稀释」,典型受害者是型号/编号类查询。
- 工程演进路线:RRF 做默认起点(免调参解决 80% 问题)→ 建好评测集、分数分布稳定后可回到加权精调 → 进一步做 query 分类路由,型号类 query 加重 BM25 甚至单走 BM25。
- 落到评测:按 query 类型分桶(型号类/口语类/长问题)测 recall@k、MRR,不看总平均;引擎侧知道 Milvus 的 RRFRanker/WeightedRanker、Weaviate 的 α 参数等现成能力;能提一句 learned sparse(BGE-M3/SPLADE)作为 BM25 的新替代及其「没见过内部代号就失效」的边界,是明显加分项。
追问链
标准 5 层追问:从「知道有这回事」一路挖到「你到底做没做过」
为什么不能把 BM25 分数和余弦相似度直接加权相加?
期望量纲不可比 —— 余弦有界(0~1),BM25 无上界且随语料/查询长度漂移;直接相加等于身高加体重信号答不出「无上界」这个具体原因、只说「不太好」→ 没真正碰过分数RRF 公式里的 k=60 是干什么的?调大调小会怎样?
期望缓冲值,防头部碾压(无 k 时第 1 名是第 2 名两倍,加 60 后 1/61≈1/62);k 小更精英,k 大更平均信号能手算 1/61 + 1/63 的小例子 → 基本是真理解RRF 有什么缺点?什么情况下加权融合反而更好?
期望丢失分数强度 → 单路强信号被稀释;有稳定评测集与分数分布时,归一化加权可精调超过 RRF信号只会夸 RRF、说不出任何缺点 → 背答案你的权重(或 k、topK)是怎么定的?怎么验证调整有效?
期望评测集驱动:真实 query 日志分桶 → recall@k / MRR / NDCG → 对比实验 → badcase 回归集防倒退信号说「用的默认值」不扣分;说不出「怎么验证默认值够不够」→ 没有评测习惯上线后「型号类查询」混合后反而比纯 BM25 更差,你怎么排查、怎么解?
期望先分桶归因确认整体劣化 → 向量路引噪声 + RRF 稀释强信号 → 按成本排序:路由单走 BM25 / 加重权重 / 查分词是否切碎型号 / 自定义词典 → 进回归集信号第一反应是「换个 embedding 模型」而不是「先归因」→ 工程判断力存疑
这题是「读过文档」与「真做过」的分水岭:前三层考知识,第 4 层考评测习惯,第 5 层考归因顺序 —— 三段都能接住才算答透。
评分要点
- 指出两路分数量纲不可比,并说出 BM25 无上界这一具体原因
- 说出两条融合路线:归一化加权、RRF
- 能解释 RRF 公式与 k 的作用(k≈60,缓冲头部碾压)
- 能说出 RRF 免调参、免疫分数分布的优点及其被广泛采用的原因
- 能说出 RRF 丢失分数强度的缺点及「强信号稀释」现象
- 体现评测驱动:分桶评测、recall@k/MRR、badcase 回归
- 加分:query 分类路由 / 引擎内置能力 / learned sparse 及其边界
常见错误
「把两个分数加权平均一下就行」——踩中量纲陷阱,直接暴露没实操。
能背 RRF 公式但答不出 k 的含义或任意一个缺点——背题特征。
「混合检索肯定比单路好」——绝对化;真实情况是分桶看,某些桶会变差。
全程没有出现任何评测指标或验证方法——只有方案没有闭环。
把 Rerank 和融合混为一谈——分不清「多路合并」与「精排」两个阶段。