Multi-Agent 系统
多个 AI Agent 协同工作完成复杂任务的系统架构
简介
Multi-Agent 系统是指多个 AI Agent 按照特定的协同模式共同完成任务的架构。与单一 Agent 独立完成所有工作不同,Multi-Agent 系统将复杂任务拆解为多个子任务,每个 Agent 负责一个专门的职责,通过协同配合达成最终目标。
这种架构特别适合规则驱动的业务流程——当任务可以明确拆解为多个步骤,每个步骤有明确的输入输出和处理规则时,Multi-Agent 系统比单一全能 Agent 更清晰、更可维护、更易测试。
关键信息
- 类型:架构模式 / 协同机制
- 领域:AI Agent / 工作流自动化 / 系统设计
- 核心价值:职责分离、可测试性、可维护性
- 典型协同模式:顺序管道、并行处理、层次委托
- 相关概念:AI Agent 智能体、顺序管道、Agent 技能、Claude Code
核心特性
1. 职责分离(Separation of Concerns)
每个 Agent 只负责一个明确的子任务,有清晰的”做什么”和”不做什么”边界。
典型案例(会计管道):
- Agent 1(数据准备):只标准化格式,不分类
- Agent 2(分类):只分类,不验证数据质量
- Agent 3(对账):只标记差异,不修改数据
- Agent 4(报告):只聚合数字,不做解读
- Agent 5(洞察):只解读数据,不修改报告
这种严格的职责边界使得:
- 每个 Agent 可独立开发和测试
- 系统出问题时可快速定位责任环节
- 单个 Agent 可替换而不影响其他部分
2. 数据流转机制
Agent 之间通过标准化的数据格式传递信息,前一个 Agent 的输出是后一个 Agent 的输入。
常见流转方式:
- 共享文件夹:Agent 写入/读取共享目录中的文件(如
data/cleaned/、data/categorized/) - 消息队列:通过消息中间件传递结构化数据
- 数据库:Agent 读写共享数据库表
- API 调用:Agent 之间通过 RESTful API 传递 JSON 数据
会计管道案例中采用共享文件夹模式,每个 Agent 从 data/ 读取输入并写入新的输出文件。
3. 协同模式
顺序管道(Sequential Pipeline):
- Agent 按固定顺序执行:A → B → C → D → E
- 每个 Agent 只在前置 Agent 完成后启动
- 适合有明确先后依赖关系的流程(数据必须先清洗再分类)
并行处理(Parallel Processing):
- 多个 Agent 同时处理不同数据分片
- 适合无依赖关系的批量任务(同时分析 100 个客户的财务报表)
层次委托(Hierarchical Delegation):
- 主 Agent 负责任务分解和协调
- 子 Agent 负责执行具体任务
- 适合复杂决策需要中央调度的场景(参考 2026-05-27-woshipm-ai-ecommerce-kol-agent 的 Agent + Skills 分层架构)
4. 规则驱动适配性
Multi-Agent 系统特别适合以下场景:
- 有明确规则:每个步骤的处理逻辑可以用规则描述
- 有清晰结构:输入输出格式标准化
- 有固定顺序:步骤之间有明确的先后依赖
典型适用领域:
- 会计和财务处理(分类、对账、报告、分析)
- 数据处理管道(采集、清洗、转换、加载)
- 审批流程自动化(申请、审核、分派、归档)
- 内容生产流程(素材收集、编辑、审核、发布)
不同素材中的观点
来自 2026-06-03-claude-code-multi-agent-accounting:
- 顺序管道是 Multi-Agent 的经典形态:5 个 Agent(数据准备→分类→对账→报告→洞察)严格按顺序执行,每个 Agent 通过共享
data/文件夹传递数据。这种设计使得会计流程从原始银行对账单到业务洞察实现了端到端自动化 - 职责边界清晰才能避免混乱:每个 Agent 有明确的”只做什么”和”不做什么”——数据准备 Agent 只清洗不分类,对账 Agent 只标记差异不修改数据,报告 Agent 只聚合数字不做解读。职责边界的严格定义是 Multi-Agent 系统可维护性的基础
- 逐个构建+测试是正确开发流程:不要一次性构建 5 个 Agent 后再测试整个系统,而是 Agent 1 → 测试 → Agent 2 → 测试 → … 的渐进式构建。这避免了在系统末端才发现前置 Agent 的问题,大幅降低调试复杂度
- 项目基础先于代码:在写任何 Agent 之前先建立 4 个基础文件——
data/文件夹(共享工作区)、CLAUDE.md(项目真相源)、Claude Skills 最佳实践指南(600 行规范)、Agent 详细规格文档(每个 Agent 的角色/输入/输出/规则)。这些基础决定了系统能否顺利协同,比单个 Agent 的代码质量更重要 - 规则驱动场景的天然适配性:会计流程的每个步骤都是规则驱动(分类按规则、匹配按规则、汇总按规则),规则+结构+顺序正是 Multi-Agent 系统擅长的场景。任何有明确规则、步骤、数据流转的业务流程都可以参考这个架构
实用信息
设计 Multi-Agent 系统的步骤
-
识别任务是否适合 Multi-Agent:
- 任务能否拆解为 3 个以上明确的子步骤?
- 每个子步骤的输入输出能否标准化?
- 是否存在明确的规则或处理逻辑?
-
划分 Agent 职责边界:
- 为每个 Agent 写清楚”只做什么”和”不做什么”
- 确保职责不重叠、不遗漏
- 每个 Agent 应该可以独立测试
-
定义数据流转格式:
- 标准化每个 Agent 的输入输出格式(JSON、CSV、Markdown)
- 设计共享数据存储机制(文件夹、数据库、消息队列)
- 明确数据的命名规范和目录结构
-
选择协同模式:
- 有先后依赖?→ 顺序管道
- 可并行处理?→ 并行模式
- 需要中央调度?→ 层次委托
-
逐个构建和测试:
- 先构建第一个 Agent,用真实数据测试
- 再构建第二个 Agent,测试与第一个的集成
- 逐步添加 Agent,每次都验证端到端流程
-
建立项目基础文件:
CLAUDE.md或README.md:记录系统架构、每个 Agent 的职责、数据流转规则- Agent 规格文档:每个 Agent 的详细定义(输入、输出、规则、示例)
- 测试数据集:准备典型的输入数据用于端到端测试
常见工具和框架
- Claude Code:通过自定义 Skill 构建 Multi-Agent 系统(参考 2026-06-03-claude-code-multi-agent-accounting)
- LangGraph:专门用于构建 Multi-Agent 工作流的框架
- AutoGen:微软开源的 Multi-Agent 对话框架
- CrewAI:面向角色分工的 Multi-Agent 协同框架
注意事项/避坑指南
- 不要为了 Multi-Agent 而 Multi-Agent:如果任务简单(3 步以内)或规则不明确,单一 Agent 可能更合适
- 职责边界必须写在文档里:不要只在脑海中区分职责,必须显式记录”Agent A 不做 X,这是 Agent B 的职责”
- 数据格式标准化是关键:Agent 之间的数据格式不一致会导致集成困难,提前设计好 schema
- 避免 Agent 之间的隐式依赖:Agent B 不应该依赖 Agent A 的实现细节,只能依赖 Agent A 的输出格式
- 测试要覆盖边界情况:空数据、异常格式、部分缺失字段——每个 Agent 都要测试这些情况的处理
- 监控和日志很重要:Multi-Agent 系统出问题时需要快速定位是哪个 Agent 的问题,日志和监控不可少