阶段 7 · 用起来

多智能体:大多数时候
你要的是一个工作流,不是一支团队

「多智能体协作」听起来很美:一个规划、一个执行、一个审查,像一家公司。 但经验是:加 agent 常是在加复杂度,而不是加能力。 上一章《上下文工程与记忆》管的是单个 agent 的窗口, 这一章接着问:一个不够怎么办?

1

先破除一个迷思

很多被叫做"多智能体系统"的东西,其实根本不需要多个智能体—— 它们需要的是一个工作流。

维度工作流 Workflow多智能体 Multi-Agent
路径写在代码里,固定或条件分支 由模型临时决定,每次可能不同
可预测性高。相同输入走相同路径 低。调试时你复现不了那个 bug
成本确定,可以提前算 波动很大,最坏情况不可控
什么时候用任务能拆成明确的步骤时 任务无法预知需要几步、需要什么工具时

一张图 · 区别只有一个:下一步是谁定的

? 输入 步骤① 步骤② 输出 规划 执行 审查 工作流 · 路径写在代码里 多智能体 · 路径由模型临时决定 同一个输入 → 永远走同一条路(可复现、成本可算) 同一个输入 → 可能走不同的路(你复现不了)

如果你能画出这个任务的流程图,那就写工作流,不要用多智能体。 只有当你画不出流程图——因为要做什么取决于中间结果、而且你事先不知道会得到什么—— 才需要让模型自己决定下一步。「能写死的东西就不要让模型决定」是省钱、省时、少 bug 的第一原则。

2

五种工作流模式

这是 Anthropic 总结的一套分类,非常实用——它把"多智能体"拆成了五个具体的结构, 而不是笼统的"多个 agent 协作"。

模式结构适合什么
① 提示链
Prompt Chaining
ABC A → B → C,串行分解 任务能干净地切成固定几步,每步的输入是上一步的输出
② 路由
Routing
输入分类 技术退款 先分类 → 分派给不同的处理器 输入类型差异大(退款问题 vs 技术问题), 用不同的提示/模型处理更划算
③ 并行
Parallelization
输入查 1查 2 查 3合并 同时跑多个分支 → 聚合结果 子任务互不依赖(同时检查合同的 5 个方面), 或者需要多次投票提高可靠度(前提:错误互不相关,见第 5 节)
④ 编排者-工作者
Orchestrator-Workers
规划工人 1工人 2 工人 3汇总 一个规划者动态拆任务 → 派给若干工作者 → 汇总 拆成几步事先无法预知,要看清内容才知道(比如改一个跨文件的 bug)
⑤ 评估者-优化者
Evaluator-Optimizer
生成挑刺 一个生成 → 一个挑刺 → 拿反馈重做,循环几轮 有明确的评价标准,而且模型自己批自己确实能改好
🎯 类比

它们对应一家公司里的五种工作方式:
提示链 = 流水线,一道工序接一道。
路由 = 前台分诊,先判断你该去哪个科室。
并行 = 多人同时审一份文件的不同章节,最后合并意见。
编排者-工作者 = 项目经理现场拆活、临时派人。
评估者-优化者 = 实习生写稿 + 主编反复打回重写。
较贵的是编排者-工作者和评估者-优化者:前者要有"事先说不清几步"的问题,后者要有明确的评价标准,才值得上。
这个类比管到"一份活由谁来做"为止:真公司里一个人能同时进好几件事,这里的每个格子都是一次完整的模型调用,串得越多越贵。

M

数学 · 消息怎么涨,成功率怎么掉

上一节把"多智能体"拆成了五种结构。这一节把它们的账算出来: 消息数怎么涨,成功率怎么掉。下面三张图都能自己拖。

动画 · N 个 agent 两两通信:每多一个人,多出一整排连线

agent 个数 N
6 个
当前拓扑的消息条数
15 条
合计 token 成本
—

互动 · 一条消息有多贵:它要过一次完整的模型

核心大图 · 成功率是乘出来的:拖可靠度看它怎么塌

💡 这一章的核心大图

成功率的账只有一个乘号:每道门只放过去 p,剩下的水一路乘下去——环节一多,塌得比直觉快得多。 图上这条曲线,就是"加 agent 买不到能力"的全部证据。
消息数那张图是同一件事的另一面:钱按 N² 涨,成功率按 p 的 N 次方掉, 一个涨得比 N 快,一个掉得比 N 快,夹出来的是同一句话——复杂度换不来能力。

3

算一遍:哪种模式真的划算

任务设定:审阅一份 20 章合同(约 12000 token),找出风险条款并给出建议。 token 成本和延迟是按调用逐项累加的真实数字;成功率是按公式估的示意值,不是实跑。

两个数怎么来的:覆盖度 = 这条路线能照顾到多少种风险(固定三步约 0.85,并行四路约 0.95); 单步可靠度 = 每个环节不出错的大致概率(各模式取 0.90~0.96)。都是示意值。 输出 token 按输入的 3 倍计价——主流 API 的输出单价约为输入的 3~5 倍。

互动 · 六种模式的成本 / 延迟 / 成功率

成本对比

成功率对比

调用次数
—
Token 成本
—
端到端延迟
—
预计成功率
—

互动 · 六个模式摊在同一张「成本 × 成功率」平面上

成功率和成本不是一回事。评估者-优化者的成功率最高(78.2%),代价是成本涨到单次的 2.7 倍、延迟多等 18 秒; 单次调用便宜到约其他模式的一半,但覆盖率最低。先问自己缺的是钱、时间,还是可靠性。

4

多智能体真正的两个价值

上面说的是工作流。那"真的多智能体"——每个 agent 有独立的循环、 能自己决定下一步、互相通信——什么时候才值得?只有两种情况。

① 上下文隔离 每个 agent 有自己的窗口。

一个 agent 去读 50 个文件做调研,它的上下文里会塞满文件内容; 另一个 agent 负责写代码,它不需要看到那 50 个文件,只需要结论。
把它们分开,两边都不用背负对方的上下文压力。
这个价值是真实的——尤其是在长任务上。
② 并行探索 同一个问题让多个 agent 用不同思路各试一遍。

比如修 bug:一个 agent 猜是缓存问题、一个猜是并发问题、一个猜是配置问题。
三条路同时走,谁先找到算谁的。
单 agent 只能串行地试,而且容易卡在第一个错误假设上出不来。

互动 · 同一份材料,一个人背 vs 拆成两段

操作:拖大文件数,看单个 agent 的上下文什么时候塞不下、拆开后每个只读一半。

⚠️ 一个很常见的误解

"让三个 agent 讨论一下,答案会更准"——这个假设通常不成立。
因为它们底层是同一个模型。让同一个模型换个说法再说一遍, 它的错误会高度相关——三个 agent 一起错同一个地方,比一个 agent 单独错更危险, 因为投票结果看起来更"可信"。
真正的多样性需要来自不同的东西:不同的工具、不同的数据、不同的提示策略—— 而不是同一模型的三份拷贝。

5

组队要付的三笔账

代价怎么发生的什么时候真的会痛 → 换什么
① 通信开销爆炸 N 个 agent 如果两两通信,消息数是 O(N²)(读作"大约按人数的平方增长")。 而且每条消息都要经过一次模型推理才能产出或理解—— 5 个 agent 全连接有 10 条消息,通信成本可能是单 agent 的 10 倍 要几个 agent 两两互看时 → 改成星形(N−1 条)或串成流水线
② 错误传播 agent A 产生一个幻觉,agent B 把它当成事实继续推理, agent C 再基于 B 的结论下判断。到最后没有任何一个环节知道源头是错的。 而且因为经过了"多个专家",结论看起来更权威 一条长链、每步都以上一步的结论为前提 → 每步后加一次独立来源的校验
③ 调试地狱 非确定性(同一个输入跑两次,结果可能不一样)的系统上再叠一层非确定性, 可能走了完全不同的路径。"上次还能跑通"是最常见的一句话, 而你没法复现上次 线上偶发、你必须复现那一刻 → 把路径写死成工作流,别让它每次自己选

互动 · 错误传播:加 agent 到底让结果更好还是更糟

串联链成功率
—
每步加独立校验
—
三路投票(需 2 票一致)
—

互动 · 投票到底能不能救回来:拖「错误相关程度」看它怎么失效

6

这条线上的几种做法

互动 · 方案演化

方案是什么适合
单 agent + 好工具 一个循环,配一套精心设计的工具 绝大多数任务的正确答案。先把这个做到极限,再考虑别的
工作流编排 用代码把固定步骤串起来(第 2 节的五种模式) 能画出流程图的任务。可测、可控、成本可算
LangGraph 用图结构描述 agent 的状态流转,支持条件分支和循环 把它看作"带状态的复杂工作流",而不是"多 agent 框架"—— 大多数用它的人做的其实是工作流
AutoGen 多个 agent 用对话的方式协作,可以有人参与 研究性质的多轮协商场景
CrewAI 给每个 agent 设定角色(研究员/写手/审稿人),按角色分工 概念直观,适合快速搭原型。但要小心"角色扮演"带来的成本膨胀
MetaGPT / ChatDev 模拟一整套软件公司的角色,让它们合作完成项目 演示和探索。实际项目里的性价比通常远低于一个会写代码的单 agent
⚠️ 注意表格里的共同点

越往下的方案,演示效果越惊艳,生产性价比越低:它们把大量 token 花在了角色扮演和互相汇报上, 这些开销对最终结果没有直接贡献。
判断标准:一个 agent 用更多工具、更长的循环能做到同样的事,就用一个。

7

建议:从最简单的开始

决策顺序(别跳步)

① 先试单次调用 + 好提示 很多时候模型一次就能做对。这一步成本最低,务必先试。
② 不行就加工具,不要加 agent 给它计算器、给它检索、给它代码沙箱——工具的边际收益远高于 agent。
③ 还不行就上工作流 把你已经观察到的"固定套路"写成代码。 这一步会同时改善成本、延迟和可测性。
④ 只有画不出流程图时才用多 agent 而且优先选"上下文隔离"和"并行探索"这两个真实价值, 不要为了"像一家公司"而组队。
① 单次调用 ② 加工具 ③ 加工作流 ④ 多 agent 越往右:花的钱更多、等的时间更久、出错时越难查。 所以顺序是从左往右试 —— 每一格都要用「左边真的做不到」来换。
🎯 一句实在话

多智能体的问题不是"它不work",而是"它 work 的成本几乎总是高于更简单的方案"。
这就像问"我要不要为公司每个职能都雇一个副总裁"—— 在你有几百人之前,答案几乎都是"不"。

8

小结

它对应哪条线 这一章挂在七条主线里的 ①(表达力 vs 泛化)——但它讲的是反面: 加 agent 买的是「表达力」(能走更复杂的路径),买到的却常常打不过一个更简单的方案。 真正决定成败的不是结构,是每个环节的可靠性。七条主线见首页的知识地图。
一句话 这一章的做法,本质上是在把「多智能体」这句口号翻译成一堆可以算账的工程结构, 然后证明——能画成流程图的,就别让模型去决定。复杂度换不来能力。
它牺牲了什么 多 agent 牺牲可复现性和成本的可计算性(第 1 节那张表: 路径由模型临时决定,同一个输入跑两次可能走两条路,调试时你复现不了那个 bug); 工作流则是反过来,牺牲对未知步骤的适应力。 注意两边牺牲的都不是「能力」——能力在模型里,不在结构里
💡 检验一下:你现在能指着哪个互动说这句话

回到第 5 节那张「错误传播」。把「单个 agent 的可靠度」从 99.5% 往左拖到 80%—— 看「串联链成功率」那条指数曲线怎么塌下去:单看每个 agent 都挺靠谱,串起来的成功率还是掉得飞快。

那个瞬间你看到的就是「复杂度不等于能力」:加 agent 并不会让结论更可靠, 它只是把更多环节串在了一起。然后再把「独立校验的可靠度」往右拖一点, 看它怎么把成功率拉回来——救回来的是「不同来源的判断」,不是「更多的 agent」。 如果你刚才没想指着那条曲线说这句话,那一节对你就是没用的——回去再拖一遍。

再往下挖一层:为什么「加 agent」救不了可靠性?

直觉上实际发生的事
三个 agent 讨论一下,答案会更准 底层是同一个模型,它们的错会一起犯——投票结果看起来更可信,反而更危险(第 4 节)
拆成七步,每步简单一点,总该更稳 每步的可靠度是相乘的。单步 96% 听着很高,七步连乘只剩 75.1%;再乘上覆盖度,就掉到约 70% (第 5 节那张图量的就是这件事)——步骤越多,"最后一环把前面全带偏"的机会越多
结构越复杂 = 系统越强 结构只决定信息怎么流动,不决定每一环判断得多准。 所以正确的做法是加工具、加校验(换来源),而不是加 agent(加环节)

这些账落在哪几条暗线上

暗线这一章的回答
A 信息流动 真正变的是上下文窗口的切法:调研 agent 把几十个文件读进自己的窗口, 只把结论传给下游(第 4 节的「上下文隔离」);工作流则是同一份上下文在步骤间完整交接。 这是这一章唯一真实的结构差异
D 跑在什么上 带宽受限。推理是一次解码一个 token 的过程,每吐一个 token 都要把整份权重从显存里过一遍—— 所以 token 的价格,本质上就是显存带宽的价格。多 agent 真正贵的地方正是消息数量: N 个 agent 两两通信是 O(N²) 条消息,每条消息都要过一次完整的模型推理。
反过来,第 3 节里并行是唯一"延迟不增加"的模式(4 路同时跑,总延迟只等于最慢那路)—— 因为它花的是并行算力而不是串行时间。所以"要不要组队"这个问题, 其实是在问"你缺的是 token 预算还是墙上时间"。 完整的带宽账在 《硬件与算力账本》
E 它假设了什么 整套多 agent 的做法假设「多一个 agent 就多一份独立判断」。 第 4 节那段警告把这条假设戳破了:如果几个 agent 是同一个模型、看同一批资料, 它们的判断根本不独立。这也解释了第 5 节的反直觉结果—— 「每步加独立校验」在它足够可靠时最有效,是因为它换掉了信息来源,而"多投票"没有
🎯 前后钩子

它接住了上一章的什么:《上下文工程与记忆》管的是单个 agent 的窗口和记忆。再上一章《Agent 与工具调用》给了单个 agent 的循环和四个失败模式:大多数时候答案是"再给它配一个好工具"。

它给下一章留了什么:当决策路径由好几个 agent 共同决定时, "谁该为最后那句话负责"就变得说不清了——这就是 《对齐、安全与越狱》要面对的新问题。

一句话带走多智能体

能画出流程图就用工作流,顺序永远是单次调用 → 加工具 → 加工作流 → 最后才考虑多 agent。 多 agent 真正买到的只有上下文隔离和并行探索,代价是通信按 N² 涨、错误跨 agent 传染——复杂度换不来能力。

9

拓展阅读

上面讲的都是「够用」的版本。想往下挖,这里有三个入口—— 它们不是必修内容,是给想再往前走一步的读者准备的。

📄 这一章的说法从哪来

💻 工业界怎么写

∑ 更严格的形式