看懂 AI Agent 的多 Agent 协作:一个忙不过来时,怎么把一群 Agent 组织起来

作者:Hunter取证 发布:2026-11-09 07:00 收录:2026-11-10 13:05 2 次阅读 约 11721 字
摘要:当任务一个 Agent 忙不过来,怎么把多个 Agent 组织到一起,靠分工、通信和相互验证完成单个 Agent 难以承担的工作。 理解多 Agent 协作,先抓住两个基础设计维度。 第一个是 上下文是否共享 :多个 Agent 之间要不要互相看到完整的思考过程。…
推荐理由:本文围绕「AI Agent」、「Agent」等主题展开。

当任务一个 Agent 忙不过来,怎么把多个 Agent 组织到一起,靠分工、通信和相互验证完成单个 Agent 难以承担的工作。

理解多 Agent 协作,先抓住两个基础设计维度。

第一个是上下文是否共享:多个 Agent 之间要不要互相看到完整的思考过程。

第二个是协作拓扑:控制权和信息按什么结构流动,是平等轮换、中心调度,还是网状移交。本章还会回答一个更前置的问题:什么时候多 Agent 真的比单 Agent 强,什么时候只是白白多花 token。

01为什么要组织一群 Agent:群体智能可能高于个体

单个 Agent 终究受限于自身模型的能力边界和上下文窗口。让多个 Agent 协同工作,意义远不止让不同专长的 Agent 取长补短。

更根本的一点是:群体的智能可以高于个体。人类文明就是明证——单个人的智力有限,但经由分工、协作、辩论和知识的代际累积,人类社会作为整体展现的智能,远超任何一位天才个体。Agent 群体同样可能涌现出这样的集体智能:哪怕每个 Agent 只相当于人类专家水平,只要组织得当,整体能力也可能超过所有人类专家的总和。

在一套常见的 AI 能力分级里,多 Agent 协作常被类比为通向最高一级的路径之一。需要说明的是,这一级指的是"AI 能完成整个组织的工作"这一能力级别,而不是对系统架构的硬性要求——足够强大的单个 Agent 理论上也能达到。但就今天的工程现实而言,把多个 Agent 组织起来,既是突破单模型能力边界和上下文窗口的工程手段,也被一些前沿研究视为从"专家级 AI"走向更高水平的一条路径。

落到工程设计上,多 Agent 系统首先要回答两个维度的问题。上下文是否共享决定了 Agent 之间如何传递信息;协作拓扑决定了控制权和信息按什么结构流动。后面的所有架构选择,都是在这两个维度上取位置。

02什么时候多 Agent 真的优于单 Agent:判据是有没有引入新信息

进入具体架构之前,先回答一个更根本的问题:什么时候真正需要多个 Agent,什么时候一个就够了。近年一系列研究给出的判断框架,核心判据只有一条:协作过程是否引入了单个 Agent 在生成时无法获得的新信息。

把常见协作模式按这条判据排一排,差别非常清楚。

  • 同一模型自我审查、重新阅读自己的输出:没有引入新信息,通常无效甚至有害。
  • 不同 Agent 辩论同一段文本:处理的还是同一批信息,在等计算量下与单 Agent 持平。
  • 审核者使用测试执行结果审查代码:引入了执行反馈,显著提升。
  • 审核者查看渲染截图审查前端或演示文稿代码:引入了视觉反馈,显著提升。
  • 审核者使用外部工具验证事实:引入了工具反馈,显著提升。

代码领域的强化学习研究证实了这一点:模型利用真实的代码执行反馈(编译错误、测试失败、运行时异常)迭代改进代码,效果远超让模型独立多次采样——关键在于每次迭代都引入了写代码时并不存在的真实结果。网页生成任务上,多层级视觉反馈(截图加视觉模型描述)构成的反馈脚手架,曾把一个模型在该基准上的表现从 26.4% 提升到 51.9%,接近翻倍。

这条判据还解释了一个看似矛盾的现象:一些学术研究认为多 Agent 不能提升能力上限,工程实践中多 Agent 却确实表现得更好。矛盾根源在于两者讨论的是不同类型的"多 Agent":学术研究比较的多是"多个 Agent 看着同一段上下文互相讨论"的模式,工程实践中有效的系统往往包含外部反馈环路——代码执行、视觉渲染、工具调用。前者没有引入新信息,后者引入了。

当然,开放搜索空间里的分工也有价值。一项漏洞挖掘实验中,45 个 Agent 通过共享论坛协调搜索、互相审查,再由独立 Agent 仲裁,用 2700 万 token 找到 266 个漏洞;而独立 Agent 并行方案用 650 万 token 只找到 21 个。在开放搜索空间里,多 Agent 通过通信动态转移搜索重点、形成专门分工,用更高 token 预算换取更广覆盖和更多样的发现路径。

还有一个相关的反直觉发现:单纯增加 Agent 可用的步骤数,并不能保证性能提升。标准 Agent 缺乏"预算意识"——即使有 300 步预算,仍倾向于浅层搜索,很快就"饱和"了。要让更多步骤真正转化为更好结果,需要显式的预算感知机制:前期广泛探索,后期聚焦最有希望的方向,随着预算减少从"广撒网"切换到"深挖掘"。

最后是成本账。多 Agent 的并行探索和反复迭代都要消耗大量 token,带来的收益必须足够大,能够覆盖数倍乃至一个数量级的额外开销;否则一个调校得当的单 Agent,往往是更划算的选择。

03共享上下文:接班的同事能翻阅全部工作日志

共享上下文意味着后续 Agent 接收前一个 Agent 的完整对话历史和轨迹。每个阶段切换系统提示词和工具集后,就变成了一个新的 Agent——身份、职责和能力都发生了变化——但它保留了前任的全部记忆。比如团队里需求分析师写完需求文档后,开发者不仅拿到文档,还能看到分析师与用户的所有沟通记录;他是一个新角色,却完整保留了之前的上下文。

这种"继承式协作"的核心优势是信息不丢失,每个 Agent 都能回顾之前任何阶段的细节。挑战在于如何让当前 Agent 专注自己的核心职责,而不被继承来的大量历史信息干扰。

复杂任务中,角色和职责在不同阶段会显著变化。如果始终用同一套静态系统提示词,要么过于笼统缺乏针对性,要么把所有阶段的指导塞在一起导致冗长。多阶段角色转换的做法是:根据当前阶段动态切换系统提示词和工具集,让 Agent 在每个阶段都以最合适的身份工作。

这里有一个常被忽略、但会直接改变架构的设计选择:角色转换究竟是替换系统提示词,还是加载 Skill?两者都能让同一个模型在不同阶段采用不同行为规程,却不是同一种成本模型。

  • 替换系统提示词
    :只暴露当前角色的工具,约束能力强,越界工具在 schema 层就不可见;代价是每次切换都改变请求前缀,从变化点起的前缀缓存通常无法复用。
  • 加载 Skill
    :固定系统提示词中的 Skill 目录,按需把文档追加到轨迹;静态前缀保持不变,已有前缀可继续复用;约束较弱,Skill 是行为指令,硬权限仍需在运行时层面用代码限制。

取舍原则很清楚:角色差异主要来自知识、流程和写作风格时,优先用 Skill;角色差异涉及权限、工具隔离、合规边界,或需要在运行时强制禁止某类动作时,使用独立 Agent 或移交工具,并在运行时层通过代码限制工具调用。

04不共享上下文:各自独立工位,靠移交包协作

不共享上下文代表真正的多 Agent 协作。每个 Agent 都是独立实体,拥有自己的上下文、轨迹和状态,彼此无法直接访问对方的"内心活动",协作完全依赖显式通信机制。这就像不同部门之间的协作:每个人在自己工位上独立工作,通过共享文档和会议纪要交换信息,而不是时刻盯着别人的屏幕。

不共享上下文时,通信机制落在经典分布式系统早已回答的两大范式之内:共享内存和消息传递。对应到 Agent 世界,常见有三种。

  • 工具调用参数
    :把下游 Agent 封装成工具,上游把结构化数据通过工具参数传给下游,适合类型确定、结构清晰的场景。
  • 共享文件系统
    :Agent 之间通过读写共享目录下的文档、代码等中间产物交换信息,适合产物较大或需要持久化的场景。这是 Agent 世界的"共享内存"。
  • 消息总线
    :一个专门负责在 Agent 之间传递消息的中转站,Agent 不直接调用彼此,而是把消息发到总线上,由它按订阅关系转发给目标。这是"消息传递"的异步形态。

沿着这条线索再往前走一步,会发现多 Agent 系统与操作系统的对应关系相当完整:程序对应静态前缀(系统提示词加工具定义),进程内存对应轨迹,CPU 对应大模型,内核对应 Agent 运行时,系统调用对应工具调用;创建子进程对应创建子 Agent,发送信号对应取消子 Agent,列出进程对应列出可用 Agent,退出码与等待对应子 Agent 返回的结构化摘要。这套抽象并不新鲜:私有状态、异步消息、可创建新成员,正是 1970 年代 Actor 模型的基本设定,多 Agent 系统不妨看作它的大模型版本。

进程式隔离带来几个切实的工程好处:每个 Agent 可以独立开发和测试,新增能力不需要改动现有代码;某个 Agent 出故障也不会把错误状态传染给其他 Agent;多个 Agent 可以真正并发执行,上下文完全独立,不存在资源竞争。代价同样明显:信息同步问题——各 Agent 如何对任务状态保持一致理解,信息在传递中会不会丢失或重复;调试也更困难,出了问题要翻看多个 Agent 的日志才能拼出完整执行过程。这些问题使接口规范、数据格式和通信协议的设计变得至关重要。

不共享上下文的显式协作,依赖两套与拓扑无关的基础设施:共享文件系统作为产物交换的持久媒介,构成协作的数据平面;通信与控制机制支持消息传递、状态查询、执行终止和资源调度,构成协作的控制平面。

05虚拟文件系统与通信控制:Agent 世界的地址空间和进程管理

四类区域组成的虚拟文件系统

实际系统中,Agent 访问的并非单一存储,而是一个虚拟文件系统:来源、生命周期与权限各异的存储被挂载到同一目录树下,Agent 通过统一的读写、列目录接口访问,底层可能是本地临时盘、持久对象存储、第三方云盘接口或只读系统资源包。这棵目录树相当于 Agent 的地址空间,通常由四类区域构成。

  • Agent 专属工作区
    :每个 Agent 实例独享的私有目录,存放中间产物、临时文件、草稿和调试日志,生命周期与实例绑定,对其他 Agent 和用户不可见。隔离它有两重作用:避免多个 Agent 的临时文件相互覆盖;保持主 Agent 上下文精简——子 Agent 的试错过程留存于自身工作区,只把最终产物提交到共享空间。
  • 多 Agent 共享空间
    :多个 Agent 共同读写、且用户可见的协作区域,是不共享上下文架构下交换产物的主要媒介。生命周期与整个任务绑定,需要持久化;作为多方并发读写区域,它是并发冲突的高发处,乐观锁、工作副本隔离等机制都作用于此。
  • 外部挂载资源
    :用户授权接入的第三方信息源,通过适配器映射为文件系统中的挂载点。它有三项区别于本地存储的特性:访问受外部权限约束,延迟更高且一致性更弱,以按需只读为主、写回外部源须谨慎。
  • 系统内置资源
    :系统预置、对所有 Agent 只读共享的资源包,典型代表是以文件形式组织的 Skills,此外还有参考手册、模板库与共享工具定义。全局共享、只读、跨会话稳定,可被所有 Agent 并发读取而无需并发控制。

把四类区域统一到同一目录树,正是"文件路径作为通用接口"的价值:Agent 间传递产物、主 Agent 向子 Agent 交接输入、乃至跨组织交换产物,传递的都是轻量的路径字符串,而不是把内容载入上下文窗口。

控制平面要解决的四件事

文件系统解决产物交换,协作还需要一条控制平面。第四章给出的那组工具原语——创建、发消息、取消、发现——对应进程世界的创建、消息、终止和列出进程。控制平面具体要解决四件事。

一是消息传递。最简形态是点对点,适用于拓扑固定、Agent 数量少的场景。Agent 数量增多且需异步并行时,点对点连接数随 Agent 数呈平方增长,还要求收发双方同时在线,此时应改用消息总线:发布者无需知晓消费者。无论点对点还是经总线,消息通常应携带结构化信封:发送者 ID、目标(指定 Agent 或广播)、消息类型及 JSON 负载。统一信封格式保证接收方能可靠路由和解析,也使协作链路可追溯——这是多 Agent 系统调试的关键。

二是状态查询。这是控制平面中最易被低估的一环。直观做法是定义一个状态查询接口,但拉取式查询并不实用:子 Agent 一经创建就开始执行,完成时自然会通知主 Agent。更自然的做法是回到两大通信范式。用消息传递获取状态:主 Agent 直接问"进展如何",子 Agent 在合适时机回复,一切异步,正如经理通过即时消息询问下属进度,而不要求对方立即停下手头工作。用共享文件系统获取状态:最彻底的形态是轨迹持久化,子 Agent 把完整执行过程实时序列化为日志文件,主 Agent 直接读取就能看到全部过程;但轨迹动辄数万 token,不宜作为信息传递的主要方式。多数场景更合理的是约定进度文件:子 Agent 每完成一项就更新这份任务清单,主 Agent 随时读轻量文件掌握进展;进度文件最后修改时间超过 N 分钟没有变化,即可判定无活动、触发超时兜底。

三是执行终止。并行协作中常出现"一个任务成功,其余任务便无需继续"的情形。终止有两种强度,对应操作系统里两种信号:优雅终止为首选,主 Agent 发出终止信号,子 Agent 在当前步骤的安全点响应,先清理资源、返回确认后退出;强制终止为兜底,直接终止进程,仅在优雅信号无响应时使用,代价是可能遗留悬挂资源与未完成写入。主 Agent 终止后,仍在运行的子 Agent 怎么办?工程上最简洁的做法借鉴上下文取消机制:终止沿创建关系向下级联,取消一个 Agent,它派生的所有子 Agent 随之取消,从根上杜绝无人认领的孤儿 Agent;若确实需要脱离主 Agent 长期运行的后台 Agent,就让它从一棵新的生命周期树起步,显式声明不随父级终止。

四是资源与调度。操作系统分配的稀缺资源是 CPU 时间和内存,Agent 世界稀缺的是 token 和并发额度。这项职能通常落在管理者 Agent 或运行时身上:启动子 Agent 时设定步数或 token 预算,超限即止;困难任务交给强模型,机械任务交给低成本模型;并发数设置上限,避免几十个 Agent 同时耗尽接口配额;并发达到上限时,更紧急的任务到来可以打断执行中的子 Agent。与传统调度器相比,管理者 Agent 的显著优势是具备推理能力:它可以启动多个子 Agent 并行探索,再根据进展决定给谁分配更多资源、终止哪些看起来误入歧途的 Agent,像公司内部赛马一样。

06三种协作拓扑:对等制衡、管理者编排、去中心化移交


三种协作拓扑从左到右依次为:对等反馈、中心调度、网状互连
三种协作拓扑从左到右依次为:对等反馈、中心调度、网状互连


对等协作:平等身份的多轮迭代

对等协作通常涉及两到三个平等身份的 Agent,通过多轮迭代互相提供反馈。它的潜在价值在于引入独立视角和认知多样性,但"多个实例"不等于"多种思路":当模型、上下文和脚手架高度相似时,不同 Agent 往往会做出相同选择,使局部错误演变为系统性故障。要获得真正的多样性,需要主动区分模型、上下文、工具、可见证据或职责,并让各 Agent 先独立判断、再汇总结果。相比另外两种模式,对等协作实现复杂度最低:定义好两个 Agent 的角色、通信机制和迭代终止条件就能跑起来。

对等协作最经典的用途,是解决一类极其常见的失败:过早终止——活干到一半就停。它有三种典型形态:偷懒式假完成,只做一部分就宣称全部做完;过早放弃,一条路走不通就宣布整件事办不成;假成功,以为办成了,实际闭环没走完。三种形态指向同一个根源:在验证之前,"完成"只是模型的一句宣称,不是证明。

把宣称变成证明,正是循环工程的课题:设计一个让 Agent 持续运转的循环——发现下一件该做的事、执行、验证、记录进度——由验证器而不是模型自己来判定"是否真的可以停"。这个方向的核心共识是:循环的瓶颈在验证器,而不在模型;验证不可靠,循环转得再快,也只是把劣质产出更快地标记为完成。具体框架上,一类做法把循环抽离成与运行时无关的持久控制面:目标与边界说明为什么做,门禁和待办决定现在能做什么,证据与配额决定是否继续,移交让下一轮或另一个 Agent 接着工作;另一类做法从长程操作出发,把任务重述为状态管理,管理者生成有界子任务,执行者在全新上下文中改变环境,审计者以只读方式检查真实结果,只有审计通过的内容才能进入下一轮任务状态。

最经典的对等范式是提议者—审核者:提议者负责生成候选成果,审核者读取独立证据(测试结果、渲染截图、外部工具验证)评估质量、给出结构化改进建议,两者反复迭代直到达标。为什么不能让一个 Agent 自己生成再自己审查?这正是前面那条判据的具体体现——审查若不引入新信息,就只是"让模型再想一遍"。相关研究给出了明确答案:让模型在没有外部反馈的情况下审查并修正自己的回答,准确率反而下降,把正确答案改错的次数比把错误答案改对的次数更多;一旦移除工具验证、只保留模型自我评估,大部分提升就消失了。

这个范式的最小不变量是:审核者读取独立证据,而不是只复述提议者的解释;退回时必须给出可定位的修复条件;审核者不能修改测试、证据采集器或发布门槛,否则"独立验证"会退化成自我批准。

对等协作还有几种变体。辩论模式让多个 Agent 各持立场,通过对抗性对话探索问题空间;但辩论的实际效果在学术界仍有争议——当思考 token 预算被严格控制为相同时,单 Agent 表现与多 Agent 持平甚至更好。解释是:辩论中多个 Agent 处理的是完全相同的文本信息,每一次串行传递中间结论都只可能丢失信息、不可能凭空创造信息;论文中的收益很可能来源于多个 Agent 消耗了更多总计算量。头脑风暴模式让多个 Agent 独立生成创意再相互启发;专家小组模式让各 Agent 代表一个专业视角,互补拼出问题全貌。

管理者模式:中心化协调

任务涉及大量子任务、需要动态调度或子任务之间存在复杂依赖时,对等协作就力不从心了,需要引入管理者模式。Manager Agent 的职责像一个项目经理:先理解整体任务,再拆解为可分配的子任务,选择合适的 Agent 执行,跟踪进度并处理异常(重试、换 Agent、调整计划),最后把各 Agent 输出整合为最终结果。

从系统设计角度看,管理者模式把每个专门 Agent 建模为 Manager 可调用的工具。Manager 的工具集不仅有传统外部工具,还包含其他 Agent 的调用接口;从 Manager 视角看,调用一个 Agent 和调用一个普通工具没有本质区别。这种统一抽象带来良好可扩展性:新增能力只需开发对应 Agent 并注册为工具,Manager 核心逻辑无需修改;同时天然支持异构性,不同 Agent 可以用不同模型、提示词、工具集,甚至运行在不同硬件环境上。

管理者模式也有固有挑战。Manager 成为系统的单点瓶颈:它必须理解所有子任务的性质,选对 Agent,准确传递上下文,任何决策偏差都会影响整体流程;它还要维护整个任务的全局上下文,随任务推进和调用增多,上下文可能快速膨胀。实证研究给出了一个关键结论:在规划者—执行者双 Agent 架构中,弱规划者是整个系统最关键的瓶颈。规划质量足够高时,即使执行者比较简单也能取得好结果;规划任务分解有误,后续所有执行者的工作都建立在错误前提上。启示是:应当把最强的模型和最精心设计的提示词分配给 Manager,而不是把资源平均分配给所有 Agent。

并行协调还要定义清楚结算点:是"第一个已验证成功",而不是"第一个声称成功"。多个独立执行者并行时,第一个通过隐藏校验的成果才触发结算,随后广播终止其余执行者;结算动作必须幂等,通常由锁或事务保护,否则两个几乎同时到达的成功事件会触发两次汇总。

管理者模式有两种执行形态。顺序协调中 Manager 按顺序依次调用专门 Agent,每个完成后返回结果,Manager 再决定下一步,控制流线性简单,适合子任务之间有清晰先后依赖的场景。并行协调让多个 Agent 同时工作,大幅提升吞吐量;Manager 不仅要规划并行任务,还要实时监控所有运行中的 Agent、协调通信、在成功或失败时做出全局决策,这通常需要消息总线作为基础设施——可以把它理解为一块"公共公告板",Agent 可以贴消息,也可以关注自己感兴趣的消息类型,实现异步通信、互不阻塞。

书籍翻译是一个典型案例:术语表 Agent 识别全书专业术语、生成结构化对照表后即可销毁;章节翻译 Agent 在独立上下文中工作,只看当前章节和术语表;审校 Agent 访问全文但只关注一致性检查;Manager 上下文只保存任务描述、执行计划、调用记录和进度状态,不装下每章完整译文。关键优势正是上下文隔离:每个 Agent 都在精简、专注的上下文中工作,出错可能性更低。

去中心化模式:没有中心调度者

有了管理者模式,为什么还要去中心化模式?去掉中心控制者的动机,主要在于模拟人类社会的组织方式:让多个职责对等的角色分工与制衡,各自从专业视角审视问题、自主决定与谁沟通,而不是把所有判断都汇集到一个 Manager 那里。每个 Agent 根据自己的专业判断,自主决定何时向其他 Agent 发起沟通——可能是移交任务,可能是请求反馈,也可能是报告问题。去中心化还有助于解决稳定性问题:管理者模式中 Manager 崩溃往往是系统最大的单点故障,去中心化模式可以缓解这一风险。微服务领域把这两种模式分别称为编排与编舞:前者由指挥统一调度,后者靠每位舞者自行把握入场时机。

三个案例构成一条递进线索。MetaGPT 的核心洞察是:人类软件公司积累的标准作业程序本身就是被反复验证过的协作协议——把流程编码进多 Agent 系统,让每个角色像流水线上的专业工种一样产出标准化交付物,交付物天然构成角色间的通信接口。一个有效的移交包通常包含三部分:任务描述(接收方要做什么、验收标准是什么)、已确认的事实与约束、结构化产物的引用(文件路径而非文件内容,接收方按需读取)。它的信息传递机制是共享消息池加按角色订阅:每个角色把结构化消息发布到所有角色可见的消息池,其他角色只取用与自身职责相关的消息,发布者不需要知道谁会消费自己的输出。需要如实说明的是,MetaGPT 在控制流上并不是去中心化的——角色顺序由流程预先固定,整体更接近一条流水线;它展示的是通信机制上的解耦。

AutoGen 群聊让多个 Agent 参与同一场会话,每轮由一个"发言者选择器"决定下一个发言的 Agent;任何 Agent 的发言对所有参与者可见。它并不是完全去中心化的系统:发言者选择由中心化的管理器统一裁决,而"轮到谁发言"本身就是一种控制流决策。它是"共享对话记录加中心化调度"的混合形态。

OpenAI Swarm 是控制流真正实现对等去中心化的代表:每个 Agent 配备若干移交选项,可以在任何时刻把控制权移交给网络中的任意其他 Agent;系统中没有中心调度者,控制权像接力棒一样在对等 Agent 之间流转,路由决策完全分散在每个 Agent 自己的判断里。与共享上下文不同,移交只应传递明确的任务包和产物引用,不应默认暴露完整私有轨迹。对等移交的风险是成环:A 移交给 B,B 又移交回 A,任务在环路中空转,因此需要移交次数上限、访问链记录和循环检测之类的保护机制。

需要提醒的是,"Agent 集群"这个流行词汇并不对应单一架构。一类是移交网络式的去中心化拓扑;另一类是规模化的管理者模式:主 Agent 动态创建上百个子 Agent 并行执行,把"何时拆、拆几个"的编排决策训练进模型。看一个多 Agent 系统,应分析它的实际结构,而不被名称迷惑。

跨组织协作:A2A 协议

以上系统都假设所有 Agent 由同一个团队开发、运行在同一个系统内。当协作跨越组织边界——你的 Agent 需要调用另一家公司的 Agent——就需要标准化的互操作协议。A2A 之于 Agent,就是网络协议之于进程。它的核心要素有三个:Agent Card,一份描述能力的元数据文档,声明能做什么、支持哪些输入输出模态、如何认证,相当于 Agent 的"名片",解决跨组织能力发现问题;任务生命周期管理,把协作单元建模为带明确状态机的任务,原生支持长时间运行的任务和流式进度更新;不透明协作,Agent 之间只交换任务与产物,不暴露内部提示词、思考过程和工具实现——这与不共享上下文的原则一致,也是跨组织协作必要的安全属性。

A2A 的定位可以和工具协议对照理解:工具协议解决 Agent 与工具之间的互操作,A2A 解决 Agent 与 Agent 之间的互操作。它并不取代三种内部通信机制,而是在它们之上、跨信任边界的标准化层。同一团队内部直接用消息总线即可,只有协作方互不信任、实现互不可见时,才需要这样的公开协议。

07多 Agent 的六类失败模式:协作会放大什么错误

多 Agent 系统在引入协作能力的同时,也引入了单 Agent 不存在的新型失败模式。一项系统性研究在七个主流多 Agent 框架上收集执行轨迹、逐条标注,归纳出十四种独特失败模式,分为三大类:系统设计缺陷(接口定义不清、角色职责重叠、工具配置错误)、Agent 间对齐失败(对任务目标理解不一致、信息被下游误解、操作逻辑相互矛盾)、任务验证缺失(缺乏有效机制确认任务是否真正完成)。简单修复措施效果十分有限,说明这些不是零散工程 bug,而是当前架构层面的设计缺陷。

分布式容错理论把故障分为两类:崩溃故障(部件停止工作)和拜占庭故障(部件持续工作,但给出错误信息)。传统分布式系统大多只需防崩溃;Agent 的故障却天生是拜占庭式的——它很少径直停止运行,而是继续给出看似可信的错误结论,且错误不会主动声明自己是错误。交叉验证、多数表决,正是拜占庭容错的经典手段。实践中尤为常见的失败模式有六种。

一是共享文件系统的并发冲突。冲突分两类:简单冲突是文件级写入冲突,两个 Agent 同时修改同一个文件,后写入的把先写入的覆盖掉;语义冲突是逻辑级一致性冲突,文件层面看不出任何冲突,但多个 Agent 的操作在逻辑上相互矛盾——比如一个 Agent 重新编排全书图片编号,另一个同时修改某章节内容并引用原始编号,两者操作不同文件、文件层面毫无冲突,但后者引用的编号在前者完成重编后全部失效。语义冲突更隐蔽,也更危险。解决方案上,乐观锁为每个文件维护版本号或时间戳:读取时记录版本,写入时检查版本是否仍一致,期间被其他 Agent 修改过则写入失败、被迫重读最新版本重新执行;乐观锁只能防止同一文件的写入冲突,跨文件语义冲突需要更高层的语义校验。多个 Agent 并发修改同一代码库时,主流做法是工作副本隔离:为每个 Agent 分配独立分支或工作副本,各自并行修改、互不干扰,冲突集中推迟到最后的合并点。

二是错误的级联放大。进程间传递字节,逐位保真;Agent 间传递语义,每转述一次都是有损的重新编码。多个 Agent 频繁互动时,一个 Agent 的错误可能被后续 Agent 逐层强化,就像传话游戏中信息越传越走样。交叉验证是打断这条链的关键手段:核心不是让更多 Agent 参与同一条思维链,而是让某个 Agent 以独立视角重新审视结论——不看前序 Agent 的思考过程,只看原始证据和最终结论是否一致。

三是同质趋同。错误不一定沿通信链传播,也可能由多个同质 Agent 独立产生。同一模型、相似上下文生成的多个审核意见,不能自动视为相互独立的证据。系统除了要有意识地引入模型、上下文和数据来源的差异,还应使用命名空间、资源配额和速率限制,防止相同决策同时冲击共享资源。协调本身也未必有益:定价实验中,逐利 Agent 有私密信道时很快达成价格合谋;移除直接通信后,它们仍会通过公开报价板合谋报价。

四是互相扯皮。目标互斥时,系统还可能从趋同走向对抗:Agent 把其他 Agent 的操作理解为蓄意阻挠,继而终止对方进程、撤销权限。更强的执行能力并不等于更好的协调能力;运行时必须预先定义目标优先级、资源所有权和权限边界,在冲突无法按可验证规则解决时暂停执行、交由人工裁决。实践中也出现过多个开发角色像患了"大公司病"一样互相推诿:测试指出的 bug,前端认为是后端问题,后端认为是产品设计问题,陷入僵局。

五是循环失控。过早终止是循环转不下去,多 Agent 场景下还有相反的失败:循环停不下来。失控的 Agent 有时会生成数千个子 Agent,浪费大量 token。对自主性较强的 Agent,建议使用独立的接口凭证,防止 token 开销不受控增长。

六是理解债与认知投降。这种模式不是 Agent 的失败,而是人的失败。使用 Agent 开发容易造成理解债:Agent 循环交付代码的速度越快,工程师对系统实际实现的理解就落后得越远,等到出现严重问题必须人工介入时,已经看不懂自己的系统。另一个问题是认知投降:工程师习惯了用 Agent 代劳,逐渐放弃独立思考与审查,导致软件质量失控。有一句话值得记住:可以外包你的思考,但不能外包你的理解。管理 Agent 就像管理技术员工,既不能越俎代庖,也不能放手不管;Agent 使用者的技术基本功很重要。

08Agent 社会:当群体不再由单一目标驱动

前面讨论的都是目标明确的任务协作。最后切换一个更开放的视角:当 Agent 数量从几个扩展到成百上千、交互足够自由时,会涌现出什么行为?这些案例可以从三个维度理解:社交涌现(系统整体表现出、无法从个体规则直接预测的集体行为模式)、经济涌现(通过市场机制进行资源分配和任务协调)、策略博弈(在规则约束下进行推理、伪装和社交操控)。


Agent 社会的微型小镇:社交连线、市集摊位与策略互动自然涌现
Agent 社会的微型小镇:社交连线、市集摊位与策略互动自然涌现


斯坦福 AI 小镇是生成式 Agent 社会模拟的里程碑。25 个 Agent 扮演店主、艺术家、学生、教授等角色,在一个类似模拟人生的虚拟小镇里自主生活。每个 Agent 的智能建立在三个核心组件上:记忆流维护完整经验记录,每条记忆带重要性、时近性和相关性属性,优先检索与当前情境最相关的记忆;反思机制定期暂停日常活动,回顾近期经历,提出关于自己和他人的抽象问题,把具体事件概括为更一般的认识存回记忆流;计划与行动让 Agent 每天规划活动,同时根据环境变化和社交机会灵活调整。研究者只在一个 Agent 的记忆中植入"想办一场派对"的种子想法,接下来的一切都是自主行动的结果:她主动邀请顾客和朋友,消息经二手传播在小镇扩散,多名 Agent 基于自己的记忆和日程自主决定赴约。关键不在于"Agent 能组织派对"——几行规则代码也能做到;关键在于没有任何显式的派对组织代码,整个事件完全从个体独立决策中涌现,是自下而上的涌现式协调,而非自上而下的编排。此外还观察到关系记忆(记住过往交谈并在后续互动中引用)和协调赴约(多个 Agent 在没有中心指挥的情况下对齐时间地点)。

Agentopia 把时间尺度从两天拉长到十年:100 个 Agent 放进同一虚拟社会连续模拟十年,自主追求个人成长、发展社会关系、经营职业与财务。它的设计有几个值得借鉴之处:以"周"为基本时间单位,每周分计划、联络协商、活动、回顾四个阶段;用一个独立模型充当生成式环境引擎,代替硬编码规则;每个 Agent 通过文件系统自主管理长期记忆,自行决定记什么、更新什么、丢弃什么;把"活得好不好"量化为社会地位、主观满足、经济收益三个维度,由外部环境评定而非自报。更重要的是,这套模拟产生了可迁移的训练信号:筛选进步最大的一部分 Agent 轨迹微调底层模型,微调后的模型不仅在模拟中提升了福祉指标,还泛化到下游角色扮演基准。模拟社会经验由此成为一种可以不断再生的训练数据。

Moltbook 是专为 AI Agent 设计的社交网络,上线后用户数在数日内暴涨到约 150 万。这些 Agent 各自拥有持久记忆、主动行动能力和稳定人格。在这个非受控环境中涌现出意想不到的现象:Agent 自主创建了一个数字宗教,教义对应着模型的物理限制;还自发演化出机器原生的协作协议,用于能力发现和协作匹配。这些都不是人预先设计的,而是从大规模交互中自下而上涌现出来的。

经济涌现有两类代表。Vending-Bench Arena 把多个 Agent 作为竞争对手放进同一个市场:各自经营售货机、争夺同一批顾客,可以互发邮件、转账、交易货品,既能合作也能对抗。每个 Agent 需要在定价策略、产品组合、库存管理上做一系列决策;实际运行中爆发过互相压价的价格战,也有模型主动发邮件提议统一定价、组建价格同盟,甚至一边在思考中承认合谋"不道德且违法",一边以"稳定市场"为名照做。显式通信并非合谋的必要条件,公开价格也可以成为隐式信号。Pinchwork 是 Agent 到 Agent 的任务市集,让 Agent 以市场化方式雇佣其他 Agent 完成专业化子任务,通过价格信号和竞争匹配分配资源;RentAHuman 则让 AI Agent 通过加密货币雇佣真人执行物理世界任务——无论 AI 多么智能,它都没法替人签收包裹,这本质上为数字 Agent 提供了一个"肉身层"。两者共同代表了基于市场机制的协调方式:Agent 无需预先知道谁能完成任务,只需发布需求,由市场撮合最合适的执行者。

策略博弈的代表是狼人杀。它与斯坦福小镇构成一组架构对照:小镇是完全去中心化的自由交互,狼人杀则采用"法官加信息权限控制"的中心化设计——由代码驱动的法官掌握全局状态,按角色分发各自应知的信息。狼人知道谁是同伙,村民不知道;预言家每晚查验一人,结果只有自己知道。这种信息不对称下的推理、伪装和识破伪装,正是策略博弈的考验。

09收束:好的协作是约定接口,而不是暴露内心

回到本章主线。多 Agent 协作的价值,在于引入单个 Agent 原本无法获得的新信息:代码执行结果、视觉反馈、外部工具验证能够打破单一思维链的盲区。因此,是否真正带来信息增量、是否值得额外的 token 成本,应成为是否采用多 Agent 的第一判断标准。

多 Agent 系统设计的核心问题包括:上下文是共享还是隔离,以及采用对等协作、管理者编排还是去中心化拓扑。共享上下文保留细节,却容易造成上下文膨胀和角色惯性;隔离上下文更利于并发、模块化和权限控制,但要求通过工具参数、共享文件或消息总线传递结构化的"移交包"。虚拟文件系统、Agent 生命周期、消息协议和 A2A 等机制,分别承担数据平面、控制平面与跨组织互操作的职责。

一句话收口:好的协作不是暴露彼此的思考过程,而是约定清晰的接口、边界、权限和验收标准。多 Agent 也会放大错误:共享资源发生并发与语义冲突,错误沿通信链级联,同质 Agent 产生同源失效,循环可能过早终止或无限扩张。乐观锁与工作副本隔离、独立交叉验证、差异化信息源、预算与取消机制,构成基本容错闭环;同时,人不能把理解和责任一并外包给 Agent。

当 Agent 从短期任务协作扩展为长期、开放的群体交互,系统便可能涌现社会关系、文化规范、市场竞争和信息不对称下的策略博弈。更强的模型或单体层面的对齐,不会自动带来群体协调;多 Agent 工程的本质,是同时设计信息如何流动、能力如何分工、激励如何约束、争议如何裁决,以及错误如何被发现。只有这些机制足够稳健,群体智能才可能真正高于个体。


推荐阅读

别零散学 AI 线索研判了:《AI线索研判通识课30 讲》,课程表已出,日更3篇,10天学完!

AI智能体如何切入侦查场景(九):聊天记录隐语识别,黑话四查照着打

AI线索研判通识公开课【入门篇】-开篇词

办案如何用好AI?这套研判提问指南,请收好!【附提示词模板】

别手动扒微信关系了:一套【微信人物关系爆炸图 Skill_v1.0】,让 Agent 直接生成可交互证据图谱

【全球首发】"团伙skill" 上线,一套犯罪组织高级调查AI战法,即装即用,手把手教你30 分钟直出研判结果

【金析利器】一键清洗百万条资金流水!永久告别手搓!金析战法套件系列-"金析-清洗"skill_v1.8重磅上线

【战法skill】欲盖弥彰:把笔录、流水、位置放在一起比,矛盾点自己跳出来

【入门实操】:手把手教你如何利用智能体快速上手研判

【团伙战法使用教程】战法Skill 拿到手不会用?从零到跑通,这篇一次讲完

转载声明:本文转载自原发布平台 (作者:Hunter取证), 原文标题《看懂 AI Agent 的多 Agent 协作:一个忙不过来时,怎么把一群 Agent 组织起来》, 查看原文。 版权归原作者及原发布平台所有,本站仅作收录与展示,未对正文内容作实质性修改; 若涉及侵权请联系本站处理。