返回

Agentic 搜索架构模式:能进生产的五种

通智云团队 ·
Query理解 向量搜索 通智搜索
Agentic 搜索架构模式:能进生产的五种

摘要:推理循环是最便宜的那部分。真正决定一套代理式检索能不能落地的,是它外面的控制环:类型化工具、上下文隔离、硬预算,以及一个能把任务打回去的评估器。

关键要点

一、"代理式"到底加了什么

传统检索是一次过:编码问法、取 top-k、重排、作答。代理式检索在中间加了一层决策——由系统决定搜什么、搜几次、拿到的证据够不够答。

这层决策换来的是泛化。在域外任务上,固定的检索流水线会明显退化,而同一个代理循环在两个不同榜单上都还能打。它也换来了一个可测的质量增量:在嵌入模型不变的前提下,nDCG@10 提高 8.7 个点——说明增益来自问法构造与迭代,而不是换了个更好的编码器。

代价在同一份测量里同样清楚:每条查询 107.4 秒对 0.67 秒,输入 764.1K token、输出 5.8K。两个数量级的延迟差、五位数的 token 账单,这不是四舍五入的误差,它直接改变了系统能用在哪,也是为什么架构比选模型更重要。

二、五种模式,各自什么时候是错的

模式 形态 适用 失效场景
计划执行 一次规划产出类型化子查询,再并行执行 多条件问题、看板、合规核查 子查询彼此依赖
ReAct 循环 想—做—看,反复到证据足够 探索式调研、陌生语料 延迟预算在五秒以内
分层 worker 主机拆解、管理聚合、worker 并行且上下文隔离 大语料、长会话 编排开销超过检索耗时
检索即工具 把搜索、过滤、SQL 作为类型化函数给模型调 结构化与非结构化混合 工具 schema 与索引漂移
评估器把关 一个检查器给证据打分,不通过就重规划 高风险答案、受监管领域 评估器与规划器共享盲区

第一种是主力。当一个问题能拆成互不依赖的几段,规划一次、并行执行,延迟就停在标准检索的一个小倍数上,而不是随推理步数线性增长。

ReAct 更适合"确实不知道该搜什么"的时候,它也是最容易打爆延迟预算的模式,因为每一次观察都是一次模型调用。

分层设计存在的理由很朴素:上下文饱和。所有子查询的结果都落进同一个窗口,后面的推理就会退化。把 worker 上下文隔开、在管理层聚合,能保住最终综合的干净,并行也吸收掉一部分额外成本。

检索即工具是多数团队实际在跑的东西,因为它让同一个代理既回答"制度怎么规定",也回答"上个月有多少工单超时",不用两条流水线。它的失效点是 schema 漂移:工具描述说一套、索引是另一套,代理会安静地搜错字段。

评估器把关多花一个模型来判断证据是否支持答案。受监管场景有用,但前提是评估器的失败分布与规划器不同——否则两边会漏掉同一件事。

三、我们会怎么搭这个控制环

  1. 状态放在模型外面。 计划、已执行的子查询、证据集,都放在编排器自己的存储里。模型会改写自己的草稿区,编排器不能依赖它。
  2. 类型化工具加校验 schema。 每次工具调用在执行前先过 schema,而 schema 由索引定义生成,从根上避免漂移。
  3. 两个硬预算。 token 上限与墙钟上限,由编排器执行,不靠提示词。任一触顶就返回支撑最好的局部答案,并标注置信度。
  4. 证据台账。 每个召回段落带 ID、来源、时间戳、分数。最终答案引用 ID,不引用散文。这是答案可审计的前提。
  5. 评估器带重规划路径。 证据不过关就带着失败原因回到规划,只回一次;第二次失败就给出拒答并说明缺什么。
  6. 按步可观测。 记录每一步的延迟、token 消耗、召回条数。聚合 trace 会把吃掉 80% 预算的那一步藏起来。

第三点是多数团队投入不足、但其实很便宜的一环。提示词里写"请高效"不是预算,一个能终止循环的计数器才是。

还有一个模式值得单独命名,因为它才是压住成本的东西:在子查询层做缓存,而不是在答案层。两个问题只要共享主体名与时间区间,就可以复用同一次检索结果,前提是缓存键由归一化子查询加索引版本构成。答案层缓存注定低效,因为每个问法的最终答案都不同;子查询层缓存命中率够高,而且索引一变就能干净失效。

反方观点是:缓存会让循环变懒。确实会——规划器会复用先前结果而不是重新构造,而这正是你想要的,因为重新构造一条本来就能用的子查询,纯烧 token。

四、我们在一个真实合同检索项目里改了什么

一个有代表性的案例:企业合同库,1,400,000 份文档,平均问法是一条带两个到三个条件的法务问题。第一版代理用的是 ReAct 循环,p95 打到 9 秒,token 花费让财务来问话。

我们换成计划执行。一次规划调用产出三到五个类型化子查询(主体、条款类型、时间区间、管辖地),对同一个混合索引并行执行,然后一次综合。p95 降到 3.4 秒,nDCG@10 同时上升,因为子查询把条件拆开了,而不是指望一个向量同时装下所有条件。

两件没预料到的事。第一,规划器需要一条"最多五个子查询"的硬上限——超过之后召回不再提升,延迟线性增长。第二,最大的收益来自证据台账而不是循环本身:答案一旦引用段落 ID,法务复核的纠错率就下降,因为他们能直接核对原条款,不用重读一遍答案。

工具 schema 这件事值得单独说,因为它是藏得最久的故障。工具用散文描述("按相对方检索合同")时,模型会传一段自由文本相对方,索引再拿它去匹配错字段——比如把主体名匹配到文档标题上。把工具定义成"索引字段枚举加每字段校验类型",让模型在里面挑。散文式工具会产出针对错字段的、看起来很合理的查询,这比调用失败更糟,因为证据看起来是相关的——而错的相关证据,最终会变成一份自信的错误答案。

五、边界,以及那些看着高级的错觉

最后一个结构性的点,关于评估:循环要按任务成功率与证据覆盖率打分,不能只看排序指标。一个系统召回了排得很漂亮的段落,但这些段落合起来答不了问题,它的 nDCG 提高了,任务却失败了。两个都记;当排序质量上升而任务成功率不动时,说明规划器产出的子查询是索引能排、但满足不了的。

常见问题

问: 到底要不要上代理?
A: 如果一次检索就能答,就别上。先量"需要第二条子查询"的问法占比;低于 15% 时,换个更好的重排器更便宜。

问: 先上哪个模式?
A: 计划执行加类型化工具。它在各类问法上都能扩展,延迟也可预测。

问: 成本怎么封顶?
A: 编排器里设硬 token 与时间预算,再加租户级月度上限和一条优雅降级路径。

问: 上下文隔离值不值这个复杂度?
A: 单次会话召回超过 20 个段落就值;低于这个量,单窗口加一个好摘要器就够了。

问: 循环怎么评估?
A: 固定问法集加分级相关性;排序质量看 nDCG@10,循环本身看任务成功率与每步延迟。

问: 安全怎么管?
A: 在工具层做授权,不在提示词层。代理应该根本调不到用户角色无权使用的工具。

关于通智云

通智搜索把代理式检索做成受控能力:类型化工具、硬预算、证据台账、按步可观测,让循环的质量收益能穿过生产环境的延迟指标。

相关阅读

数据来源

  1. 超越语义相似度:代理式检索的性能与成本——同一嵌入模型下 nDCG@10 提高 8.7 个点;每条查询 107.4 秒对 0.67 秒;输入 764.1K、输出 5.8K token。
  2. 企业生产环境的 Agentic RAG——计划执行延迟约为标准检索两倍,ReAct 在可并行问法上为四倍。
  3. InfoSeeker:分层并行代理框架——主机—管理—worker 拆解与严格上下文隔离。
  4. 生产级代理式搜索架构——控制环、评估器、运行时预算与可观测性。

立即行动

← 上一篇: 语音搜索优化:对话式查询的品牌可见性怎么做(2026) 下一篇: A/B 测试流量分割:小流量网站的统计正确性 →
咨询
二维码

企业微信