第 3 章 Agent 架构与多智能体

感知-决策-行动-记忆闭环 · ReAct/Reflexion/规划 · Anthropic 五模式 · 多智能体协作与框架对比

Agent 与单次 LLM 调用的本质区别是"循环 + 自主性":模型基于环境反馈在多轮中自我驱动,而非沿固定脚本执行。本章先讲单 Agent 的认知闭环与核心模式,再讲多智能体协作与主流框架。

5 单 Agent 架构

5.1 Agent 的认知闭环

一个被广泛接受的框架是四要素闭环:感知(接收指令、工具返回、环境观测)→ 决策/推理(推理与规划下一步)→ 行动(调用工具改变环境或取信息)→ 记忆(跨步骤/会话存取)。Anthropic《Building Effective Agents》给出更工程化的起点:Agent 的基础构件是被检索、工具、记忆三类能力增强的"增强型 LLM"。

感知 Perception 指令 + 观测 决策 LLM 推理 + 规划 行动 Action 工具/代码/检索 环境 / Observation 真实反馈 环境反馈闭环 记忆 Memory 短期上下文 ↔ 长期(向量库/MemGPT) 反思/重规划 (Reflexion)
图 3.1 Agent 认知闭环:感知-决策-行动-记忆 + 反思

5.2 核心模式

ReAct(推理+行动交织)是单 Agent 基石,今天多数"工具调用 Agent"在控制流上都是其变体。Reflexion用语言反思失败并写入记忆(HumanEval 91% pass@1,超当时 GPT-4 基线 80%)。Plan-and-Solve先规划再分步,缓解 Zero-shot-CoT 的"漏步"。Self-Reflection/Critique是"生成→评判→改写"的内循环(对应下文 evaluator-optimizer 模式)。

模式核心机制解决的问题需外部反馈典型适用
ReAct思考-行动交替循环推理脱离环境、幻觉是(环境观测)工具调用、检索问答、交互决策
Reflexion失败后口头反思+写记忆无法从试错中学习是(成败信号)可多次重试的编码、序列决策
Plan-and-Solve先规划全局再分步推理漏步、缺全局观可预先分解的多步推理
Self-Critique生成-评判-修订内循环单次输出质量不足否/可外评写作润色、答案精修、代码 review

5.3 记忆与规划

短期记忆= 上下文窗口;长期记忆常用向量库 + 检索(RAG 式)。Generative Agents(Park 2023)的"memory stream + 反思 + 检索"按近因/重要性/相关性加权召回,并定期把零散记忆综合为高层反思MemGPT 借鉴操作系统的分层/虚拟内存,在有限上下文与外部存储间自主分页,突破窗口物理限制。规划谱系:分解、先规划后执行(PS) vs 交错式(ReAct)、搜索式(ToT)、反思驱动的重规划。

5.4 Anthropic《Building Effective Agents》:Workflows vs Agents

核心立场:"最成功的实现往往用简单、可组合的模式,而非复杂框架。"关键区分:Workflows(LLM 与工具按预定义代码路径编排,可预测)vs Agents(LLM 动态自主决定流程与工具)。五种常见模式:

  1. Prompt chaining:固定子步骤序列,可在中间加程序化"gate"。
  2. Routing:先分类再分发到专门处理(如简单问题路由到小模型、难题到大模型)。
  3. Parallelization:Sectioning(拆独立子任务并行)/ Voting(同任务多跑取多样)。
  4. Orchestrator-workers:中心 LLM 动态拆解任务、分派 worker、再综合(子任务不预先定义)。
  5. Evaluator-optimizer:一个生成、一个评估反馈,循环迭代。

三条原则:保持简单、保持透明(展示规划步骤)、精心设计 agent-computer interface(ACI)

用户任务 Orchestrator(中心 LLM) 动态拆解 → 分派 → 综合 Worker 1+工具 Worker 2+工具 Worker N+工具 Synthesizer 汇总 → 最终答案 子任务数量不预先定义,由 Orchestrator 按输入动态生成
图 3.2 Orchestrator-workers 模式(与 Parallelization 的区别:子任务动态生成)

6 多智能体与框架

当单 Agent 难以胜任、任务含多角色协作、需多视角辩论、或需"专家分工"分散上下文负担时,多智能体系统(MAS)成为选项;代价是更高复杂度、成本与协调开销,并非默认更优。

6.1 代表性多智能体系统

AutoGen(Microsoft):可对话、可定制 Agent 相互交谈完成任务的通用框架。CAMEL:role-playing + inception prompting 驱动两 Agent 自主协作。MetaGPT:把 SOP 编码进提示、以"流水线"分配产品/架构/工程等角色,抑制级联幻觉ChatDev:沿瀑布模型用 chat chain + 沟通式去幻觉协作开发软件。Mixture-of-Agents分层聚合——每层多个 Agent 把上一层全部输出作为辅助再生成;仅用开源模型即在 AlpacaEval 2.0 达 65.1%,超过 GPT-4 Omni 的 57.5%。

6.2 辩论 vs 投票:一场未定论的争议

多智能体辩论(Du et al., 2023,"society of minds")让多个实例多轮辩论收敛共识,提升推理与事实性。但 ICML 2024 的《Should we be going MAD?》给出审慎结论:当前形态的辩论并不可靠地优于 self-consistency / 集成等更简单基线,且对超参更敏感、更难优化。启示:引入"辩论"这类昂贵机制前,先用投票/自一致性作强基线对照、按数据实测收益。(本主题在小模型 Agent 中有进一步的"编排器主导"证据。)

6.3 主流框架对比

许可证以各项目公开仓库为准(截至 2026 年中)。

框架出品方编程模型控制粒度适用场景许可
LangGraphLangChain显式有状态图(节点/边/状态,支持循环分支)极细:可精确编排、HITL、断点续跑可控、可持久化的复杂工作流(生产)MIT
LlamaIndexLlamaIndex数据/检索为中心的事件驱动 Workflows中:围绕 RAG 编排知识密集、RAG over 私有数据MIT
AutoGenMicrosoft对话式多智能体(异步事件架构 v0.4+)中:对话/group chat,偏涌现式多智能体协作、代码生成、研究原型MIT
CrewAICrewAI角色化团队(Crew=Agents+Tasks)+Flows中→细:声明式 + Flows 细控快速搭"角色分工"业务流程MIT
smolagentsHugging Face极简 code-as-action(直接写并跑 Python)粗→中:抽象少、轻量轻量工具 Agent、教学、本地小模型Apache-2.0
OpenAI Agents SDKOpenAIAgents + Handoffs + Guardrails + Sessions中:以"移交"路由,内置追踪生产级多 Agent、OpenAI 生态MIT

选型直觉:要最强可控/可观测 → LangGraph;RAG 为主 → LlamaIndex;对话式多智能体 → AutoGen;声明式角色团队 → CrewAI;极简/本地模型 → smolagents;OpenAI 生态 → Agents SDK。呼应 Anthropic 告诫:先用 API 直接实现,确有必要再上框架。

关键论文 / 资源(已核实)

  1. ReAct (Yao et al., 2022) 2210.03629 | Reflexion (Shinn et al., 2023) 2303.11366 | Plan-and-Solve (Zhou et al., 2023) 2305.04091
  2. Generative Agents (Park et al., 2023) 2304.03442 | Voyager (Wang et al., 2023) 2305.16291 | MemGPT (Packer et al., 2023) 2310.08560
  3. Building Effective Agents (Anthropic) 官方
  4. AutoGen 2308.08155 | MetaGPT 2308.00352 | CAMEL 2303.17760 | ChatDev 2307.07924
  5. Mixture-of-Agents 2406.04692 | Multiagent Debate (Du et al., 2023) 2305.14325 | Should we be going MAD? 2311.17371
← 推理与工具 / MCP 下一章:评测、系统与安全 →