去年有段时间,多智能体特别火。我们也没忍住,拉了一个“研究小组”:一个规划者、一个检索者、一个分析师、一个写作者,再加一个审查者。五个 Agent,听起来分工明确。
实际跑起来是这样的:规划者把任务拆得太细,检索者找回来一堆重复资料,分析师和写作者对“结论应该是什么”产生了分歧,审查者最后把所有东西打回来重做。二十分钟过去,它们还在讨论谁该先说话。
最后交上来的方案,还不如一个单 Agent 加两个工具。
这次失败之后,我对多智能体的态度冷静了很多。它不是不能做,是很多团队做早了。
多 Agent 最常见的失败,是协调成本超过任务本身
多智能体的宣传往往强调“分工”和“并行”,但很少提协调成本。
每增加一个 Agent,就多一份上下文、多一轮通信、多一个可能失败或误解的环节。协调者要汇总信息,worker 要理解任务,结果还要合并、去重、解决冲突。这些开销在 demo 里看不出来,在长任务里会迅速累积。
更麻烦的是调试。单 Agent 出了问题,你看一条轨迹;多 Agent 出了问题,你要在几条交错的轨迹里找因果。很多时候,你甚至不知道是哪个 Agent 先偏的。
所以我现在判断要不要上多 Agent,先问一句:这个任务的分工,是不是天然存在?
什么时候真的需要
我见过真正适合多智能体的场景,大概有三类。
第一类是可以并行的子任务。比如同时检索多个数据源,或者对一批文档分别做抽取,最后汇总。各干各的,互不依赖。
第二类是工具和权限差异很大。比如一个 Agent 只能读公开资料,另一个能访问内部数据库,还有一个能执行写操作。用权限边界把角色分开,比让一个 Agent 什么都能干更安全。
第三类是需要独立验证。一个 Agent 生成,另一个 Agent 专门挑错,最好用不同的模型或不同的上下文,避免“自己审自己”。
除了这三类,很多所谓的多 Agent 需求,其实单 Agent 加工具就能解决。任务步骤多,不等于需要多个角色;上下文长,不等于需要多个大脑。
拓扑不是越复杂越好
常见的多智能体拓扑有主管式、层级式、对等式、辩论式和市场式。
主管式是一个协调者分派任务给 worker,结构清晰,最容易控制。层级式适合大型任务,但层级越多,信息损耗越大。对等式灵活,但容易出现死循环和重复工作。辩论式适合高风险决策,但成本高,而且不保证收敛。市场式听起来很先进,工程上通常不值那个复杂度。
对大多数团队,主管式加两三个 worker 是性价比最高的起点。先把一个协调者和两个明确分工的 worker 跑稳,再考虑扩展。
辩论式我一般会劝退。除非任务真的需要多角度对抗,否则它只是把一次推理变成五次,还不一定更准。
通信要有 schema
多智能体系统里,最容易被低估的是通信。
Agent 之间传什么、怎么传、传丢了怎么办,如果没有约定,系统很快就会变成一团乱麻。我见过用自然语言互相喊话的实现,最后连“任务完成了没有”都判断不了。
比较稳的做法是:任务状态放共享存储,Agent 之间只传事件和引用;消息有固定 schema,带 run ID、task ID、发送方、接收方、类型、载荷、截止时间和重试次数;大对象放对象存储,消息里只放 ID。
还要处理冲突和死锁。明确谁有最终决策权,设置超时和最大轮次,对共享资源加锁或串行化,检测循环依赖和重复任务。
这些听起来像分布式系统的基础课,因为它本来就是。多智能体不是新魔法,它只是把分布式系统的问题搬到了模型之间。
成本会放大
多智能体的 token 消耗,不是简单的加法。
每个 Agent 都有自己的系统提示和上下文,协调者要汇总和转发大量信息,辩论和审查会产生多轮重复推理,通信失败和重试还会增加调用次数。
我一般会盯一个指标:协调开销占总成本的比例。如果超过三成,通常说明拓扑太复杂,或者分工不清晰。
另一个指标是每次成功任务的总成本。多 Agent 如果只是把成功率提高了两个点,成本却翻了三倍,那这笔账很难算得过来。
还有一个隐形成本:评测和调试。单 Agent 的失败轨迹是一条线,多 Agent 的失败轨迹是一张网。你要判断是哪个 Agent 先偏的、消息在哪一步丢的、状态被谁覆盖的,往往要花几倍时间。这个成本不会出现在 token 账单上,但会出现在工程师的加班时间里。
单 Agent 往往更好
很多“多智能体”的需求,用单 Agent 可以解决得更好:
把上下文工程做好,让模型在正确的信息上推理;把工具边界划清楚,让每个工具只做一件事;用结构化输出和校验,减少格式错误;把固定流程做成工作流,而不是让 Agent 自由发挥。
单 Agent 的优势是状态集中、调试简单、成本可控、行为一致。这些优势在 production 里比“看起来更像一个团队”重要得多。
一次五 Agent 会议的复盘
那次实验结束后,我把日志翻出来算了一笔账。
五个 Agent,二十分钟,一共产生了 140 多条消息。其中真正推进任务的不到三分之一,其余是确认、复述、等待和重复提问。协调者花了大量 token 在汇总上,两个 worker 对同一个概念使用了不同的定义,审查者最后推翻的方案,其实是规划者最早提出的那一版。
成本大约是单 Agent 方案的六倍,任务成功率还低了一点。
我们后来把它拆了。先用一个单 Agent 加检索和写文件两个工具,把主流程跑通;只把“独立审查”拆成第二个 Agent,用不同的模型和上下文,专门挑错。消息从 140 条降到 20 多条,成功率反而上去了。
这次复盘让我对“角色越多越像团队”这种说法彻底祛魅。Agent 的数量不是能力指标,能少一个就少一个。
主管式怎么落地
如果非要用多 Agent,我会从主管式开始。
主管只做三件事:拆任务、分派、汇总。它不直接调业务工具,也不参与具体执行。
每个 worker 有明确的输入和输出契约:给它什么状态,期望它返回什么结构,超时多久,失败怎么上报。worker 之间不直接通信,所有信息通过共享状态和主管转交。
停止条件也要写死:最大轮次、总预算、每个子任务的截止时间。主管发现某个 worker 连续失败,就跳过它或者转人工,而不是一直重试。
这套结构不新鲜,但它可控。多 Agent 的问题往往不是不够聪明,而是没人负责踩刹车。
别急着加 Agent
多智能体是一种架构选择,不是能力证明。
我现在判断一个多 Agent 系统是否合理,会看它有没有单 Agent 基线,能不能证明多出来的 Agent 带来了可测量的收益。如果答不上来,那大概率是为了架构而架构。
先让一个 Agent 把活干明白,再考虑给它找同事。
转载请注明出处: 皮哈皮阿
本文的链接地址: https://blog.phpat.com/ai-frontier/multi-agent-tradeoffs.html
微信或手机浏览器扫一扫,随时随地随心阅读与分享
-
多智能体不是银弹:编排、通信与成本取舍
我们试过让五个 Agent 开会,结果它们花了二十分钟争论谁该先说话,最后交上来的方案还不如一个单 Agent 加两个工具。多智能体不是不能做,是很多团队做早了。
2天前
-
世界模型被吹了两年,真正难的不是生成视频
看世界模型的演示视频,很容易产生“就差一点”的错觉。可一旦你试图在里面做一个动作,问题就全暴露了。生成一段像世界的视频,和拥有一个能交互的世界,是两件难度完全不同的事。
1小时前
-
个人 Agent 与常驻智能体:长期记忆、主动性与隐私边界
我让一个常驻 Agent 帮我盯快递。包裹签收三天后,它还在提醒我“预计今天送达”。长期记忆、主动性和隐私边界,决定了个人 Agent 是助手还是负担。
10小时前
-
AI 浏览器用了一个月,我还是回到了地址栏
我试着把 AI 浏览器当主力用了一个月。模型不差,功能也不少,但最后让我放弃的是一件很朴素的事:地址栏比对话框更快、更确定。AI 浏览器到底卡在哪?
1小时前
京公网安备11011402053654 
@muffin:链接已更新,分类图像功能...
AI网址导航模版图标库更换指南
作者大大,图标库邀请链接失效了,麻烦更新...
AI网址导航模版图标库更换指南
太好看了,快点更新!
友情链接
@戴墨镜的刘备:哈喽,路过点赞。
vue.js组件之手写签名板vue-signature-simple
太好看了,快点更新!太棒了!👍真的很赞!
vue.js组件之手写签名板vue-signature-simple
你写得非常清晰明了,让我很容易理解你的观...
Emlog插件RSS订阅器发布