多智能体协同模式:五种核心架构详解

多智能体协同模式:五种核心架构详解

来源:Anthropic 官方多智能体协同指南,宝玉(@dotey) 推荐。原文探讨了五种经过生产验证的多智能体协调模式,本文基于原文中英文对照整理,方便读者理解每种模式的机制、适用场景和失败模式。


前言

多智能体系统的核心问题是:多个 LLM 实例在独立对话上下文下运行,如何通过代码实现协调?

在这篇官方指南中,Anthropic 梳理了五种经过生产验证的多智能体协调模式:

  1. Generator-verifier(生成-验证者)
  2. Orchestrator-subagent(调度-子智能体)
  3. Agent teams(智能体团队)
  4. Message bus(消息总线)
  5. Shared state(共享状态)

模式一:Generator-verifier(生成-验证者)

机制

一个 Agent 负责生成输出,另一个 Agent 负责根据明确标准评估输出质量。

典型案例:代码生成场景 --- 一个 Agent 写代码,另一个 Agent 运行测试。

何时有效

当验证标准可以明确界定时,此模式效果显著。Generator 产出内容,Verifier 用独立视角审查,不依赖生成过程的理解。

失败模式

Anthropic 特别警告:

如果团队在实现循环时没有明确定义"验证"的含义,就会制造"虚假的质量控制"------看起来有评估环节,实际上没有实质把关。

另一个常见失败:Verifier 跑了一两个测试看到通过就宣布成功。必须要求完整测试套件运行并制定明确的综合检查标准。

适用场景

  • 质量保证(运行测试套件、lint 代码、按 schema 验证输出)
  • 合规检查(验证文档是否符合政策要求)
  • 输出验证(确认生成内容符合规格再交付)
  • 事实核查(由独立 Agent 验证生成内容中的论断或引用)

模式二:Orchestrator-subagent(调度-子智能体)

机制

一种层级结构:Lead Agent(调度者)负责任务分解,将边界清晰的子任务分配给专门的 Subagents。Claude Code 已采用此模式:主 Agent 在处理主要工作的同时,派发后台 Subagents 搜索大型代码库。

核心实现

python 复制代码
# Lead Agent 分解问题为独立子任务
facets = await lead_agent.decompose_query(query)

# 并行派发 Subagents 研究每个子任务
tasks = [research_subagent(facet) for facet in facets]
results = await asyncio.gather(*tasks)

# Lead Agent 综合各 Subagent 的发现
return await lead_agent.synthesize(results)

何时有效

  • 上下文保护:子任务产生的上下文量大(超过 1000 tokens)但大部分与主任务无关时,Subagent 提供隔离
  • 并行化:任务可自然拆分为独立部分(跨多来源的研究、跨多组件的测试)
  • 专业化:不同任务需要不同的工具集、系统提示或专业知识

失败模式

Anthropic 指出:

Orchestrator-Subagent 会产生信息瓶颈------关键细节在通过中心协调者路由时经常丢失。

另一个陷阱:按问题类型而非上下文边界分解任务("一个 Agent 写功能,另一个写测试,第三个做审查"),会产生大量协调开销,每个交接都会损失上下文。

适用场景

适合大多数需要多智能体协同的场景,是新团队的最佳起点,协调开销最低,能处理最广泛的问题类型。


模式三:Agent teams(智能体团队)

机制

多个命名 Agent 组成团队,通过消息路由实现持续协作。每个 Agent 有明确角色,通过消息传递进行通信和协调。Claude Code Agent Teams 正是基于此模式:多个 AI Agent 并行工作,分别处理不同任务部分,同时中心协调者追踪进度并综合结果。

关键协调方式

  • 通过共享文件系统传递结果
  • 通过工具调用结果共享信息
  • 通过顺序检查点同步进度
  • 不是通过 Agent 间直接通信

主要优势

优势 说明
并行性 多个任务同时执行
更大有效上下文 团队总体上下文大于任何单个 Agent
专业化 不同 Agent 可专注不同任务部分

何时有效

任务足够大、多面,或需要真正并行执行时,Agent teams 的协调开销才能被收益覆盖。对于小型任务,Agent teams 反而增加不必要的复杂度。

失败模式

  • 上下文隔离问题:Agent 之间共享上下文的方式如果不清晰,会导致信息丢失或重复
  • 合并冲突:当多个 Agent 同时修改相关资源时,冲突处理成本高昂
  • Token 密集度:Agent teams 通常比单一 Agent 消耗更多 token

模式四:Message bus(消息总线)

机制

多个 Agent 通过一个共享消息总线进行通信和协调。消息总线作为所有 Agent 之间的中央通信层,Agent 发布消息到总线,并从总线订阅它们需要处理的消息。

与 Orchestrator-subagent 的区别

维度 Message bus Orchestrator-subagent
通信模式 发布/订阅 点对点任务分配
协调中心 无单一协调者 Lead Agent 主导
耦合度 松散耦合 层级耦合
适用场景 事件驱动、工作流自动化 任务分解、结果综合

何时有效

  • 事件驱动的工作流场景
  • 需要多个 Agent 对同一事件作出反应
  • 工作流步骤之间的依赖关系复杂但清晰

失败模式

  • 消息路由复杂时,调试困难
  • 需要额外的消息队列基础设施
  • 消息格式不匹配导致 Agent 间通信失败

模式五:Shared state(共享状态)

机制

彻底移除中心协调者。Agent 直接从持久化存储中读写,实时建立在彼此的发现之上。

何时有效

  • 研究综合系统:一个 Agent 的发现立即影响另一个 Agent 的调查方向
  • Agent 之间需要频繁共享状态但不需要严格的消息传递
  • 任务可以自然地分解为"读-处理-写"循环

优势

  • 消除中心协调者带来的瓶颈
  • 更高的并行度
  • 更自然的团队协作模式

失败模式

  • 状态一致性挑战:多个 Agent 同时写入可能产生冲突
  • 调试困难:状态变化链路不直观
  • 缺乏中央视图:难以追踪整体进度

模式选择决策框架

按任务独立性选择

任务特征 推荐模式
独立子任务,无交叉依赖 Parallelization(并行处理)
任务有明确分工,需要协调者 Orchestrator-subagent
任务需要持续协作和消息传递 Agent teams / Message bus
任务需要共享上下文和实时协作 Shared state

按验证需求选择

验证需求 推荐模式
需要明确的生成-验证循环 Generator-verifier
需要黑盒验证(不依赖生成上下文) Generator-verifier
需要持续验证每个步骤 Evaluator-optimizer

Anthropic 建议

对于大多数应用,Anthropic 推荐从 Orchestrator-subagent 开始。它以最小的协调开销处理最广泛的问题类型。

生产系统通常会组合使用多种模式------比如整体工作流用 Orchestrator-subagent,子任务中需要紧密协作的部分用 Shared state。


各模式的失败模式汇总

模式 主要失败模式
Generator-verifier 无限循环(Generator 无法响应反馈);过早宣布通过(未运行完整验证)
Orchestrator-subagent 信息瓶颈(关键细节在协调者处丢失);按问题类型而非上下文分解
Agent teams 上下文隔离不清;合并冲突;Token 消耗过高
Message bus 消息路由复杂;基础设施开销大
Shared state 状态一致性冲突;调试困难;缺乏全局视图

实战建议

1. 从单一 Agent 开始

一个设计良好的单一 Agent + 适当的工具,往往比多智能体系统完成更多工作。多智能体系统引入开销:每个额外 Agent 都代表一个新的潜在故障点、额外需要维护的 Prompts,以及意外行为的另一个来源。

2. 只有当以下情况才使用多智能体

  • 上下文污染降低性能时:当子任务的上下文累积影响后续任务质量时
  • 任务可以并行运行时:当任务可自然分解为独立部分时
  • 专业化能改进工具选择或任务专注度时:当不同任务需要不兼容的工具集或专业领域时

3. 按上下文分解,而非按问题类型

问题类型分解(通常适得其反):按工作类型划分(一个 Agent 写功能,另一个写测试,第三个审查),会产生持续的协调开销。

上下文分解(通常有效):按上下文边界分解------处理一个功能的 Agent 也应该处理它的测试,因为它已经拥有必要的上下文。

4. 设置明确的验证检查点

无论选择哪种模式,都要确保有清晰的验证点,让 Subagents 可以在不需要完整上下文的情况下验证工作。


总结对比

模式 协调复杂度 适用场景 代表应用
Generator-verifier 需要明确验证标准的任务 代码生成+测试、合规检查
Orchestrator-subagent ⭐⭐ 需要任务分解和结果综合 研究调研、代码审查
Agent teams ⭐⭐⭐ 需要多角色持续协作 复杂软件开发、商业策划
Message bus ⭐⭐⭐ 事件驱动、松散耦合的工作流 自动化工作流、事件处理
Shared state ⭐⭐ 需要实时共享发现的研究任务 研究综合、协作式探索

参考来源

  1. Anthropic 官方博客 :《When to use multi-agent systems (and when not to)》 www.claude.com/blog/buildi...

  2. Anthropic 工程博客 :《How we built our multi-agent research system》 www.anthropic.com/engineering...

  3. 宝玉(@dotey) X 转发x.com/dotey/statu...

  4. Claude Code Agent Teamswww.mindstudio.ai/blog/what-i...

  5. Multi-agent Coordination Patterns (daily.dev 整理): app.daily.dev/posts/multi...


本文基于 Anthropic 官方文档整理,保留原文核心内容,仅做中文化处理和必要结构调整。如需深入了解,建议阅读原文。

相关推荐
迅翼SwiftWing7 小时前
编队系列(总)|固定翼编队如何实现稳定飞行?通信架构、协同算法与工程约束深度解析
算法·架构
utmhikari7 小时前
【架构艺术】端到端监控告警和预案治理
架构·监控·告警·稳定性·sre·预案
今天AI了吗8 小时前
DeepSeek Harness 深度解析:从评测架构到实战落地
java·网络·数据库·人工智能·架构·java-ee
许彰午8 小时前
27-AuthService登录链路
java·低代码·架构
IT小白杨9 小时前
Facebook广告账户环境隔离实战:从指纹自洽到代理固定的完整工程方案
大数据·经验分享·架构·facebook·指纹浏览器
江畔柳前堤9 小时前
前台·中台·后台:2026年AI原生时代的架构全景图
开发语言·人工智能·算法·机器学习·架构·scala·ai-native
csdn_aspnet9 小时前
ZLibrary类项目合规避坑指南,从版权风控、CDN架构到反爬策略的IT合规实践分享
架构·知识库·电子书·资源·zlibrary
Dawson Zhu10 小时前
知识图谱与 Palantir Ontology:同一套「实体—关系」表象下,两种截然不同的工程范式
人工智能·语言模型·架构·aigc·agi
猎头南楼10 小时前
VLA 模型落地端侧:从架构选型到量化部署的工程实践笔记
笔记·架构·大模型
Quor11 小时前
ZorvAI 架构解析:MCP 连接器如何扩展 Agent 的行动半径
架构