多智能体协调模式:五种方法及其适用场景

为什么需要协调模式

构建多智能体系统时,选择合适的协调模式往往比优化单个智能体的能力更重要。盲目追求“高级”模式而忽略问题本身的适配性,是许多团队容易陷入的误区。本文系统介绍五种实用的多智能体协调模式 —— Generator-VerifierOrchestrator-SubagentAgent TeamsMessage BusShared-State —— 分析各自的 trade-offs,并提供从简到繁的演化路径。

本文基于 Claude 平台工程团队的实践总结,原文标题:Multi-agent coordination patterns: Five approaches and when to use them


模式一:Generator-Verifier

这是最简单的多智能体模式,也是实际部署中最常见的一种。

How it works

一个 Generator 接收任务并产生初始输出,传递给 Verifier 进行评估。Verifier 按照明确的标准检查输出质量,若满足要求则接受,否则拒绝并附带具体反馈。Generator 根据反馈修正输出,循环往复直到通过或达到最大迭代次数。

Where it works well

  • 代码生成:一个 agent 写代码,另一个 agent 运行测试并检查规范
  • 客服回复:Verifier 检查是否遗漏问题、语气是否恰当、信息是否准确
  • 合规检查、作业评分等有明确评判标准的任务

优点:简单可控,能显著提升质量。
局限:Verifier 依赖明确标准;生成和评估能力若不可分离(如创造性工作),模式失效;可能陷入循环,需要最大迭代次数和 fallback 策略。

原文提醒:A verifier told only to check whether output is “good,” with no further criteria, will rubber-stamp the generator’s output. 验证器的质量标准必须具体。


模式二:Orchestrator-Subagent

层次结构定义了这个模式:一个主 agent 负责规划、委派和汇总,subagents 承担具体的子任务。

How it works

Orchestrator 接收复杂任务后将其分解,部分自己处理,部分分发给专门的 subagents。Subagents 完成工作后返回结果,Orchestrator 再综合成最终输出。

实际案例:代码审查系统。一个 PR 进来,Orchestrator 分发安全检查、测试覆盖率、代码风格、架构一致性等检查各自对应的 subagent,最后汇总成统一审查报告。

Where it works well

  • 任务可清晰分解为独立的子任务
  • 子任务之间依赖弱,不需要频繁通信

优点:结构清晰,Orchestrator 保持全局视角。
局限:Orchestrator 成为信息瓶颈 —— 当一个 subagent 发现的信息对另一个 subagent 有用时,必须经过 Orchestrator 中转,关键细节可能在多次转发中丢失。另外默认串行执行会限制吞吐量。

原文注:Claude Code 使用此模式,main agent 写代码、编辑文件,同时 dispatch subagents 后台搜索或调研,让工作流并行。


模式三:Agent Teams

当子任务可以长时间独立并行执行时,Orchestrator-Subagent 模式会显得过于刻板。

How it works

一个 Coordinator 生成多个 worker agents 作为独立进程。Team members 从共享队列中领取任务,自主多步执行,完成后标记结束。与 subagent 的关键区别:subagent 完成一个子任务后就终止,而 team members 持续存活,积累上下文和领域专长,在多轮任务上不断改进。

Where it works well

代码框架迁移(例如从旧框架迁移到新框架):每个 team member 负责迁移一个服务(依赖更新、代码修改、测试修复、验证),Coordinator 只需分配任务并最后进行集成测试。

优点:支持长期自主工作,agent 可在多任务中积累经验;天然并行,吞吐量高。
局限:team members 之间难以共享中间发现,独立性要求高;完成时间不确定,需要处理 partial completion;共享资源(同一代码库、数据库)容易冲突。

原文强调:Independence is the critical requirement. 若一个 team member 的工作会影响另一个,且两者不感知,输出就会冲突。


模式四:Message Bus

随着 agent 数量增加、交互模式变复杂,直接协调难以维护。Message bus 引入一个共享通信层。

How it works

Agents 通过两个原语交互:publishsubscribe。每个 agent 订阅自己关心的事件类型,一个 router 将匹配的消息准确投递。新的 agent 可以随时加入,无需修改已有连接。

Where it works well

安全运营自动化:告警到达后,一个 triage agent 按严重程度和类型分类,publish 到不同 topic;network investigation agent 订阅高危网络告警,identity analysis agent 订阅凭证相关告警;各分析 agent 可能继续 publish enrichment requests,由 context-gathering agent 响应。最终 findings 流向 response coordination agent。

优点:松耦合,易扩展,支持事件驱动的工作流。
局限:调试困难 —— 一个事件触发 cascade of events across five agents,需要仔细的 logging 和 correlation。Router 若 misclassifies 或 drops 事件,系统静默失败。

原文注:LLM-based routers provide semantic flexibility but introduce their own failure modes.


模式五:Shared-State

前面四种模式都依赖中心化的信息管理者。Shared-state 移除中间人,让 agents 通过一个持久化存储直接协调。

How it works

每个 agent 自主地从共享数据库、文件系统或文档中读取信息,根据当前状态决策,再将结果写回。没有 central coordinator。通常由初始化步骤植入问题或数据集,系统在达到终止条件(时间限制、收敛阈值、或一个专门判断完成的 agent)时停止。

Where it works well

研究综述系统:多个 agents 分别研究学术文献、行业报告、专利文件、新闻报道。文献 agent 发现一位关键研究者后,industry agent 可以立即看到这一信息并深入调查该公司。发现实时共享,形成 evolving knowledge base。

优点:无单点故障;发现实时共享,支持真正的协作。
局限:缺少协调可能导致重复工作或矛盾方向;危险的反应循环(Agent A 写 -> B 读并写 -> A 看到后继续响应…),系统空转消耗资源。需要 first-class termination conditions。

原文警告:The harder failure mode is reactive loops. … Systems that treat termination as an afterthought tend to cycle indefinitely.


如何选择与演化

实际生产系统常常组合多种模式。以下是关键的选择判据:

场景特征 推荐模式
输出质量关键且评估标准明确 Generator-Verifier
任务可清晰分解,子任务独立且短时 Orchestrator-Subagent
子任务需要长期上下文积累,较少相互依赖 Agent Teams
工作流事件驱动,agent 类型会持续增加 Message Bus
agents 需要实时共享发现,协作强 Shared-State
需要避免单点故障 Shared-State

演化路径

对于大多数应用,从 Orchestrator-Subagent 开始是最稳妥的选择。它能覆盖最广泛的问题类型,且协调开销最小。观察系统在实际运行中的痛点:

  • 如果 subagents 之间信息传递频繁且 orchestrator 成为瓶颈 → 考虑引入 Shared-StateMessage Bus
  • 如果子任务需要持久化上下文 → 演化到 Agent Teams
  • 如果输出质量不稳定且你能写出明确的验证规则 → 增加 Generator-Verifier 回路

原文总结:Start simple, watch where it struggles, and evolve from there. 这些模式是 building blocks,而非 mutually exclusive choices.


延伸阅读

Acknowledgements: 基于 Claude 平台团队的分享,由 Cara Phillips 等人撰写,本文经中文编译并保留了部分原文关键表述。

Logo

更多推荐