Multi-Agent Collaboration via Evolving Orchestration¶
会议: NeurIPS 2025
arXiv: 2505.19591
代码: https://github.com/OpenBMB/ChatDev/tree/puppeteer
领域: Agent
关键词: 多Agent协作, 动态编排, 强化学习, 拓扑演化, 集体推理
一句话总结¶
提出"木偶师"(Puppeteer)式多 Agent 协作范式——一个中心化编排器通过 RL 学习在每个推理步骤动态选择激活哪个 Agent,在封闭域和开放域任务上同时提升性能和效率,并发现演化后的拓扑趋向更紧凑的环形结构。
研究背景与动机¶
- 领域现状:LLM 多 Agent 系统(MAS)通过组合不同模型、推理策略和工具来解决复杂问题。现有方法如 ChatDev、MacNet 等依赖预定义的静态拓扑结构(链式、树状、DAG 等)。
- 现有痛点:静态组织结构无法随任务复杂度和 Agent 数量的增长而自适应——导致协调开销增加、冗余计算、通信效率低下。以 50 节点的 mesh 结构 MAS 为例,开发几百行代码竟需要 10 小时。
- 核心矛盾:如何在最大化协作效果的同时最小化计算开销?静态拓扑无法兼顾两者。
- 本文要解决什么? 设计一个动态的、可演化的多 Agent 编排机制,能根据任务状态实时选择最优的 Agent 激活序列,并通过 RL 不断优化。
- 切入角度:类比木偶戏——一个木偶师(编排器)在幕后根据剧情(任务状态)动态拉线操控各个木偶(Agent),学会拉紧有效的线、剪断无用的线。
- 核心 idea 一句话:将多 Agent 协作建模为马尔可夫决策过程,中心化编排器通过 REINFORCE 学习动态选择 Agent 激活序列,同时优化任务质量和推理效率。
方法详解¶
整体框架¶
系统由一组异构 Agent \(\mathcal{A} = \{(m, r, t)\}\)(模型 × 推理策略 × 工具集)和一个中心化编排器 \(\pi_\theta\) 组成。在每个时间步 \(t\),编排器观察全局状态 \(S_t\),选择一个 Agent \(a_t\) 激活,Agent 生成输出后更新系统状态。这个过程持续到满足终止条件。所有 Agent 的输出通过聚合函数生成最终答案。编排器通过 REINFORCE 在完成任务后根据奖励信号更新策略。
关键设计¶
- 中心化编排(Centralized Puppeteer)
- 做什么:将 Agent 选择从各 Agent 自主决策改为中心化编排器统一调度
- 核心思路:编排器 \(a_t \sim \pi(S_t, \tau)\) 根据全局状态和任务描述选择下一个激活的 Agent,Agent 只负责执行推理,不参与调度决策
-
设计动机:去中心化的 Agent 自主选择协作者在 Agent 数量增加时引入二次方的协调开销。中心化编排将 Agent 选择与 Agent 内部行为解耦,大幅提升可扩展性
-
序列化编排(Serialized Orchestration)
- 做什么:将图结构的协作拓扑"展开"为时序决策序列
- 核心思路:不在整个拓扑空间中搜索,而是将编排过程建模为序列决策 \(a_0 \to a_1 \to \ldots \to a_T\)。关键洞察是序列可以通过"折叠"还原为有向图(Agent 为节点、编排顺序为边),支持环形结构和分支连接
-
设计动机:高维图拓扑空间的组合爆炸使穷举搜索不可行。序列化后满足马尔可夫性质 \(\mathbb{P}(a_{t+1}|S_0,...,S_{t+1}) = \mathbb{P}(a_{t+1}|S_{t+1})\),可以直接用 RL 优化
-
自适应演化(Adaptive Evolution via RL)
- 做什么:通过 REINFORCE 持续优化编排器策略
- 核心思路:奖励设计兼顾质量和效率:\(R_t = r - \lambda \cdot C_T\)(终端)或 \(\gamma \cdot R_{t+1} - \lambda \cdot C_t\)(中间),其中 \(C_t = F \cdot \log(1 + t/\varphi)\) 是随步数增加的成本惩罚。\(\lambda\) 控制精度-效率权衡
-
设计动机:无成本惩罚时系统退化为传统大规模协作框架(性能可能更高但计算开销极大)。通过 RL 学习,编排器逐渐学会使用更紧凑的 Agent 序列
-
拓扑演化的涌现现象
- 做什么:分析编排器学习过程中协作拓扑的结构变化
- 核心思路:发现两个关键趋势——紧凑化(图密度增加,通信集中到少数 hub Agent)和环化(环形结构增多,支持反复验证和迭代精炼)
- 设计动机:这些涌现现象解释了为什么 Puppeteer 能同时提升效率和质量——不是简单地减少 Agent 数量,而是让 Agent 间形成更有效的反馈回路
损失函数 / 训练策略¶
- REINFORCE 的梯度估计:\(\nabla_\theta J(\theta) \approx \frac{1}{N} \sum_{n=1}^N (\sum_{t=1}^T \nabla_\theta \log \pi_\theta(a_t|S_t)) \cdot R(\tau)\)
- 编排器基于 Llama-3.1-Nemotron-70B-Reward 初始化
- 默认设置:episode 长度 4,并行探索 3,\(\lambda=0.1\),\(\gamma=0.99\)
实验关键数据¶
主实验(Titan 子空间)¶
| 方法 | GSM-Hard | MMLU-Pro | SRDD | CommonGen | 平均 |
|---|---|---|---|---|---|
| LLaMA-3.1-405B | 0.135 | 0.760 | 0.606 | 0.812 | 0.578 |
| GPT-4-Turbo | 0.275 | 0.680 | 0.624 | 0.763 | 0.586 |
| AFlow | 0.540 | 0.750 | 0.648 | 0.822 | 0.690 |
| MacNet | 0.291 | 0.480 | 0.423 | 0.882 | 0.519 |
| EvoAgent | 0.425 | 0.540 | 0.173 | 0.860 | 0.499 |
| Puppeteer (evolved) | 0.700 | 0.830 | 0.764 | 0.799 | 0.773 |
效率分析¶
| 指标 | 初始阶段 | 演化后 | 变化 |
|---|---|---|---|
| Titan 平均 token 消耗 | ~30K | ~15K | -50% |
| Titan 平均 Agent 数量 | ~3.5 | ~2.0 | -43% |
| Mimas 平均 Agent 数量 | ~3.5 | ~3.5 | 不变(小模型需要更多推理步骤) |
关键发现¶
- 性能和效率同时提升:Puppeteer evolved 在 Titan 上平均 0.773 vs 最强 baseline AFlow 0.690(+8.3%),同时 token 消耗减少 50%
- 异构 Agent > 单模型 Agent:Puppeteer(多模型)始终优于 Puppeteer-Mono(单模型),受益于异构 Agent 的互补性
- 大模型和小模型的演化策略不同:Titan 子空间通过减少 Agent 数量提效,Mimas 子空间通过选择低成本 Agent 提效(Agent 数量不变,因为小模型需要更长推理链)
- 拓扑从松散链式演化为紧凑环形:初始阶段多为不相交的链,演化后出现更多环形结构和交叉连接,支持更深层的内部反馈
亮点与洞察¶
- 序列化编排 + RL 是一个优雅的设计:绕过了图拓扑搜索的组合爆炸问题,将其转化为序列决策问题。这个思路可以迁移到任何需要动态组合模块的系统设计(如 MoE 路由、pipeline 优化)
- "同时提升性能和效率"打破了常见的 trade-off:关键在于奖励设计中的成本惩罚让编排器学会了"少即是多"——用更少但更精准的 Agent 调用实现更好的结果
- 环形拓扑的涌现是自然的"反思"机制:RL 自动发现了类似 Reflexion/Self-Refine 的反复验证模式,说明这种模式不需要手动设计,而是最优协作策略的自然结果
- Mimas vs Titan 的差异化演化策略:揭示了 Agent 能力对最优编排策略的影响——强 Agent 可以更快终止,弱 Agent 需要更多轮次但可以选择更便宜的
局限性 / 可改进方向¶
- episode 长度固定为 4,限制了处理更复杂任务的能力——应该让终止时间也由 RL 学习
- REINFORCE 方差大,样本效率低——可以用 PPO 或 Actor-Critic 方法改进
- 编排器作为独立模型引入了额外的推理成本(虽然远小于 Agent 本身的成本)
- 仅在 4 个 benchmark 上验证,缺乏更复杂的多步规划任务(如 WebArena、SWE-bench)
- 未探索 Agent 间的显式通信机制——当前 Agent 只通过全局状态间接交互
相关工作与启发¶
- vs MacNet: MacNet 使用静态 DAG 拓扑,Puppeteer 动态生成拓扑。MacNet 在 CommonGen 上很强(密集交互对创意任务有帮助),但在需要精准推理的 GSM-Hard 上很弱
- vs AFlow: AFlow 用 MCTS 优化单 Agent 工作流的代码表示,Puppeteer 优化多 Agent 的激活序列——不同层面的优化,可以组合
- vs EvoAgent: EvoAgent 用进化算法自动生成 Agent,但拓扑仍然是静态的;Puppeteer 的动态编排在所有任务上全面超越
评分¶
- 新颖性: ⭐⭐⭐⭐ 木偶师范式的提出和序列化编排的设计有创新性,但 RL 编排 Agent 的想法并非全新
- 实验充分度: ⭐⭐⭐⭐ 封闭域+开放域 4 个 benchmark,Titan+Mimas 两个 Agent 子空间,拓扑演化分析丰富
- 写作质量: ⭐⭐⭐⭐ 木偶戏比喻很形象,但公式和符号较多
- 价值: ⭐⭐⭐⭐⭐ 为多 Agent 系统的自动化组织设计提供了原则性的解决方案