Skip to content

3. 架构设计 ​

一句话理解:Agent Reflection 的架构可以概括为“生成器产出草稿,批判器发现问题,评估器量化质量,修订控制器驱动迭代,工作区保存中间产物,反思记忆沉淀经验”。

整体架构 ​

核心组件职责 ​

组件职责典型输入典型输出
Generator根据任务与反馈生成或修订答案task、history、critiquedraft / revision
Critic检查 draft 的问题,输出结构化反馈draft、criteria、contextcritique list
Evaluator把 critique 量化为分数或终止判定critique、metrics、thresholdsscore / pass/fail
Revision Controller决定继续修订、终止还是升级人工score、iteration、policyrevise / terminate / escalate
Workspace保存多轮草稿、批判、评分与最终答案drafts、critiques、scoresversioned artifacts
Reflection Memory沉淀历史反思经验与通用规则critique、score、finalepisodic / semantic / procedural memory
Policy定义反思策略、评分标准、终止条件business rulescriteria、thresholds、max_iter
Observer记录反思循环事件与 traceall eventslogs、metrics、traces
Human Gate人工兜底与审核入口escalation eventapproval / correction / rejection

分层职责 ​

层级职责典型组件
接入层接收 Runtime 的反思请求,返回最终结果Runtime API、Gateway
编排层控制循环节奏、终止判定、人工升级Revision Controller、Policy
执行层实际执行生成、批判、评估Generator、Critic、Evaluator
状态层保存草稿版本与反思记忆Workspace、Reflection Memory
可观测层记录 trace、metrics、审计、人工兜底Observer、Human Gate

控制面 vs 数据面 ​

维度控制面数据面
职责策略、评分标准、终止条件、人工升级规则生成、批判、评分、修订、记忆写入
状态长期配置、策略版本会话级草稿与历史版本
扩展策略中心、配置管理水平扩展 Generator/Critic/Evaluator worker
示例“代码必须零 warning 才能终止”“最大迭代 3 次”一次 critique 调用、一次 draft 写入

控制面决定“什么时候反思、反思到什么程度”,数据面决定“具体怎么生成、怎么批判、怎么评分”。

控制流与数据流 ​

控制流 ​

text
Runtime → Revision Controller → Generator / Critic / Evaluator → Revision Controller → (iterate | terminate | escalate)

数据流 ​

text
Generator(draft) → Workspace → Critic(critique) → Evaluator(score) → Revision Controller(decision) → Workspace / Memory

Workspace 设计 ​

Workspace 是 Reflection 的“草稿纸”,需要保存:

text
{
  task: "...",
  versions: [
    { id: 1, draft: "...", critique: "...", score: 0.4, revised_from: null },
    { id: 2, draft: "...", critique: "LGTM", score: 1.0, revised_from: 1 }
  ],
  final_version: 2,
  termination_reason: "score >= threshold"
}

Workspace 可以是内存对象、数据库记录、对象存储文件或向量数据库中的 trace。

Reflection Memory 设计 ​

Reflection Memory 与 Agent Memory 的关系:

Reflection Memory 可以把以下信息写入 Agent Memory:

  • Episodic:本次任务的失败模式与修复方式。
  • Semantic:用户或业务领域的通用偏好与约束。
  • Procedural:改进后的检查清单、Critic prompt 模板。

与 Runtime、Memory、Multi-Agent 的集成 ​

与 Runtime 集成 ​

Runtime 负责:

  • 在关键节点调用 Reflection。
  • 把工具结果、用户反馈传给 Reflection。
  • 处理 Reflection 返回的修订结果或升级事件。

与 Memory 集成 ​

Runtime 在 Reflection 结束后把关键经验写入 Memory;Memory 在后续任务中为 Generator 和 Critic 提供历史上下文。

与 Multi-Agent 集成 ​

在 Multi-Agent 场景中,Reflection 可以是:

  • 个体反思:每个 Agent 内部有自己的 Reflection Layer。
  • 群体反思:一个专门的 Critic Agent 或多个 Reviewer Agent 对其他 Agent 的输出进行批判。

部署形态 ​

形态 1:库 / SDK ​

业务进程直接 import reflection 库,调用 reflect(draft)。

优点:低延迟、易集成。 缺点:策略与状态分散,难以跨进程共享。

形态 2:独立服务 ​

text
Agent Runtime → Reflection Service → LLM Gateway
                           ↓
                    Reflection Memory / Workspace

优点:集中管理策略、可扩展、可观测统一。 缺点:多一跳网络延迟。

形态 3:Sidecar ​

与 Runtime 进程一起部署,适合高隔离、多租户场景。

形态 4:Serverless / 托管 ​

使用云厂商或框架提供的托管 Reflection 能力,例如 LangGraph Cloud、AutoGen 托管运行时。

2025-2026 架构演进趋势 ​

reasoning models 与 agentic memory 成熟后,Reflection 架构出现了三个值得注意的演进方向:

1. 内隐反思下沉,显式循环“瘦身” ​

DeepSeek-R1 之后,Generator / Critic 的底层模型普遍自带长链自我验证能力。架构上表现为:显式 Critic 轮次减少(甚至只在工具验证失败时触发),Revision Controller 从“固定 N 轮循环”变为事件驱动——由外部验证结果(编译失败、测试红灯、检索矛盾)触发反思,而非无条件每轮批判。

2. 状态层从“记录”走向“演化” ​

传统 Reflection Memory 是只追加的日志;A-Mem(NeurIPS 2025)与 ACE(2025-10)把它升级为会生长的状态:记忆条目会被后续反思更新摘要、重建链接、合并淘汰。Workspace 与 Reflection Memory 的边界随之模糊——两者共同构成一份“演化中的 playbook”,控制器读写的是同一份结构化上下文。

3. 控制器走向自适应与学习化 ​

固定 threshold + max_iter 的策略正在被自适应策略补充:根据任务类型、模型置信度、历史收敛曲线动态分配“反思预算”(哪一步该反思、花多少 token 反思)。学术侧则出现直接训练反思策略的工作(如长程反思训练的 AREX-2、从轨迹反思构建启发式池的 ERL),让反思策略本身成为可学习的对象,而不是手写规则。

2026 年下半年,这两条路线都有了具体的落地参照:

  • 训练无关的有界反思:EvoResearcher(2026-08,arXiv:2608.18884)在单个冻结模型上实现推理时“生成—自批判—修订”循环,用批判输出的 "CONFIRMED" 哨兵做隐式提前终止;在 BBH/GSM8K/MATH 上 82~88% 的样本在等精度(95% Wilson 区间内)的情况下提前结束,平均每题约 2.1 次生成——不训练模型也能拿到“有预算的反思”。
  • 批判文本作为训练信号:CAFT(2026-10,arXiv:2610.19367)让专家在轨迹上为每个错误动作同时给出修正动作和自然语言批判,用“批判增强监督”微调学生 agent,比只蒸馏修正动作平均高 8%,且 CAFT checkpoint 是更好的 RL 冷启动点。反思控制器由此从“手写 if-else”走向“可学习的预算分配器”。

本章小结 ​

Agent Reflection 的架构核心是“生成—批判—评估—修订”的闭环。Generator、Critic、Evaluator 是执行层,Revision Controller 和 Policy 是编排层,Workspace 和 Reflection Memory 是状态层,Observer 和 Human Gate 是可观测与兜底层。控制面负责策略与终止条件,数据面负责高并发的生成与批判。部署形态可以是库、独立服务、Sidecar 或托管,选择取决于延迟、隔离和可扩展需求。2025-2026 年的趋势是:内隐反思下沉到模型、状态层走向演化、控制器走向自适应与学习化。

参考来源

Released under CC-BY-SA-4.0 License.