跳转至

第七章:模式总览

前六章把旅游助手从一次 API 调用推到了 Agent Loop。 现在它能根据观察选下一步,但新的问题也出来了:

  • 输出看着对,实际有错。
  • 查一次资料不够。
  • 计划跟不上变化。
  • 一个 Agent 背太多职责。
  • 工具可以影响真实世界。

这些问题不能靠"换个更大的模型"解决。每个问题对应一族设计模式。

模式关系树

flowchart TD
  BASE["Agent Loop(ReAct 基线)"]

  subgraph REL["可靠性"]
    MC["Maker-Checker"]
    VOT["Voting"]
    COVE["CoVe"]
  end

  subgraph RET["检索 / 记忆 / 知识"]
    RAG["RAG"]
    RL["Retrieval Loop"]
    ARAG["Agentic RAG"]
    REF["Reflexion"]
    MEM["Agent Memory"]
    STM["STORM"]
  end

  subgraph PLAN["规划 / 搜索"]
    PS["Plan & Solve"]
    PER["Planner-Executor-Replanner"]
    REWOO["ReWOO"]
    LLC["LLM Compiler"]
    LATS["LATS"]
    SD["Self-Discovery"]
  end

  subgraph MA["多 Agent"]
    MW["Manager-Worker"]
    AAT["Agents-as-Tools"]
    HO["Handoff"]
    GC["Group Chat"]
    MAD["Multi-Agent Debate"]
    MAG["Magentic Orchestration"]
    SWM["Swarm / Blackboard"]
    GO["Graph Orchestration"]
  end

  subgraph SAFE["安全 / 评测"]
    POL["Policy"]
    GR["Guardrails"]
    HITL["HITL"]
    EVAL["Eval Harness"]
  end

  BASE --> REL
  BASE --> RET
  BASE --> PLAN
  BASE --> MA
  BASE --> SAFE

  MC -.->|"事实断言多"| COVE
  MC -.->|"随机方差大"| VOT
  RAG -->|"一次检索不够"| RL
  RL -->|"需要多种工具"| ARAG
  REF -.->|"失败经验"| MEM
  RAG -.->|"长报告"| STM
  ARAG -.->|"长报告"| STM

选模式的策略

不要按名字选。按下面三步走:

第一步:先跑 ReAct 基线

给 Agent Loop 加上工具,跑几轮真实任务。看它到底坏在哪里。

第二步:按失败加模式

你看到的失败 先加什么
输出像真的但有事实错误 Maker-Checker 或 CoVe
同一个问题答案不稳定 Voting
一次检索拿不到够用的资料 Retrieval Loop
检索要跟其他工具混用 Agentic RAG
同样的错误反复出现 Reflexion
要写长报告 STORM
计划过期 Planner-Executor-Replanner
工具有依赖可以并行 ReWOO 或 LLM Compiler
可选路径太多 LATS
一个 Agent 太杂 Manager-Worker / Handoff / Group Chat
工具影响真实世界 Policy + Guardrails + HITL

第三步:单 Agent 天花板没到之前,不上多 Agent

多 Agent 的协调开销远大于想象。在以下条件都满足之前不要拆:

  1. 单 Agent 已经到了 context 或能力上限。
  2. 职责可以清晰切分,没有共享状态纠缠。
  3. 你有办法 trace 和 debug 每个 Agent 的行为。

本章结构

模式族 页面
可靠性 Maker-Checker / Voting / CoVe
检索 / 记忆 / 知识 RAG / Retrieval Loop / Agentic RAG / Reflexion / Agent Memory / STORM
规划与搜索 Plan & Solve / PER / ReWOO / LLM Compiler / LATS / Self-Discovery
多 Agent Manager-Worker / Agents-as-Tools / Group Chat / Multi-Agent Debate / Handoff / Magentic Orchestration / Swarm / Blackboard / Graph Orchestration
安全与评测 Policy / Guardrails / HITL / Eval Harness

每个页面只做一件事:讲清楚它修什么失败、怎么跑、什么时候别用。

读法

如果你知道自己的失败,直接跳到对应模式。

如果不确定,按下面的顺序读:

  1. 可靠性三页(Maker-Checker → Voting → CoVe)——先确保输出能信。
  2. 检索 / 记忆 / 知识六页(RAG → Retrieval Loop → Agentic RAG → Reflexion → Agent Memory → STORM)——让 Agent 获取和记住外部信息。
  3. 规划与搜索六页(Plan & Solve → PER → ReWOO → LLM Compiler → LATS → Self-Discovery)——让 Agent 拆解和调度复杂任务。
  4. 多 Agent八页(Manager-Worker → Agents-as-Tools → Group Chat → Multi-Agent Debate → Handoff → Magentic Orchestration → Swarm / Blackboard → Graph Orchestration)——单 Agent 到了天花板再拆。
  5. 安全与评测四页(Policy → Guardrails → HITL → Eval Harness)——上线前必读。

不要一口气全读。一个模式跑通了再看下一个。