多智能体进阶

一句话定义:多 Agent 不是"多开几个 LLM",而是通信、状态、共识、编排的系统工程——本篇补 06 模块的概念层,落到机制与框架。

1. 通信机制(比"消息传递"更具体)

机制 说明 适用
消息传递 Agent 间发自然语言/结构化消息 对话式协作(AutoGen)
共享黑板 Blackboard 共享状态区,各 Agent 读写 信息需汇聚(研究→写作)
任务队列 编排者派发,Worker 领取 大规模并行(Map-Reduce)
共享上下文 同一对话/状态对象 紧密耦合的小团队

要点:通信格式要结构化(JSON/约定 schema),纯自然语言易丢失字段、难解析。


2. 编排与共识模式

2.1 Supervisor(调度器)

一个中枢分派任务给专家,专家干完回报(见 05 模块 D 图、13.01 Orchestrator-Worker)。

  • 风险:调度器成瓶颈;>7 个角色时分层(05 模块治理建议)。

2.2 Debate / Voting(辩论投票)

多 Agent 独立作答 → 投票/辩论收敛。

  • 提升事实性与鲁棒性(见 02 推理范式)。
  • 成本 ×N,仅用于高价值判断。

2.3 Assembly(装配)

各 Agent 产出自已部分,汇总器拼接(如 写手A写开头、B写结尾)。

2.4 层级(Hierarchical)

大任务 → 管理层 → 执行层,逐级委派(06 模块已提)。


3. 主流框架实战对照

框架 多 Agent 形态 通信 适合
AutoGen GroupChat:多个 Agent + 一个 GroupChatManager 轮流发言 自然语言消息 研究/对话式协作
CrewAI Crew + Process(sequential/hierarchical) + 角色 Agent 角色化任务传递 角色分工明确的流水线
LangGraph 多节点图 + Supervisor/Subgraph 状态图 需精细流程控制
MetaGPT 角色 + SOP + 共享环境(消息总线) 结构化消息 + 产物文件 软件公司式协作

AutoGen GroupChat 速览

GroupChat(agents=[pm, coder, reviewer], speaker_selection="auto")
  → 每轮由 manager/LLM 决定下一个发言者
  → 终止条件:reviewer 说"通过"或达 max_round

注意:auto speaker selection 不可控,生产常改为显式路由(13.01 Routing)。

CrewAI Process 速览

crew = Crew(agents=[r, w], tasks=[t1, t2], process=Process.sequential)
  sequential: t1 完 → t2;hierarchical: 由 manager 动态派

4. 状态与共享内存

  • 共享状态污染:多 Agent 写同一上下文易冲突/膨胀(06 模块已提)。
  • 对策:每 Agent 独立上下文 + 显式交接产物(文件/消息),而非共用一锅。
  • 持久化:长任务用 checkpointer(见 05 模块 MemorySaver)。

5. 失败模式与治理

问题 表现 对策
死锁/活锁 两 Agent 互相等待/无限争论 设 max_round、终止条件
角色抢活/推诿 重复做或都不做 角色边界清晰(06 模块)
上下文膨胀 共享历史越滚越大 只传必要产物
成本爆炸 N 倍 token 先单 Agent,必要才多
不可复现 发言顺序随机 关键流程改显式路由

6. 决策:要不要上多 Agent?

  • 默认单 Agent(见 06、11 模块"先简单后复杂")。
  • 上多 Agent 的信号:单 Agent 上下文不够装、角色能力差异大、需并行/辩论提升质量。
  • 能用 Workflow 模式(13.01)解决的,优先 Workflow,别用自主多 Agent。

7. 学习要点

  • 多 Agent 难点在通信/状态/共识/编排,不在"多开模型"。
  • 通信结构化、状态隔离、终止条件,三者缺一不可。
  • 框架差异大:AutoGen 对话式、CrewAI 角色化、LangGraph 图式、MetaGPT SOP 式。
  • 能用单 Agent/Workflow 就别上多 Agent。

8. 参考资料

  • AutoGen / CrewAI / MetaGPT 官方文档
  • "Improving Factuality via Multiagent Debate"
  • 06-多智能体协作05-规划与任务分解13-进阶与工程化/01-Agent设计模式与工作流