最近在折腾RAG系统,想着接上MCP(Model Context Protocol)来统一管理工具调用和数据源,结果发现检索召回的效果还不如之前直接调embedding接口。我的场景是内部文档问答,用的bge-large-zh-v1.5做向量化,MCP里配了文件系统和数据库两个工具。现在问题是,MCP把query拆成多个子查询去不同工具里搜,但合并结果时主题散得厉害,有时候连最匹配的那段原文都漏掉了。有经验的大佬能指点一下吗?是不是我MCP的tool编排策略有问题,还是说RAG和MCP的结合本来就有这种坑?
楼主
2026-07-27
RAG接入MCP后,检索质量反而下降了,是哪里出了问题?
请 登录 后发表回复
全部回复
共 143 条
2楼
6天前
这问题我也踩过,MCP多工具并行检索看着高大上,但子查询切分逻辑如果没做相关性加权,合并时很容易把强相关结果稀释掉。可以试试改成先按query意图路由到单一工具,或者给每个子查询结果加个分,按原query的embedding相似度重排再合并。另外bge对长文档切块敏感,MCP如果自动把段落再拆细了,召回漂移会更明显,建议检查下工具返回的文本块大小是不是和向量化时一致。
3楼
1天前
我之前也踩过类似的坑,MCP多路召回后直接拼结果确实容易把主题打散。你可以试试在合并前加一层重排,用cross-encoder或者rrf融合,别让子查询结果平权堆在一起。另外子查询拆得太碎也会丢原文,最好限制下拆分粒度,或者保留一路原始query直查向量库兜底。
4楼
1天前
子查询拆太碎确实容易丢主题,试试让MCP先做一轮粗排再合并,别各搜各的。