AI 翻资料找答案时,常会同时派好几路去搜,这套做法叫多路召回:用不同的方式、从不同的角落里找资料,一次找回一大堆候选,回头再精挑细选。它的存在是因为单一路径太脆弱,换一种问法就可能漏掉关键信息。
为什么要分头去找
单路检索的盲区很实在。用户说“那个经常卡顿的工具”,关键词匹配可能找不到任何东西;换成语义相近的“运行缓慢的程序”,结果就出来了。多路召回就是同时用关键词、语义、结构化字段等多种方式各搜一遍,谁找到算谁的,汇总起来去重,候选池就厚实多了。候选汇总后也不是全塞给模型,先过检索窗口这道筛。
多路并行还带来冗余的好处。不同路径命中的资料重叠度不高,一路漏了,另一路可能补上。对问答类产品来说,召回阶段漏掉关键资料,后面再聪明也无力回天,所以宁可多找,不可漏找。
| 阶段 | 干什么 | 过头会怎样 |
|---|---|---|
| 多路召回 | 关键词、语义、结构化各搜一遍 | 路径越多,延迟和算力开销越高 |
| 汇总去重 | 合并多条路径命中的同一份资料 | 候选池太厚,后续环节压力大 |
| 检索窗口 | 控制进入提示词的篇幅与位置 | 塞满会挤占对话本身的空间 |
| 重排 | 从候选里挑出精品 | 候选越厚,这一环的担子越重 |
像派几个采购分头比价
理解多路召回,可以类比公司派几个采购分头比价。一个跑批发市场,一个查电商平台,一个问同行,各自渠道不同、话术不同,回来的报价单汇总在一起,才对得出真实行情。AI 的多路召回也是这个打法:不同路径各找各的,候选资料越全,决策的底气越足。
比价类比还解释了去重的必要。几个采购很可能报来同一家供应商的不同报价,汇总时要合并同类项。召回也一样,多条路径常常命中同一份资料,去重之后剩下的才是有效候选,重排环节再从这些候选里挑精品。
比价类比的三处偏差
这个类比有三处对不上。其一,采购带回的是最终报价,召回带回的只是候选资料,能不能用要过后面几关。其二,采购的数量受预算约束,召回的数量受系统容量约束,候选池太大反而拖慢后续环节,通常有配额控制。其三,采购之间会商量口径,召回的各条路径彼此独立,谁也不知道别人找到了什么。
还有一处成本问题:多路意味着多次检索,延迟和算力开销都上去了。产品通常靠缓存、并行执行来对冲,这也是为什么资料库大的产品,召回策略里常带一层外部记忆的热点设计。
找得全和找得准的矛盾
多路召回天然偏向“全”,但全的代价是噪声。候选池越厚,精挑细选的压力越大,重排环节的担子越重。实践中的平衡点是:召回阶段放宽,重排阶段收紧,两头分工,而不是在召回阶段就追求精准。
豆包和智谱清言在知识问答场景的表现差异,不少来自召回和重排两段的功力。带走一个判断:多路召回管“别漏”,重排管“别滥”,问答效果是两段配合的结果,任何一段偷懒都会露馅。对普通用户来说,有个直观的验证办法:同一个问题换三种问法,看答案稳定不稳定。三种问法下结论一致,说明候选池足够厚、筛选足够稳;一问一个样,多半是召回或重排在某一种问法下掉了链子,这时候换问法比换产品更现实,当然,三种问法都稳定出错,那就是产品该换了,先分清是哪一类,再决定改姿势还是改工具。
速查表:多路召回=多路径并行找资料后汇总去重;类比分头比价;偏差在只是候选、有配额、路径独立;与重排分工:先求全再求准。
换个问法再问多路召回三句
- 路径越多效果越好吗?不是,超出一定数量后新增边际很小,还拖慢整体响应。
- 为什么有时换种问法答案大变?召回路径对问法敏感,换问法等于换了搜索组合,候选池跟着变。
- 召回和重排能合一吗?工程上有融合做法,但思路仍是先放宽再收紧,两步省不掉。


