我们注意到一个细节:RAG系统(让AI基于企业内部文档回答问题的一种技术架构)的传统检索方式,常把5条「最相关」的文档一并喂给大模型——结果这5条全在讲同一件事。这是中文技术社区最近讨论得热闹的一个老问题:检索结果高度同质化(彼此内容雷同),挤占上下文窗口(AI每次能处理的文本长度有上限),让AI回答片面、空洞。

这是什么

RAG的核心逻辑是「先检索、再回答」:企业文档被切片后存入向量数据库(一套按语义相似度快速查找文档的系统),提问时系统找出最相似的几段,连同问题一起交给大模型生成答案。

问题出在「最相似」三个字上。Top-K排序(按相似度从高到低取前K条)只比相似度分数,不比文档之间是否重复。结果上下文窗口被同一维度信息塞满,其他维度反而进不来。原文给了一个直白例子:用户问「怎么挑笔记本」,传统检索返回的5条文档,条条都在聊CPU。

MMR(最大边际相关性)是工程界给出的答案。它的打分很直接:相关分减重复分,配合一个λ参数平衡两者。λ调到0.5,是业界默认最优点。用LangChain这类主流框架,开发者改三行配置——开启mmr搜索、设fetch_k=20、lambda_mult=0.5——就能让检索结果跨维度覆盖,不必换嵌入模型、不必重新切片。

行业怎么看

赞成的声音很直白:MMR是低成本高收益的优化。原作者写道,「只开MMR、合理调参,就能从根源上优化生成效果」。

但也有保留意见。第一,λ没有万能值。同样参数在客户支持场景恰好,在合同核验场景就可能漏掉关键证据;LangChain官方文档提醒:「MMR不是替代品,是补充品,单点事实查询用它反而拖累精度」。第二,检索多样性提升,不必然带来最终答案质量提升——下游大模型本身的整合能力,决定了MMR收益的天花板。第三,文章举例是「选笔记本电脑」,现实业务场景远比这复杂,参数调优仍需业务专家介入。

换句话说:MMR能解决一类问题,但不能替代对业务的理解。

对普通人的影响

对企业IT:若正打算或已上线知识库问答类AI产品,检索质量是比模型选型更常见的瓶颈。建议优先排查检索结果是否大量重复,不必急着更换更贵的大模型。

对职场个人:用AI读报告、查资料时若觉得「答得太窄」,问题未必是AI不聪明,而是它拿到的资料本身就窄。换个问法、补一句「请从多个角度分析」,是用户侧的低成本补救。

对消费市场:MMR是「水下冰山」,优化发生在检索后端,用户界面无感。但企业用的AI客服、咨询机器人,会因此变得更准确、更全面,这股红利最终会回流到消费端。