本节要解决的事:多 Agent 能同时干活,但同时聊天也要付成本。先画依赖,再决定是否值得增加工作者。
三家比价,理想并行能省多少
三家供应商查询分别需要 3、5、4 秒,得到结果后统一比较要 2 秒。单个工作者串行查询,总时长 3+5+4+2=14 秒。如果三家查询彼此独立、资源充足且没有额外交接,三名工作者同时开始,查询阶段等待最慢的 5 秒,再汇总 2 秒,共 7 秒。
这里收益来自工作可以重叠,不来自“Agent”这个称呼。一个宿主直接并行调用三个查询工具,也可能获得同样的重叠。只有子任务需要各自进行多步调查、保留不同上下文或使用专门能力时,独立 Agent 才可能提供额外价值。
朴素加人会漏掉哪些时间
协调者要描述任务,工作者要读取材料,返回结果需要标准化,冲突需要解决。若每个工作者都从头读完整采购历史、重复搜索三家供应商,就把三倍成本换成三个相似答案。并行不能消除重复工作,角色名字也不能让结果自动兼容。
更糟的是共享同一个浏览器会话:工作者 A 正在看红笔,B 把页面导航到蓝笔,A 接着读取页面却以为仍是自己的商品。这个错误不只是慢,而是观察对象被改了。要么隔离标签页与会话,要么明确串行访问共享状态,并让工作者交回可核对的来源。
理想并行与共享会话限制
先做预测,再逐步展开。这里是固定规则的教学回放,不是真实模型测评。
教学构造场景 · 按下方规则逐步回放;不调用真实模型,不代表实际成功率。
A 3 秒,B 5 秒,C 4 秒;汇总 2 秒;忽略交接。
- 1. 同时开始
三个查询起点相同,各自使用独立状态。
- 2. 等待收齐
最慢 B 在第 5 秒返回。
- 3. 统一汇总
第 5 至第 7 秒比较含运价和库存。
三个查询起点相同,各自使用独立状态。
先预测,再核对结果与原因
7 秒关键路径是最慢查询加汇总,不是三段相加。
比较条件要公平
如果并行版本每人只查一家,单 Agent 基线也应允许使用合适的工具并发,而不是故意让它执行低效串行。否则得出的只是调度差异,无法说明多 Agent 架构本身更好。应同时记录完成时间、总模型与工具调用量、结果正确性和失败恢复成本。
再看任务依赖。若 B 的查询必须使用 A 返回的供应商编号,不能同时开跑;若三个工作者各自提出方案,但最终只有一个可执行动作,汇总者还要统一核验所有约束。三份互相赞同的回答也不等于独立证据,尤其当它们读取了同一条错误来源。
多 Agent 有益的一个场景是知识和工具明显不同:一个读取合同、一个核算报价、一个检查交付日期,各自交付结构化证据,协调者检查交叉约束。它仍需要清楚的交付格式,例如金额含什么费用、时间使用哪个时区、结论依据哪个版本。缺少这些接口,再聪明的工作者也可能拼出不一致的整体。
失败时谁负责停止
最慢工作者不返回时,整个系统不能永远等齐。协调者应知道哪些结果必需、哪些可缺省,以及超时后是重试、换来源还是报告未完成。取消也要传递到正在执行的工作者,避免主任务结束后子任务仍继续产生副作用。权限宜按工作范围授予,汇总角色不应把每个工作者的建议都当作执行批准。
本节时间模型没有计算排队、限流和多机通信,这些都可能吃掉理想节省。测得 7 秒比 14 秒快,只能支持在相应假设与任务上的结论;增加到三十个工作者不保证进一步加速,系统瓶颈可能转移到服务额度或汇总阶段。
理解检查
问题一:理想并行为什么不是 3+5+4=12 秒? 因为三段时间重叠,查询结束时刻由最大值 5 决定;再加不能提前完成的汇总 2,得到 7。
问题二:多 Agent 与并行工具调用有什么区别? 工具调用并行可以只是固定操作;Agent 子任务还可能自己选择动作和处理反馈。若需求只有三个独立查询,后者的额外协调未必值得。
问题三:三个工作者给出同一结论,是否可信度自动提高三倍? 不会。它们可能共享错误来源、提示和偏差。需要独立证据与环境验证,不能把票数当成正确概率。
下一问
多个子任务已经产出结果,用户这时把预算改了。下一节沿依赖追踪:哪些事实仍然成立,哪些决定必须撤销,哪些动作已经不能靠改文字取消?