Multi-Agent
多智能体协作多个 Agent 分工合作(如 PM Agent + Coder Agent + Reviewer Agent)。
详解
Multi-Agent 系统是把复杂任务拆分给多个专职 Agent 分工完成的架构。单个 Agent 的问题在于:上下文窗口有限,塞的工具和指令越多,注意力越分散,效果越差。把任务拆给多个专职 Agent,每个 Agent 只关注一件事、只拿必要的工具,整体质量反而更高。常见分工模式有三种:串行管道(A 完成交给 B,B 完成交给 C)、并行(多个 Agent 同时处理不同子任务,最后汇总)、主从(Orchestrator 分配,Worker 执行)。典型例子:写一篇技术文章——搜索 Agent 收集资料、写作 Agent 起草正文、审校 Agent 挑错、事实核查 Agent 验证数据。每个 Agent 的 system prompt 和工具集都完全不同,互不干扰。Multi-Agent 的代价是架构复杂度和调试难度上升——必须明确定义 Agent 之间的接口和上下文传递格式。
一个类比
像一个项目组:产品经理(PM Agent)定需求、程序员(Coder Agent)写代码、测试工程师(Reviewer Agent)找 bug。不会让一个人又当 PM 又写代码又测试——各司其职效率更高,而且换掉某一个人不影响其他人工作。
举个例子
技术文章生成 Multi-Agent 流程(三个专职 Agent 串行协作): Agent 1 — 研究员(系统提示:你是专业研究员,擅长搜集资料) 工具:[search, fetch_url] 输入:"量子计算应用场景" 输出:5 条关键资料摘要 Agent 2 — 写作者(系统提示:你是技术文章作者,擅长清晰表达) 工具:[](无需联网,专注写作) 输入:Agent 1 的 5 条资料摘要 输出:800 字技术文章草稿 Agent 3 — 审校(系统提示:你是严格的编辑,专门挑逻辑和表达问题) 工具:[](专注审查) 输入:Agent 2 的草稿 输出:修订意见 + 最终版本 关键设计原则: 每个 Agent 只有完成自己任务所需的工具 Agent 之间传递结构化数据(而非整段对话历史) 失败时可以只重跑某一个 Agent,不影响其他阶段
PYTHON 示例
相关概念
- → Orchestrator / Supervisor· 编排者
- → Handoff· 任务交接