3. 架构设计
一句话理解:Agent Reflection 的架构可以概括为“生成器产出草稿,批判器发现问题,评估器量化质量,修订控制器驱动迭代,工作区保存中间产物,反思记忆沉淀经验”。
整体架构
核心组件职责
| 组件 | 职责 | 典型输入 | 典型输出 |
|---|---|---|---|
| Generator | 根据任务与反馈生成或修订答案 | task、history、critique | draft / revision |
| Critic | 检查 draft 的问题,输出结构化反馈 | draft、criteria、context | critique list |
| Evaluator | 把 critique 量化为分数或终止判定 | critique、metrics、thresholds | score / pass/fail |
| Revision Controller | 决定继续修订、终止还是升级人工 | score、iteration、policy | revise / terminate / escalate |
| Workspace | 保存多轮草稿、批判、评分与最终答案 | drafts、critiques、scores | versioned artifacts |
| Reflection Memory | 沉淀历史反思经验与通用规则 | critique、score、final | episodic / semantic / procedural memory |
| Policy | 定义反思策略、评分标准、终止条件 | business rules | criteria、thresholds、max_iter |
| Observer | 记录反思循环事件与 trace | all events | logs、metrics、traces |
| Human Gate | 人工兜底与审核入口 | escalation event | approval / 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 写入 |
控制面决定“什么时候反思、反思到什么程度”,数据面决定“具体怎么生成、怎么批判、怎么评分”。
控制流与数据流
控制流
Runtime → Revision Controller → Generator / Critic / Evaluator → Revision Controller → (iterate | terminate | escalate)数据流
Generator(draft) → Workspace → Critic(critique) → Evaluator(score) → Revision Controller(decision) → Workspace / MemoryWorkspace 设计
Workspace 是 Reflection 的“草稿纸”,需要保存:
{
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:独立服务
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 年的趋势是:内隐反思下沉到模型、状态层走向演化、控制器走向自适应与学习化。
参考来源
- Self-Refine: Iterative Refinement with Self-Feedback
- Reflexion: Self-Reflective Agents with Verbal Reinforcement Learning
- CRITIC: Large Language Models Can Self-Correct with Tool-Interactive Critiquing
- DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via RL
- A-Mem: Agentic Memory for LLM Agents
- Agentic Context Engineering: Evolving Contexts for Self-Improving LMs
- Self-Improvements in Modern Agentic Systems: A Survey
- Training-Free Inference-Time Self-Reflection and Cost-Bounded Early Stopping (EvoResearcher)
- Beyond Corrected Actions: Training LLM Agents on Textual Critiques (CAFT)
- LangGraph Reflection Tutorial
- AutoGen Reflection
- LangGraph Blog — Reflection Agents