引言

如果你搜索"AI Agent 架构模式",会看到 ReAct、Multi-Agent、Graph、RAG、MCP 等各种概念被混在一起讨论。但很少有人指出一个关键问题:它们并不属于同一维度。

把 ReAct 和 MCP 放在同一张表里对比,就像把"发动机排量"和"车身颜色"放在一行 — 它们描述的是 Agent 的不同侧面。

这篇文章基于 Andrew Ng(2024)、Lilian Weng、LangGraph 官方文档等权威来源,提出一个四维度分类框架,将 Agent 模式拆解为:

  • 推理模式 — Agent 怎么"想"
  • 能力模式 — Agent 能"做什么"
  • 编排模式 — 多个 Agent 怎么"协作"
  • 基础设施 — Agent 怎么"连接外部世界"

最终你会看到:一个完整的 Agent 系统 = 推理 × 能力 × 编排 × 基础设施。


一、四维度分类总览

graph TB
    subgraph AgentInternal[Agent 内部]
        R[推理模式 Reasoning<br>怎么想?]
        C[能力模式 Capability<br>能做什么?]
        R -->|drives| C
    end
    subgraph SystemLevel[系统层面]
        O[编排模式 Orchestration<br>怎么协作?]
        I[基础设施 Infrastructure<br>怎么连接?]
        O -->|uses| I
    end
    C -->|coordinates| O
    R -->|selects| O
维度 回答的问题 模式 理论来源
推理模式 Agent 内部如何组织思考? ReAct、Planner-Executor、Reflection Lilian Weng (2023), Yao et al.
能力模式 Agent 具备什么外部能力? Tool Calling、RAG、Agentic RAG Andrew Ng (2024), Lewis et al.
编排模式 多个步骤/Agent 如何协调? Graph、Multi-Agent、Hierarchical LangGraph, AutoGen, CrewAI
基础设施 Agent 如何标准化连接工具? MCP Anthropic (2024)

💡 Andrew Ng 在 2024 年提出的四大 Agentic Design Pattern — Reflection、Tool Use、Planning、Multi-Agent — 正好对应了本文的推理模式(Planning + Reflection)、能力模式(Tool Use)和编排模式(Multi-Agent)。这从侧面验证了该分类框架的合理性。


二、维度一 — 推理模式(Agent 怎么"想")

推理模式定义了 Agent 的内部认知循环:面对一个任务,Agent 如何组织思考、决定行动、处理反馈。

Lilian Weng 在其经典文章《LLM-powered Autonomous Agents》中将 Agent 的核心组件归纳为 Planning、Memory、Tool Use、Action,其中 Planning(规划)就是推理模式的核心。

2.1 ReAct — 边想边做

核心思想:推理与行动交替进行,每一步都"先想再做"。

由 Yao et al. (2022) 提出,是最经典的 Agent 推理模式。

flowchart LR
    Q[User Query] --> T[Thought 推理]
    T --> A[Action 行动]
    A --> O[Observation 观察]
    O -.->|4| T
    T -->|5| Ans[Answer 回答]

适用场景:简单工具调用、单轮问答、步骤较少的任务

优点:实现简单(几十行代码)、推理透明可调试

缺点:长链条容易迷失(Lost in the Middle)、缺乏全局规划、Token 随步骤线性增长


2.2 Planner-Executor — 先想清楚再做

核心思想:将规划与执行分离,先制定完整计划,再逐步执行。

flowchart TB
    U[User Task] --> P[Planner 制定计划]
    P --> S1[Step 1]
    S1 --> S2[Step 2]
    S2 --> S3[Step 3]
    S3 --> S4[...]
    S4 --> Out[Output 汇总结果]

适用场景:多步骤任务(5+ 步骤)、软件开发、数据处理流水线

优点:全局视角、Planner/Executor 可用不同模型(省钱)、可复用执行结果

缺点:规划阶段无法预见执行问题、执行失败需重新规划、两阶段缺乏动态交互


2.3 Reflection — 做完再反思

核心思想:Agent 生成结果后,通过自我评估发现不足并修正。

由 Shinn et al. (2023) 在 Reflexion 中形式化,Agent 维护一个失败经验记忆池,避免重复犯错。

flowchart TB
    Agent[Agent 生成] --> Critic[Critic 评估]
    Critic -->|pass| Output[Output 最终输出]
    Critic -.->|feedback| Agent
    Agent -->|log failures| Memory[Memory 失败经验]
    Memory -.->|avoid| Agent

适用场景:代码生成、内容创作、数学推理等需要质量把控的场景

优点:输出质量显著提升(15-30%)、可积累经验、与 ReAct/Planner 正交组合

缺点:Token 消耗 2-3 倍、弱模型可能"越改越差"、延迟增加


推理模式对比

维度 ReAct Planner-Executor Reflection
认知风格 直觉型(边做边想) 计划型(谋定后动) 复盘型(做完改进)
步骤数 少(1-5步) 中(5-15步) 可变(迭代)
全局视野
Token 效率
可组合性 可叠加 Reflection 可叠加 Reflection 可叠加任何推理模式
适合模型 任何模型 需要较强规划能力 需要较强自我评估能力

💡 选型建议:简单任务用 ReAct;复杂任务用 Planner-Executor;对质量要求高时叠加 Reflection。三者可以自由组合:Planner-Executor + Reflection 是最常见的高质量组合。


三、维度二 — 能力模式(Agent 能"做什么")

能力模式定义了 Agent 除了纯语言生成之外,还能与外部世界交互的方式。

Andrew Ng 在 2024 年的演讲中特别强调:Tool Use 是 Agentic 的核心能力,是区分"Chat"和"Agent"的关键分界线。

3.1 Tool Calling — 调用外部工具

核心思想:LLM 通过 Function Calling 将自然语言意图转化为结构化的 API 调用。

用户: 帮我查北京到上海的机票

LLM 输出:
{
  "function": "search_flights",
  "arguments": {"origin": "北京", "destination": "上海", "date": "2026-05-10"}
}

工具返回 → LLM 生成自然语言回复

所有主流模型(OpenAI、Anthropic、Google)都原生支持。

适用场景:对话式助手、API 编排、企业内部系统的自然语言入口

优点:原生支持、JSON Schema 标准化、是其他所有能力的基础

缺点:工具 >20 个时选择准确率下降、复杂参数组合容易出错


3.2 RAG — 检索增强生成

核心思想:生成回答前先从知识库检索相关文档,注入上下文。

由 Lewis et al. (2020) 在 RAG 论文中提出。

flowchart LR
    Q[User Query] --> E[Embedding 向量化]
    E --> V[(Vector DB 向量数据库)]
    V -->|Top-K docs| Aug[Augment 拼接上下文]
    Q -.->|query| Aug
    Aug --> LLM[LLM 生成回答]

适用场景:知识问答、客服系统、合规审查

优点:解决知识过时和幻觉问题、来源可追溯、成熟度高

缺点:检索质量决定回答质量、固定流水线无法按需调整、多轮上下文管理复杂


3.3 Agentic RAG — 自主检索决策

核心思想:让 Agent 自主决定何时检索、检索什么、是否需要再次检索,打破固定流水线。

flowchart TB
    Agent[Agent<br>ReAct 推理] -->|检索 1| DB[(Vector DB 知识库)]
    DB -->|docs A| Agent
    Agent -->|检索 2| DB
    DB -->|docs B| Agent
    Agent -->|检索 3| DB
    DB -->|docs C| Agent
    Agent -->|done| Out[Output 综合报告]

Agentic RAG 本质上是 RAG 能力 + ReAct 推理的组合。

适用场景:复杂研究问题、深度分析报告、需要多源交叉验证的场景

优点:检索更精准、支持多轮迭代检索、可处理多跳推理

缺点:延迟高(多轮检索 + 多次 LLM 调用)、Token 消耗大、实现复杂


能力模式对比

维度 Tool Calling RAG Agentic RAG
能力类型 行动能力(Act) 知识能力(Know) 知识 + 推理能力
交互方式 调用 API 检索文档 自主决定检索策略
主动性 被动(用户触发) 被动(固定流水线) 主动(Agent 决策)
Token 效率
实现复杂度
依赖的推理模式 无(直接调用) 无(固定流程) 需要 ReAct 或类似推理

💡 关键洞察:Tool Calling 是"做事"的能力,RAG 是"知道"的能力。Agentic RAG 不是 RAG 的替代品,而是 RAG + 推理模式的组合体。这就是为什么说"它们不属于同一维度" — Agentic RAG 跨越了能力和推理两个维度。


四、维度三 — 编排模式(多 Agent 怎么"协作")

编排模式定义了当系统中有多个 Agent 或多个步骤时,它们之间的协调和组织方式。

LangGraph 官方文档将编排模式分为三大类:单 Agent 工作流多 Agent 协作层级式管理

4.1 Graph 模式 — 图结构编排

核心思想:用有向图定义整个执行流程,节点是 Agent/函数,边是流转规则。

Graph 本质上是一个有限状态机(FSM),支持循环、分支、并行、汇合等所有控制流。

flowchart TB
    U[User Query] --> P[Planner]
    P --> C[Coder]
    C --> T[Test Runner]
    T -->|Pass| R[Reviewer]
    T -->|Fail| C
    R -->|Approve| Out[Output]
    R -->|Need Fix| C

核心概念:Node(节点)、Edge(边)、Conditional Edge(条件边)、State(共享状态)

适用场景:任何需要条件分支和循环的复杂工作流

优点:最灵活的编排方式、状态统一管理、可调试、其他模式都可以用 Graph 实现

缺点:学习曲线陡峭、简单场景过度设计

💡 Graph 的特殊地位:Graph 是编排模式的"基础设施层"。Multi-Agent 和 Hierarchical 都可以用 Graph 来实现。但它本身也是一个独立的编排模式 — 当你的流程需要循环和条件分支时,即使只有一个 Agent,Graph 也是最佳选择。


4.2 Multi-Agent 协作 — 多角色协同

核心思想:多个 Agent 扮演不同角色,通过消息传递协同完成任务。

flowchart TB
    subgraph Division[分工型]
        Planner[Planner] --> FE[Frontend]
        Planner --> BE[Backend]
        Planner --> DBA[DBA]
        FE --> Reviewer[Reviewer]
        BE --> Reviewer
        DBA --> Reviewer
    end

    subgraph Manager[管理型]
        M[Manager] --> W1[Worker 1 搜索]
        M --> W2[Worker 2 分析]
        M --> W3[Worker 3 撰写]
    end

    subgraph Debate[辩论型]
        A[Agent A 正方] --> J[Judge 裁决]
        B[Agent B 反方] --> J
    end

适用场景:需要多种专业能力的复杂任务

优点:突破单 Agent 能力天花板、可并行、角色清晰

缺点:Token 消耗 N 倍、协调开销大、调试困难


4.3 Hierarchical Agent — 层级式管理

核心思想:树状层级组织 Agent,上层决策下层执行。

flowchart TB
    CEO[CEO Agent] --> CTO[CTO]
    CEO --> CMO[CMO]
    CEO --> COO[COO]
    CTO --> Dev[Dev Lead]
    CTO --> Ops[Ops Lead]
    Dev --> Coder[Coder]
    Dev --> Tester[Tester]

适用场景:企业级 Agent 系统、大型项目自动化、需要多层级管理的场景

优点:可扩展性极强、关注点分离、故障隔离

缺点:设计复杂度最高、层级通信开销大、调试极其困难


编排模式对比

维度 Graph Multi-Agent Hierarchical
编排粒度 步骤级 Agent 级 组织级
控制流 任意(分支/循环/并行) 取决于子模式 树状层级
复杂度 ⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
可扩展性 极高
团队规模要求 3+ 人 3+ 人 5+ 人
与推理模式关系 可编排任何推理模式 每个 Agent 可用不同推理模式 每层可用不同推理模式
典型框架 LangGraph CrewAI, AutoGen LangGraph, AutoGen

💡 三者的关系:Hierarchical 是 Multi-Agent 的特例(层级式分工)。Graph 可以实现 Multi-Agent 和 Hierarchical,但 Graph 也独立适用于单 Agent 的复杂工作流。三者是递进关系:Graph → Multi-Agent → Hierarchical,复杂度逐级递增。


五、维度四 — 基础设施(Agent 怎么"连接")

5.1 MCP — 标准化工具协议

核心思想:定义一套标准化的 Agent-工具通信协议,实现工具的即插即用。

由 Anthropic 于 2024 年底提出,被称为 “AI 的 USB 接口”

flowchart LR
    Agent[Agent Client] <-->|MCP| Proto{{MCP Protocol}}
    Proto --> S1[MCP Server 1<br>文件系统]
    Proto --> S2[MCP Server 2<br>数据库]
    Proto --> S3[MCP Server 3<br>API]

三种核心能力:Tool(可调用的工具)、Resource(可读取的数据源)、Prompt(可复用的提示模板)。

适用场景:工具生态建设、跨平台集成、企业级 Agent

优点:工具与 Agent 解耦、支持动态发现、社区生态快速增长(Cursor、OpenClaw 已支持)

缺点:协议仍在快速迭代、额外抽象层带来开销、调试复杂度高


MCP 与其他维度的关系

MCP 是跨维度的基础设施:

flowchart LR
    subgraph 推理模式
        R[ReAct / Planner]
    end
    subgraph 能力模式
        T[Tool Calling / RAG]
    end
    subgraph 编排模式
        M[Multi-Agent / Graph]
    end
    R -->|调用| T
    T -->|通过| M
    subgraph 基础设施
        MCP[MCP 协议]
    end
    T -.->|标准化| MCP
    M -.->|共享| MCP

这也是为什么不能把 MCP 和 ReAct 放在同一维度对比 — MCP 是底层的连接协议,其他模式是上层的架构模式


六、全维度对比矩阵

以下矩阵按四个维度组织,每个维度内部的对比才有意义:

推理模式对比

维度 ReAct Planner-Executor Reflection
实现复杂度 ⭐⭐ ⭐⭐
Token 消耗
延迟
全局规划能力
输出质量
可叠加组合

能力模式对比

维度 Tool Calling RAG Agentic RAG
实现复杂度 ⭐⭐ ⭐⭐⭐
Token 消耗
延迟
知识覆盖 静态 动态
主动性 被动 被动 主动

编排模式对比

维度 Graph Multi-Agent Hierarchical
实现复杂度 ⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐⭐⭐
Token 消耗 可变 极高
延迟 可变 极高
可扩展性 极高
可调试性 极低

七、选型决策树

基于四维度框架,选型不再是"选一个模式",而是每个维度选一个模式,然后组合

第一步:选择推理模式

你的任务需要多步推理吗?
├─ 否 → 直接用 LLM(不需要 Agent)
└─ 是 → 需要全局规划吗?
         ├─ 否,边做边想就行 → ReAct
         └─ 是 → 对输出质量要求高吗?
                  ├─ 一般 → Planner-Executor
                  └─ 很高 → Planner-Executor + Reflection

第二步:选择能力模式

Agent 需要哪些外部能力?(可多选)
├─ 调用 API / 执行操作 → Tool Calling
├─ 查询知识库 → 简单查询用 RAG,复杂多跳查询用 Agentic RAG
└─ 都不需要 → 纯语言生成

第三步:选择编排模式

有多少个 Agent / 步骤?
├─ 1个 Agent → 需要循环/条件分支吗?
│              ├─ 否 → 不需要编排模式
│              └─ 是 → Graph
├─ 2-5个 Agent → 需要动态分工吗?
│                ├─ 否 → Graph 编排固定流程
│                └─ 是 → Multi-Agent(分工型)
└─ 5个以上 Agent → 是层级管理吗?
                   ├─ 是 → Hierarchical
                   └─ 否 → Multi-Agent(管理型)+ Graph

第四步:选择基础设施

工具数量 > 10 个,或需要跨平台复用吗?
├─ 是 → MCP
└─ 否 → 直接 Tool Calling 即可

八、组合配方

基于四维度框架,以下是经过验证的组合方案:

🥇 入门:ReAct + Tool Calling

推理: ReAct(边想边做)
能力: Tool Calling(3-10 个工具)
编排: 无(单 Agent)
基础设施: 无(直接 Function Calling)

适合: 个人助理、客服机器人
框架: LangChain + OpenAI

🥈 进阶:Planner-Executor + RAG + Reflection

推理: Planner-Executor(先规划后执行)+ Reflection(质量把关)
能力: Tool Calling + RAG(知识检索)
编排: 无或简单 Graph
基础设施: 无

适合: 代码生成平台、内容创作工具
框架: LangGraph + LlamaIndex

🥉 高级:Planner-Executor + Multi-Agent + MCP

推理: Planner-Executor + Reflection
能力: Tool Calling + Agentic RAG
编排: Multi-Agent(分工型)
基础设施: MCP

适合: AI 开发团队、企业级 Agent
框架: LangGraph + CrewAI + MCP SDK

🏆 终极:Graph + Hierarchical + Agentic RAG + MCP

推理: 各层不同(高层 Planner,低层 ReAct + Reflection)
能力: Tool Calling + Agentic RAG
编排: Graph + Hierarchical
基础设施: MCP

适合: 需要最高可靠性的生产系统
框架: LangGraph 全家桶

九、总结

核心观点 说明
模式不是同一维度 ReAct 是推理模式,MCP 是基础设施,不能放在同一张表里对比
Agent 架构是四维组合 推理 × 能力 × 编排 × 基础设施 = 完整的 Agent 架构
Graph 是编排的终极方案 但不是所有场景都需要 Graph
Agentic RAG 跨越两个维度 它是 RAG(能力)+ ReAct(推理)的组合体
从简单开始,按需叠加 先 ReAct + Tool Calling,验证可行后再加层

💡 一句话总结:不要问"该用 ReAct 还是 Graph",而要问"我的推理该用 ReAct 还是 Planner-Executor,编排该用 Graph 还是 Multi-Agent,能力需要 Tool Calling 还是 RAG"。这才是正确的选型思路。


参考资料

  • Andrew Ng, “Agentic Design Patterns”, DeepLearning.AI, 2024
  • Lilian Weng, “LLM-powered Autonomous Agents”, lil-log, 2023
  • Yao et al., “ReAct: Synergizing Reasoning and Acting in Language Models”, ICLR 2023
  • Shinn et al., “Reflexion: Language Agents with Verbal Reinforcement Learning”, NeurIPS 2023
  • Lewis et al., “Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks”, NeurIPS 2020
  • Anthropic, “Model Context Protocol (MCP) Specification”, 2024
  • LangGraph Documentation, “Agent Patterns: ReAct, Plan-and-Execute, Multi-Agent”, 2025
  • Microsoft, “AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation”, 2023
  • Liu et al., “Lost in the Middle: How Language Models Use Long Contexts”, 2023