相关论文
下面挑的是几篇最适合用来理解「Agent 编排」的代表性论文。它们不一定都直接使用 orchestration 这个词,但都对应了实际系统里最常见的编排范式。
1. ReAct: Synergizing Reasoning and Acting in Language Models
- 链接: https://arxiv.org/abs/2210.03629
- 关键词: 单 Agent、推理-行动交错、工具调用、循环编排
- 核心实现:
- Agent 以
Thought -> Action -> Observation的循环工作。 Thought负责内部规划与拆解,Action负责调用外部环境或工具,Observation把工具反馈写回上下文。- 整体是最经典的单 Agent 闭环编排结构,本质上是一个“状态机 + 工具反馈回路”。
- Agent 以
- 论文重点:
- 证明了推理和行动交替执行,比纯 CoT 或纯 Act 更稳。
- 特别适合需要搜索、检索、调用 API、与环境多轮交互的任务。
- 对编排的启发:
- 即使只有一个 Agent,编排方式也会极大影响效果。
- 单 Agent 不是“无编排”,而是把编排内化进 Agent 的 prompt loop 中。
2. Plan-and-Solve Prompting: Improving Zero-Shot Chain-of-Thought Reasoning by Large Language Models
- 链接: https://arxiv.org/abs/2305.04091
- 关键词: 先规划后执行、串行流水线、显式 plan
- 核心实现:
- 把任务拆成两个阶段:
Plan和Solve。 - 第一阶段先要求模型列步骤,第二阶段再按步骤求解。
- 虽然它本身更像 prompting 方法,但从系统角度看,就是最简单的两阶段编排。
- 把任务拆成两个阶段:
- 论文重点:
- 显式规划能降低漏步、跳步、直接瞎答的问题。
- 对复杂任务,先计划再执行往往比一口气生成更稳。
- 对编排的启发:
- 很多 Agent workflow 的本质,就是把这个两阶段结构进一步工程化。
- 可以把它看成
Planner -> Executor架构的最小原型。
3. AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation
- 链接: https://arxiv.org/abs/2308.08155
- 关键词: 多 Agent、会话编排、角色协作、对话式 orchestration
- 核心实现:
- 把系统拆成多个可对话的 Agent,例如
Assistant Agent、User Proxy Agent、工具代理等。 - 任务通过多 Agent 消息传递推进,而不是由一个 Agent 独立完成。
- 编排器本身相对轻,更多依赖角色定义、消息规则和终止条件。
- 把系统拆成多个可对话的 Agent,例如
- 论文重点:
- 用多 Agent 对话替代单一长 prompt,可以把复杂任务拆成多个可控职责。
- 工具调用、人类反馈、代码执行都能自然挂到会话流里。
- 对编排的启发:
- “消息传递”是多 Agent 编排里最自然的抽象。
- 适合需要反复讨论、验证、修正的任务,但成本会明显上升。
4. MetaGPT: Meta Programming for A Multi-Agent Collaborative Framework
- 链接: https://arxiv.org/abs/2308.00352
- 关键词: SOP、层级协作、软件团队模拟、流水线编排
- 核心实现:
- 通过产品经理、架构师、工程师、测试等角色,模拟软件团队协作。
- 使用 SOP 约束每个角色的输入、输出和交接物,形成比较固定的流水线。
- 本质是“角色分工 + 文档中间态 + 顺序交接”的多 Agent 装配线。
- 论文重点:
- 如果任务天然具有明确分工,角色化与文档化会比自由对话更稳定。
- 中间产物显式化,方便审计、复用和纠错。
- 对编排的启发:
- 多 Agent 不一定要靠自由聊天推进,也可以靠强流程约束推进。
- 这类结构特别适合工程任务、长流程任务、文档驱动任务。
5. CAMEL: Communicative Agents for "Mind" Exploration of Large Language Model Society
- 链接: https://arxiv.org/abs/2303.17760
- 关键词: 角色扮演、多 Agent 对话、自组织协作
- 核心实现:
- 用 inception prompt 给不同 Agent 赋予角色与目标。
- 让 Agent 通过对话达成任务,而不是由中心规划器严格调度。
- 编排偏弱中心化,更接近“协议驱动”的协作。
- 论文重点:
- 说明了仅靠角色和通信协议,就能涌现出一定协作能力。
- 同时也暴露了多 Agent 系统里常见的漂移、循环和一致性问题。
- 对编排的启发:
- 当编排规则较弱时,系统更灵活,但更难控。
- 对开放式任务友好,对高确定性任务不够稳。
6. AgentVerse: Facilitating Multi-Agent Collaboration and Exploring Emergent Behaviors
- 链接: https://arxiv.org/abs/2308.10848
- 关键词: 多 Agent 框架、协作环境、任务分解、通信机制
- 核心实现:
- 强调把 Agent、环境、任务、通信协议解耦。
- 支持不同协作模式,例如辩论、合作求解、角色分工。
- 更像一个研究多 Agent 编排模式的实验平台。
- 论文重点:
- 多 Agent 性能不只取决于模型能力,还高度依赖通信结构和任务组织方式。
- 适合观察不同编排机制带来的行为差异。
- 对编排的启发:
- 编排不仅是“谁先做什么”,也是“谁能和谁说话、说什么、什么时候停”。
7. Generative Agents: Interactive Simulacra of Human Behavior
- 链接: https://arxiv.org/abs/2304.03442
- 关键词: 记忆流、计划层次、反思机制、单体 Agent 内部编排
- 核心实现:
- 维护长期记忆流,并在行动前做检索、总结、反思和计划。
- 计划分为高层日程与低层行动,形成层次化控制。
- 这是“单体 Agent 内部模块编排”的代表工作。
- 论文重点:
- Agent 的能力不只来自模型,还来自记忆检索、反思、计划模块的组合方式。
- 内部模块顺序不同,会直接改变行为质量。
- 对编排的启发:
- 即便不是多 Agent,内部也可以做模块化 orchestration。
- 很适合用于长期任务、状态持续任务、模拟环境任务。
8. AFlow: Automating Agentic Workflow Generation
- 链接: https://arxiv.org/abs/2410.10762
- 关键词: 自动工作流搜索、图式编排、workflow optimization
- 核心实现:
- 不再人工设计固定 Agent workflow,而是让系统自动搜索更优工作流结构。
- 编排对象从 prompt / role / tool 扩展到整个 workflow graph。
- 更接近“编排器自动生成编排器”。
- 论文重点:
- 说明 workflow design 本身已经成为性能瓶颈。
- 好的 Agent 系统,不只是模型强,还包括工作流结构被优化过。
- 对编排的启发:
- 未来编排会从“人工手写流程”走向“自动搜索和自动调优流程”。
- 这也是 agent engineering 里很值得关注的方向。
Agent编排方式
可以把 Agent 编排分成四类,从简单到复杂依次增强。
1. 单 Agent 闭环编排
典型代表: ReAct
结构:
用户任务 -> Agent -> Thought -> Action -> Observation -> 下一轮 Thought
特点:
- 只有一个 Agent。
- 编排逻辑体现在循环和状态转移里。
- 常与工具调用、RAG、环境交互结合。
适用场景:
- 检索问答
- API 调用
- 简单自动化
- 轻量级 coding agent
2. 规划-执行式编排
典型代表: Plan-and-Solve
结构:
用户任务 -> Planner -> 计划步骤 -> Executor -> 最终结果
扩展形态:
Planner -> Tool Executor -> CriticPlanner -> Multiple Executors -> Aggregator
特点:
- 先决定做什么,再决定怎么做。
- 把推理阶段和执行阶段显式拆开。
- 比单闭环更稳定,也更容易监控。
适用场景:
- 复杂推理
- 多步骤工具调用
- 流程比较明确的任务
3. 角色协作式多 Agent 编排
典型代表: AutoGen、CAMEL、AgentVerse
结构:
用户任务 -> 多个角色 Agent -> 消息传递 / 讨论 / 协作 -> 结果
常见角色:
- planner
- researcher
- coder
- critic / reviewer
- tool agent
- human proxy
特点:
- 通过消息交互推动任务前进。
- 编排的重点变成角色定义、通信协议、上下文共享和终止条件。
- 灵活度高,但管理复杂度也高。
适用场景:
- 开放式 research
- 代码生成与审查
- 需要讨论、辩论、互相验证的任务
4. 流水线 / 层级 / 图式编排
典型代表: MetaGPT、Generative Agents、AFlow
结构:
- 流水线:
PM -> Architect -> Engineer -> QA - 层级:
Manager -> Worker Agents - 图式:
节点(Agent/Tool/Memory) + 边(依赖/控制流)
特点:
- 不再只靠对话,而是通过明确的流程结构推进。
- 节点间输入输出更稳定,适合复用和治理。
- 图式编排可以表达分支、回路、并行、汇聚。
适用场景:
- 企业级 agent system
- 软件研发流水线
- 长任务和复杂任务
- 需要可观测性、审计性、可维护性的系统
一个更抽象的统一视角
无论是哪种形式,Agent 编排都可以拆成五个设计维度:
- 任务如何拆解: 单轮完成,还是先 plan 再执行
- 责任如何分配: 单 Agent,还是多角色分工
- 信息如何流动: 共享上下文、消息传递、文档交接、共享 memory
- 控制如何进行: 自由对话、中心调度、层级控制、图调度
- 何时停止: 达成目标、轮数上限、critic 验收、人类确认
这五个维度基本决定了一个 Agent 系统的表现。
Agent编排方式的优、劣势
1. 单 Agent 闭环
优点:
- 实现最简单
- 延迟和 token 成本最低
- 调试成本低
- 适合快速验证任务可行性
缺点:
- 容易在长任务中漂移
- 缺少显式分工,复杂任务容易过载
- 可观测性和可控性一般
一句话总结:
适合小而快的任务,不适合高复杂度协作任务。
2. 规划-执行
优点:
- 比直接生成更稳
- 复杂任务更不容易漏步骤
- 便于插入检查点和重试逻辑
缺点:
- 计划可能不准,后续全链路都会受影响
- 额外增加一步规划成本
- 如果执行环境变化快,静态计划可能过时
一句话总结:
是从 prompt engineering 走向真正 agent workflow 的第一步。
3. 多 Agent 对话协作
优点:
- 天然支持角色分工
- 适合开放式问题和探索式问题
- 可以让 agent 互相审查、纠错、补充
缺点:
- token 成本高
- 上下文同步难
- 容易出现重复讨论、空转、责任不清
- 终止条件不好设计时,系统会变得啰嗦或发散
一句话总结:
灵活但昂贵,适合高不确定性任务,不适合简单任务。
4. 流水线 / 层级 / 图式编排
优点:
- 结构最清晰
- 易于治理、监控、缓存和复用
- 适合长流程和生产环境
- 容易接入权限、审计、人工审批等企业机制
缺点:
- 设计成本最高
- 早期容易过度工程化
- 一旦流程写死,面对开放任务时灵活性不够
一句话总结:
最像真正的软件系统,适合落地,不适合一开始就重投入。
一个实用选型建议
如果从工程落地角度选型,可以按下面的路线升级:
- 先用单 Agent 闭环验证任务能不能做
- 再加入 Planner,变成规划-执行
- 当单体 Agent 负担过重时,再拆成多角色 Agent
- 当任务量、成本、审计、稳定性成为问题时,再上图式或层级编排
这个路线比一开始就堆多 Agent 更稳,因为大多数任务的首要瓶颈并不是“Agent 数量不够”,而是任务拆解、上下文管理和停止条件设计得不够好。
初步结论
- Agent 的性能差异,很多时候来自编排差异,而不只是模型差异。
- 单 Agent 与多 Agent 的核心区别,不是数量,而是控制流、信息流和职责分配的设计方式。
- 对大多数真实系统,最关键的不是“要不要多 Agent”,而是先明确:
- 任务是否需要显式规划
- 是否存在天然角色分工
- 是否需要可审计、可重试、可插人工审批
- 对 research / coding / workflow automation 这类任务,通常最有效的演化路径是:
- ReAct 式闭环
- Planner + Executor
- Critic / Reviewer
- 最后再扩展到层级或图式多 Agent