Sunday面试指南

RAG 中的 MMR 是什么?如何避免检索结果全是相似内容?

下面是一段教学用的模拟面试。

🧑‍💻 面试官:检索出了五段资料,分数都很高,为什么回答仍然漏掉重要信息?

🙋‍♂️ 我:可能五段都在重复同一部分,没有覆盖问题需要的其他内容。

🧑‍💻 面试官:用 MMR 去重就可以了?

🙋‍♂️ 我:MMR 不只是删掉完全相同文本,它会兼顾相关性和与已选结果的差异。

🧑‍💻 面试官:那选一段完全不同但无关的内容,是不是最有多样性?候选里根本没有缺失证据,又怎么办?

MMR 要做的是让下一段相关证据带来新信息,而不是为了不同,塞入一段无关内容。

面试速答(60 秒版)

MMR,也就是最大边际相关性,是一种在候选结果中兼顾相关性和多样性的选择方法。

它通常先选择与问题最相关的结果,再逐轮评估剩下的候选:一方面看它和问题有多相关,另一方面看它与已经选中的内容有多相似。相关而且没有那么重复的候选,更有机会被选入。

这样可以减少 RAG 上下文被相似切片占满的情况,但它不能补回候选里根本没有的证据,也不保证内容一定正确。

使用时要先取得足够的候选,再调整相关性与多样性的权重,并检查证据覆盖、冗余、回答质量和耗时。问题只需要一个精确事实时,不必为了多样性强行找很多方面。

MMR在相关候选中减少重复资料,补充不同的必要证据

知识点详解:下一段资料,应该怎样选?

先看“分数都高”,为什么还不够

假设用户问“某款软件升级后,怎么迁移配置,有哪些限制”。

检索拿到五段内容,其中四段都在说明配置文件位置,另一段介绍了安装步骤。它们可能包含很多与问题匹配的词,但没有提供兼容限制。

把四段几乎相同的内容都交给模型,不一定比两段更有帮助,还会消耗上下文空间。切片重叠、文档副本和同一主题的反复说明,都容易产生这种情况。

这里要解决的是证据组合,而不只是单段排序。

MMR 每一轮看哪两种相似度?

一种是候选与查询的相关性,另一种是候选与已选结果的相似度。

常见评分形式是:

MMR = λ × 查询相关性
      − (1−λ) × 与已选结果的最大相似度

惩罚项取“与已选结果最相似的那个”。只要候选高度重复了其中一段,就会受到相应惩罚,不要求它与所有已选内容都相似。

λ 接近 1 时更重视相关性,降低以后会更重视差异。不要把某个默认值当成每套 RAG 的最佳设置。机制可参考 Elastic 的 MMR 说明。

用一轮计算看清楚

假设已经选中了“配置文件位置”。现在有两个候选:

候选查询相关性与已选内容的最大相似度
B:另一段配置文件位置说明0.900.95
C:升级后的兼容限制0.800.30

这些数字是教学用的假设值,且假设两种分数尺度已经能够用于这个计算。

当 λ 为 0.5,B 的评分是 −0.025,C 的评分是 0.25。因此这一轮会选择 C。它原本的查询相关性稍低,却能补充新的相关信息。

下一轮不是沿用这张静态排名表。已选集合增加了 C,剩余候选与这个集合的最大相似度需要重新考虑。

和去重、Rerank 有什么区别?

精确去重可以直接移除完全相同的内容,近似去重则按规则处理高度相似副本。MMR 会在选结果的过程中持续考虑已选集合,因此选择顺序会影响后续评分。

Rerank 常用于重新判断候选与查询的相关性,它未必自动处理候选之间的冗余。可以先提高相关性判断质量,再做适当多样性选择。

这几种方法可以组合,但每一步都需要明确目的。不能看见分数重新排列,就把它们统称为 MMR。

哪些情况下不值得多选?

用户问一个报错码的准确含义,可靠资料只有一段。此时重点是精确匹配与证据可信,强行增加差异可能引入其他报错码。

还有些问题必须同时拿到相邻片段,例如规则和例外分开写。两段文字相似,并不说明后者没有价值。多样性惩罚过强,可能把真正需要的限定条件排走。

因此要用人工标注的问题检查必要证据是否完整,不能只统计重复率下降。

怎样评测与控制成本?

先比较原始 Top-K 和 MMR 后的结果,看各自覆盖了哪些必要证据,再检查最终回答有没有漏条件、引错资料。

候选池越大、最终选取越多,候选之间的相似度计算也会增加。可以限制候选规模、复用已经计算的相似度,但不能把池子缩到只有最终 K 条,还期待算法发现没有进入池子的资料。

权限与租户过滤也必须在合适的位置完成。多样性不是跨权限收集资料的理由。

MMR用相关性减去对已选集合的最大重复程度

面试官继续追问

λ 为 0,会得到最好的多样性吗?

它会忽略公式里的查询相关性部分,这通常不是问答系统想要的结果。不同不是目的,补充相关证据才是。

一篇文档最多取一段,可以代替 MMR 吗?

这是一个来源配额规则,可能有效,但同一文档里也可能有不同必要证据。它与内容相似度选择不是同一种机制。

候选池里没有“兼容限制”,MMR 能补出来吗?

不能。要回到召回、查询表达、索引与资料覆盖去处理,不能让排序方法承担发现未知证据的工作。

面试速记卡

  • 查询相关性与结果间冗余,是两种不同关系。
  • 先选相关结果,再随已选集合逐轮比较。
  • 常见惩罚项是与已选内容的最大相似度。
  • λ 控制取舍,不存在脱离任务的万能值。
  • MMR 只在候选里选择,不能凭空补召回。
  • 检查必要证据与回答质量,不只追求重复率下降。

公司面试真题

这道题暂未收录可核验的公司真题来源。你可以先阅读本文解析,或浏览已收录的公司面试真题。

浏览公司面试真题 →
简历汪永久免费在线制作简历,模板直接套用、导出无水印,永久免费、下载免费,不需要付费解锁任何功能。去写简历