目录
- 1.1 五条结论
- 二、什么才算「多智能体」
- 三、框架全景
- 3.1 AutoGen:把「对话」当编程原语
- 3.2 MetaGPT:把人类 SOP 编码进模型
- 3.3 CrewAI:角色 / 任务 / 团队三件套
- 3.4 LangGraph:状态机 + 持久化,工程性最强
- 3.5 厂商 SDK:护栏、追踪、会话成为标配
- 四、协作机制的设计空间
- 五、三种范式与最小代码
- 5.1 对话式(AutoGen AgentChat)
- 5.2 流水线式(CrewAI)
- 5.3 图-状态机 + 主控(LangGraph)
- 六、评估与失败模式
- 6.1 三条评估线
- 6.2 MAST 归纳的三类失败
- 6.3 什么时候不该上多智能体
- 七、协议层:MCP、A2A 与它们的邻居
- 八、协同办公的四条产品路径
- 九、一个协同办公的分工样例:周会 → 周报 → 任务派发
- 十、选型决策表
- 十一、风险与合规清单
- 十二、参考与延伸阅读
一次把「多智能体框架」和「协同办公落地」串起来的调研笔记。前半部分看框架与协作机制(谁管谁、怎么通信、钱花在哪),后半部分看产品与协议(微软、Google、Slack、Notion、飞书 / 钉钉做成什么样),末尾给一张选型表和一份风险清单。:主## 一、先说五条结论
1.1 五条结论
- 真正跑得动的只有两种形态控 + 子智能体(supervisor / handoff),以及图-状态机工作流。「多角色自由群聊」是控制力最弱、最容易失控的一种。
- 收益来自上下文隔离 + 并行消耗 token,不是「角色扮演更像人」。Anthropic 公开的工程博客显示:Opus 4 主控 + Sonnet 4 子智能体的研究系统,比单智能体 Opus 4 高 90.2%,而仅 token 用量一项就解释了 80% 的性能方差,token 用量 + 工具调用次数 + 模型选择三项合计解释 95%。
- 失败率并不低。MAST 分类学对 7 个主流框架、200+ 任务、1600+ 条执行轨迹做全量人工标注,归纳出 14 种失败模式、3 大类,失败率区间 41%–86.7%,标注者一致性 κ≈0.88。
- 协同办公是当前最实的落地场景,且产品形态已经趋同:套件内嵌 Agent、消息流当 Agent 操作系统、文档与知识库原生 Agent、国内平台走组织内闭环。
- 协议分层已经清楚:MCP 负责接工具与数据,A2A 负责 Agent 之间的发现与委派;框架层会收敛,协议层会长期并存。
二、什么才算「多智能体」
| 类型 | 特征 | 是否多智能体 | 典型实现 |
|---|---|---|---|
| 单 Agent + 多工具 | 一个循环、一个上下文、多个 function | 否 | OpenAI Agents SDK 的单个 Agent |
| 工作流编排 | 多步骤、可含 LLM 调用,但控制流由代码写死 | 否(准多智能体) | LangGraph 固定图、CrewAI Flow |
| 多智能体 | 多个带独立上下文 / 角色的决策体,存在自主委派 | 是 | supervisor 模式、群聊、层级团队 |
判断标准只有两条:有没有多个独立上下文在做决策;决策权有没有被下放。如果全程只有一个上下文,工具再多也还是单 Agent。
三、框架全景
| 框架 | 出身 | 核心抽象 | 编排方式 | 适合场景 |
|---|---|---|---|---|
| AutoGen | Microsoft Research | ConversableAgent / Team | 对话驱动、事件驱动 actor | 研究原型、人机协同 |
| MetaGPT | 学术 + 开源 | Role / SOP / 结构化产物 | 流水线(SOP 编码进提示) | 软件需求→设计→代码 |
| CrewAI | 独立开源 | Agent / Task / Crew / Flow | 角色团队 + 顺序或层级 | 角色分工明确的业务流 |
| LangGraph | LangChain | State / Node / Edge / Checkpointer | 图-状态机,可中断可回放 | 需要精细控制与持久化 |
| CAMEL | 学术 | Role-Playing 会话 | 双角色对话推进 | 数据合成、任务自演化 |
| OpenAI Agents SDK | OpenAI | Agent / Handoff / Guardrail / Session | 交接与护栏 | 生产级客服、工具型助手 |
| Google ADK | Agent / Tool / Runner | 层级 Agent + A2A | 企业级、多云互通 | |
| Claude Agent SDK | Anthropic | Subagent / Hook / Skill | 主控下发子任务 | 编码与长任务自动化 |
| Dify / Coze / Flowise | 平台厂商 | 可视化节点 | 低代码画布 | 业务人员自助搭建 |
3.1 AutoGen:把「对话」当编程原语
AutoGen 的主张是把 Agent 之间的交互本身抽象成一等公民:谁能和谁说话、说什么、什么时候停,都可编程,并支持「对话 + 代码执行」混合。2024 年底的 v0.4 重写为事件驱动的 actor 模型(core / agentchat / extensions 分层),解决了旧版并发与分布式的问题;2025 年与 Semantic Kernel 一起并入 Microsoft Agent Framework。
- 优点:贴近自然协作,加角色成本低,人机混合(Human-in-the-loop)做得好。
- 缺点:终止条件难保证,容易陷入无限往返——这正是 MAST 第一大类失败的高频场景。
- 适合:探索性任务、需要反复澄清的环节。
3.2 MetaGPT:把人类 SOP 编码进模型
MetaGPT 的思路是把标准作业程序(SOP)编码成提示序列,分派给产品经理、架构师、项目经理、工程师、QA 等角色,并用结构化中间产物(需求文档、接口设计、流程图)作为角色之间的交接物,从而减少「你说你的、我说我的」的自由对话损耗。它也是「虚拟软件公司」这类协同办公原型的代表。
- 优点:流程确定性强,产物可校验,适合有明确交付物的任务。
- 缺点:SOP 靠人工写,流程一变就要重写;不适合开放式探索。
- 适合:需求文档、API 设计、代码生成这类有成熟流程的交付。
3.3 CrewAI:角色 / 任务 / 团队三件套
CrewAI 把「角色(role + goal + backstory)」「任务(description + expected_output)」和「团队(process = sequential / hierarchical)」拆成显式对象,上手成本极低;同时提供 Flow 用于确定性编排(不用 LLM 决策控制流),这是它在生产中比纯角色扮演更实用的地方。
3.4 LangGraph:状态机 + 持久化,工程性最强
LangGraph 用图描述控制流:节点是函数或 Agent,边是条件跳转,checkpointer 负责持久化与断点续跑,配合 interrupt 实现人工审批。多智能体交付物有 supervisor、swarm、hierarchical team 等包。
它最大的价值不是「多智能体」,而是让多智能体变得可观测、可回放、可中断——这恰好是失败率高的场景最需要的。
3.5 厂商 SDK:护栏、追踪、会话成为标配
OpenAI Agents SDK(Swarm 的生产化版本)把 handoff、guardrail、tracing、session 做成原语;Google ADK 直接对接 A2A 做跨组织互通;Claude Agent SDK 用 subagent + hook + skill 把「主控下发子任务」固化下来。趋势很明确:多智能体不再是框架的特性,而是模型厂商 SDK 的基础设施。
四、协作机制的设计空间
《Multi-Agent Collaboration Mechanisms: A Survey of LLMs》把 LLM 多智能体协作拆成五个可独立设计的维度,做方案时可以直接当检查清单:
| 维度 | 取值 | 工程含义 | 常见误区 |
|---|---|---|---|
| 参与者 | 同构 / 异构 / 人机混合 | 是否角色细分、是否模型分级 | 全用最强模型 → 成本失控 |
| 协作类型 | 合作 / 竞争 / 竞合 | 竞争用于辩论、评审、投票式提质 | 把竞争用在需要统一口径的任务上 |
| 协作结构 | 链 / 星 / 树 / 图 / 层级 | 对应流水线、supervisor、团队 | 串行任务误用星型并行 |
| 协作策略 | 角色扮演 / SOP / 辩论 / 投票 / 反思 | 决定提示词与状态机怎么写 | 只写角色人设,不写验收标准 |
| 协调协议 | 通信协议 / 任务分配 / 共识 | 决定跨进程、跨厂商能否互通 | 用自然语言当接口,无法结构化校验 |
五、三种范式与最小代码
5.1 对话式(AutoGen AgentChat)
fromautogen_agentchat.agentsimportAssistantAgentfromautogen_agentchat.teamsimportRoundRobinGroupChatfromautogen_ext.models.openaiimportOpenAIChatCompletionClient model=OpenAIChatCompletionClient(model="gpt-4o-mini")planner=AssistantAgent(name="planner",model_client=model,system_message="你负责拆解任务,产出可执行的步骤清单。")reviewer=AssistantAgent(name="reviewer",model_client=model,system_message="你负责找出清单里的漏洞,逐条指出并给修正建议。")team=RoundRobinGroupChat([planner,reviewer],max_turns=6)result=team.run_sync(task="为一份周报设计自动化流程")print(result.messages[-1].content)关键点:max_turns 就是止损线,没有它就等着账单跑飞。
5.2 流水线式(CrewAI)
fromcrewaiimportAgent,Task,Crew,Process researcher=Agent(role="研究员",goal="调研多智能体框架现状",backstory="擅长读论文并提炼要点",tools=[search_tool])writer=Agent(role="撰稿人",goal="写成结构化报告",backstory="擅长把技术材料写成可读文章")t1=Task(description="列出 6 个主流框架与各自定位",agent=researcher,expected_output="含框架名、定位、优缺点的清单")t2=Task(description="基于调研写成 1500 字报告",agent=writer,expected_output="Markdown 报告",context=[t1])crew=Crew(agents=[researcher,writer],tasks=[t1,t2],process=Process.sequential)print(crew.kickoff())关键点:expected_output 是验收标准,写清楚它比换更强的模型更有效。
5.3 图-状态机 + 主控(LangGraph)
fromlanggraph.prebuiltimportcreate_react_agentfromlanggraph_supervisorimportcreate_supervisor search_agent=create_react_agent(model,tools=[web_search],name="searcher")write_agent=create_react_agent(model,tools=[write_file],name="writer")workflow=create_supervisor([search_agent,write_agent],model=model,prompt="你是主编:先让 searcher 收集资料,再让 writer 成文;资料不足时继续派发检索。",)app=workflow.compile(checkpointer=memory)# 有 checkpointer 才能回放与中断result=app.invoke({"messages":[{"role":"user","content":"调研多智能体框架"}]},config={"configurable":{"thread_id":"t-1"}})关键点:主控只负责分派与验收,不亲自干活——这样上下文才真正隔离,token 才不会重复膨胀。
六、评估与失败模式
6.1 三条评估线
- 端到端任务基准:GAIA(通用助理)、SWE-bench Verified(改代码)、BrowseComp(深检索)、WebArena(网页操作)、AgentBench、τ-bench(工具 + 用户交互,按规则验收)。
- 过程指标:每任务 token、工具调用次数、轮次、端到端延迟、人工接管率。
- 成本:多智能体通常比单轮对话多一个数量级 token(Anthropic 提到研究系统约 15 倍),所以"能不能换成更便宜的模型跑子任务"是必答题。
6.2 MAST 归纳的三类失败
| 类别 | 典型模式 | 表象 |
|---|---|---|
| 规格与系统设计 | 任务描述模糊、角色职责重叠、没有验收标准 | 各做各的,产物拼不起来 |
| 智能体间错位 | 信息不同步、互相推诿、重复劳动、终止条件缺失 | 无限往返,账单飙升 |
| 任务验证与终止 | 不做验证、验证不了、过早结束 | 明明错了还宣布完成 |
对应的五个工程动作:验收标准写死(expected_output / schema)、预算与 max_turns 硬止损、独立校验器(用另一个不带执行上下文的模型去核对)、结构化交接物(JSON 而非自然语言长文)、全链路 trace 与回放。
6.3 什么时候不该上多智能体
- 强耦合任务:多人改同一份代码、同一段文案,共享上下文更重要。
- 时延敏感:并行省下的时间常常被编排开销吃掉。
- 信息量一个窗口装得下、工具也就三五个。
- 有硬成本上限。
- 没有评估集:改完不知道变好还是变坏。
七、协议层:MCP、A2A 与它们的邻居
| 协议 | 提出方 | 解决什么 | 关键概念 |
|---|---|---|---|
| MCP | Anthropic(2024-11 开源) | Agent 接工具与数据(纵向) | JSON-RPC;tools / resources / prompts;stdio 与 HTTP 传输 |
| A2A | Google(2025-04 提出,后由 Linux Foundation 治理) | Agent 之间的发现与委派(横向) | Agent Card、Task 生命周期、SSE 流式、artifact |
| ACP | IBM / BeeAI 生态 | Agent 间 REST 风格通信 | 轻量、服务化 |
| ANP | 开源社区 | 去中心化 Agent 网络 | DID 身份、点对点发现 |
分层结论:MCP 解决"我的 Agent 能不能用你的系统",A2A 解决"我的 Agent 能不能把活交给你的 Agent"。协同办公两条都缺不了——MCP 去连 OA、文档、日历、工单;A2A 让跨部门、跨厂商的 Agent 互相派活。框架层会收敛(多数团队最终只剩一两套),协议层会长期并存。
八、协同办公的四条产品路径
| 路径 | 代表产品 | 形态 | 多智能体程度 |
|---|---|---|---|
| 套件内嵌 | Microsoft 365 Copilot、Google Workspace 的 Gemini | 每个应用里一个 Copilot 侧栏 | 单 Agent 为主,逐步引入多 Agent |
| 平台编排 | Copilot Studio、Google Agentspace、Dify、钉钉 AI 助理 | 低代码搭 Agent,再互相调用 | 强,支持多 Agent 编排 |
| 消息流即入口 | Slack AI + Agentforce、飞书、企业微信 | 群聊里把 Agent 当同事 @ | 中,靠频道协作 |
| 文档 / 知识库原生 | Notion Agents、Confluence 的 Rovo、飞书文档 | Agent 读写页面与数据库 | 中 |
- 微软:M365 Copilot 覆盖 Word / Excel / PPT / Outlook / Teams;Copilot Studio 负责编排与"Connected Agents"(一个 Agent 调用另一个 Agent);Teams 里做会议纪要,Outlook 里做收件箱分诊。
- Google:Gemini 进 Gmail / Docs / Sheets / Meet;Agentspace 做企业内部 Agent 平台;A2A 让不同厂商的 Agent 互通。
- Slack:Slack AI 做频道摘要与会话搜索答案;Salesforce Agentforce 把 Agent 放进频道当"成员"——这是"消息流就是 Agent 操作系统"最典型的形态。
- Notion:Notion AI 之上加 Agents,可以跨数据库执行多步任务(整理、写、更新状态)。
- 国内平台:飞书智能伙伴与多维表格 AI、钉钉 AI 助理与 AI 助理市场、企业微信接混元、WPS 灵犀——共同特点是组织内闭环 + 通讯录权限,落地速度快,但要留意数据边界。
- 学术原型:ChatDev 与 MetaGPT 的"虚拟软件公司"是协同办公的直接原型;Generative Agents 演示了 25 个 Agent 的小镇协作;Microsoft 的 Magentic-One 用"编排器 + 多专家"完成跨浏览器与文件的任务。
- 开源自建:AppFlowy、Mattermost Agents、Nextcloud Assistant,适合有私有化要求的团队。
九、一个协同办公的分工样例:周会 → 周报 → 任务派发
| 角色 | 输入 | 输出(结构化) | 防错设计 |
|---|---|---|---|
| 采集 Agent | 日历、会议纪要、IM、文档变更 | 带来源链接的事实清单 | 只准引用原文,禁止推断 |
| 归因 Agent | 事实清单 + OKR | 进展 / 风险 / 阻塞三栏 | 每条必须挂到某个目标 |
| 撰写 Agent | 归因结果 | 周报草稿 | 数字二次核对 |
| 校验 Agent | 草稿 + 事实清单 | 差异列表(缺证据项标红) | 独立上下文,不带执行权限 |
| 派发 Agent | 校验后的任务项 | 任务卡(负责人 / 截止日) | 写操作需人工确认 |
| 主控 | 各 Agent 的验收结论 | 通过 / 打回 | 只分派与验收,不亲自干活 |
两个关键点:交接物一律结构化(JSON 或表格),不要让 Agent 互相读自然语言长文;写操作(发消息、建任务、改文档)必须留人工确认环节,这也是所有协同办公产品的实际做法。
十、选型决策表
| 你的需求 | 推荐 |
|---|---|
| 一两天内验证想法 | CrewAI |
| 生产环境要可控、可回放、有人工审批 | LangGraph(checkpointer + interrupt) |
| 软件需求到代码的流水线 | MetaGPT,或直接用编码 Agent SDK |
| 多模型、多云、跨组织互通 | Google ADK + A2A |
| 接企业已有系统 | 把系统 MCP Server 化,Agent 侧统一接 MCP |
| 业务人员自助搭建 | Dify / Coze / Copilot Studio |
| 国内协同办公闭环 | 钉钉或飞书原生 Agent 平台 |
十一、风险与合规清单
- 成本放大:token 涨 5–15 倍是常态,务必设预算、max_turns 与早停。
- 延迟:并行换速度,串行换质量,别指望两头都要。
- 幻觉互相强化:Agent 之间互相肯定会把错误坐实,必须有独立校验 + 来源引用。
- 权限继承:Agent 用谁的权限?一律最小权限,每次工具调用留审计日志。
- 提示注入:网页、文档、邮件里的文字都是数据,绝不能当指令执行。
- 数据边界:跨部门、跨租户的 Agent 委派要考虑数据分级。
- 可观测性:trace、回放、失败分类是必需品,不是加分项。
- 供应商锁定:协议层用 MCP / A2A 抽象,别把业务逻辑写进某家 SDK 的私有概念里。
十二、参考与延伸阅读
- MetaGPT: Meta Programming for A Multi-Agent Collaborative Framework — https://arxiv.org/abs/2308.00352
- AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation — https://arxiv.org/abs/2308.08155
- CAMEL: Communicative Agents for “Mind” Exploration of LLM Society — https://arxiv.org/abs/2303.17760
- ChatDev: Communicative Agents for Software Development — https://arxiv.org/abs/2307.07924
- Multi-Agent Collaboration Mechanisms: A Survey of LLMs — https://arxiv.org/abs/2501.06322
- Why Do Multi-Agent LLM Systems Fail?(MAST 分类学)— https://arxiv.org/abs/2503.13657
- Magentic-One: A Generalist Multi-Agent System — https://arxiv.org/abs/2411.04468
- Improving Factuality and Reasoning through Multiagent Debate — https://arxiv.org/abs/2305.14325
- Generative Agents: Interactive Simulacra of Human Behavior — https://arxiv.org/abs/2304.03442
- Model Context Protocol 文档 — https://modelcontextprotocol.io/docs/getting-started/intro
- A2A 协议规范 — https://a2a-protocol.org/latest/
- LangGraph 多智能体文档 — https://reference.langchain.com/python/langgraph-supervisor
- Anthropic 多智能体研究系统工程博客 — https://www.anthropic.com/engineering/multi-agent-research-system
- Microsoft Copilot Studio 多智能体编排 — https://www.microsoft.com/en-us/copilot/blog/copilot-studio/new-and-improved-multi-agent-orchestration-connected-experiences-and-faster-prompt-iteration/
- Slack AI — https://slack.com/intl/zh-cn/features/ai
- Notion Agents — https://www.notion.com/product/agents
一句话总结:多智能体的功夫在框架之外——在验收标准、结构化交接、止损预算和独立校验上。框架选哪个都能跑,这四件事缺一件,系统就会在 41%–86.7% 的失败区间里打转。