返回 Papers
AI 底层逻辑 / 经典论文

Reflexion / Self-Refine:Agent Feedback Loops

Reflexion 和 Self-Refine 的重点不是“模型会自我反思所以更聪明”,而是把失败、反馈、修订、重试和记忆组织成受控的推理时改进机制。它们说明 agent 可以在不更新模型权重的情况下,通过 verbal feedback、critic、memory 和 refinement policy 改善下一次尝试。

250ai-foundations/papers/25-reflexion-self-refine-agent-feedback-loops.md

Reflexion / Self-Refine / Agent Feedback Loops 解读

Source Anchors

SourceLink用途
Reflexion: Language Agents with Verbal Reinforcement Learninghttps://arxiv.org/abs/2303.11366理解 verbal feedback、episodic memory、trial-level improvement
Self-Refine: Iterative Refinement with Self-Feedbackhttps://arxiv.org/abs/2303.17651理解 generate -> feedback -> refine 的迭代结构
ReActhttps://arxiv.org/abs/2210.03629连接 reasoning、action、observation loop
Tree of Thoughtshttps://arxiv.org/abs/2305.10601对比 search-based planning 和 iterative refinement

核心导读

Reflexion 和 Self-Refine 的重点不是“模型会自我反思所以更聪明”,而是把失败、反馈、修订、重试和记忆组织成受控的推理时改进机制。它们说明 agent 可以在不更新模型权重的情况下,通过 verbal feedback、critic、memory 和 refinement policy 改善下一次尝试。

反馈循环的价值来自外部信号、失败分类和修复边界,而不是模型自评本身。生产架构必须定义证据边界、停止条件、人工复核、记忆治理和成本控制,否则自我修正可能变成自我强化错误。


1. 核心问题:Agent 失败后如何改进

Agent 常见失败不是“完全不会”,而是在相似场景中反复犯同类错误:第一次检索没找到关键证据,工具参数填错,输出格式不合规,漏掉政策例外,过早得出结论,或者没有利用用户和系统反馈。

Reflexion 和 Self-Refine 关注的是推理时改进:模型权重不变,但系统把失败转成文字反馈、修订指令或下一次尝试的记忆。

生产系统需要的不是“让模型再想想”,而是:

Failure observed
  -> feedback generated
  -> feedback classified
  -> repair boundary decided
  -> output refined or task retried
  -> trace recorded
  -> memory updated only when safe

金融零售任务中,修正本身也可能造成风险。模型把错误改得更流畅、把不确定事实写得更确定、把安全拒答改成迎合用户,都比原始错误更难发现。


2. 技术贡献:推理时反馈循环

2.1 Reflexion

Reflexion 让 agent 在一次任务尝试后,根据成功或失败反馈生成 verbal reflection,并将其放入 episodic memory,影响下一次尝试。

Task
  -> attempt
  -> feedback / score
  -> reflection
  -> episodic memory
  -> next attempt

它类似任务复盘:我刚才哪里错了,下次应该先查什么,哪个策略不该用。重要的是,模型并没有被重新训练,改变的是下一次推理时可见的上下文。

2.2 Self-Refine

Self-Refine 的结构是:

Initial output
  -> self-feedback
  -> refined output
  -> optional repeat

它适合草稿改写、摘要补全、结构化字段修复、代码修正、引用补齐和低风险质量提升。但它不天然适合高风险自动决策,因为自我反馈不等于外部事实校验。

2.3 与 ReAct / Tree of Thoughts 的关系

ReAct 强调 reasoning、action、observation 的交替;Tree of Thoughts 强调生成多条路径并搜索;Reflexion 和 Self-Refine 更关注失败后的反馈、修订和经验保留。

它们可以组合,但必须明确每种机制负责什么:工具观察提供外部事实,多路径搜索探索方案,反馈循环修复错误,记忆只能保存经过治理的经验。


3. 机制原理:反馈循环的组成

一个生产级 feedback loop 至少包含五个部分:

Output or action trace
  -> critic
  -> feedback object
  -> refinement policy
  -> repair / retry / escalation
  -> trace and memory governance

Critic 可以是规则检查、schema validator、citation verifier、retrieval grounding checker、LLM judge、工具错误、人工 reviewer 或用户反馈。字段缺失用 schema 检查,引用真实性用 verifier,语义质量可以用 LLM judge 和人工抽检,高风险合规问题不能只靠模型自评。

Feedback 应结构化,而不是一段随意自然语言:

字段示例
failure_typemissing_evidence, unsupported_claim, policy_violation, format_error
severitylow, medium, high, critical
evidencesource ids, tool errors, reviewer notes
recommended_fixretrieve_more, remove_claim, add_citation, escalate
allowed_auto_refinetrue / false
memory_update_allowedtrue / false

Refinement policy 决定下一步。格式错误可以自动修;缺少低风险字段可以基于证据补齐;引用不支持结论时要删除结论、重新检索或人工复核;触及受监管建议、权限错误或关键政策冲突时必须停止或升级。

Stop rules 也必须明确:最大修订轮数、无新证据、同一错误重复、critical policy violation、成本或延迟超限、输出冲突增加、需要人工审批。


4. 为什么反馈循环有效

第一,它把失败原因显性化。单次坏输出只说明“结果不好”,结构化反馈能说明是检索漏了、引用错了、格式坏了、政策冲突还是输出越界。

第二,它用推理时计算换质量。对于高价值任务,多一轮检查和修订可能比直接把低质量草稿交给人工更划算。

第三,它分离生成和审查。生成器负责产出草稿,规则检查器负责硬约束,检索验证器负责证据,LLM judge 负责语义质量,人工 reviewer 负责高风险判断。

第四,它能把错误转成改进资产。常见 feedback 可以进入 eval backlog、prompt 改进、workflow checklist、数据质量修复、工具接口改进和培训材料。


5. 局限和误用

风险说明控制
Same-model bias模型评审自己,共享盲点引入规则、工具、不同 judge 和人工抽检
No new evidence没有外部证据,只是重写要求 retrieve_more 或 stop
Error amplification错误被改得更像真的citation verifier 和 factual checks
Infinite loop不断修订不收敛max rounds、budget、stop rules
Safety erosion为满足用户弱化拒答边界安全约束不可被 refinement 改写
Memory contamination错误 reflection 进入长期记忆memory approval 和 retention controls
Privacy leakage敏感客户信息写入全局 memoryPII filter、aggregation、purpose limitation

自我反馈尤其不能替代事实校验。模型可以说“缺少引用”,但没有新证据时,它无法凭空知道正确事实。金融任务中的事实修订必须绑定来源文档、交易记录、政策版本、工具结果或人工 note。


6. 记忆治理:什么可以被保存

Reflexion 最容易被误用在 memory 上。不是所有 reflection 都应该进入长期记忆。

Memory 类型示例治理
Session reflection本轮对话内避免重复错误会话结束清除
Workflow reflection某类任务常漏检查 SLASME 审核后进入 checklist
User preference用户偏好短答案同意、可查看、可删除
System learning生产错误模式统计去标识化、聚合保存
Unsafe reflection“下次绕过限制”阻断并记录安全事件

一个 case 中形成的经验可能只适用于该 case。把它直接写入全局 memory,可能造成偏置。例如 AML 系统不能因为一批 false positive 就学到“类似 alert 通常可以关闭”。正确做法是把 pattern 交给 SME 审核,转成可测试规则或 eval case。


7. 架构和产品价值:受控 Feedback Loop

反馈循环的价值是提升任务质量、降低人工返工、形成持续改进,而不是让 agent 自由重试。

Task execution
  -> output / action trace
  -> critic layer
      -> schema checks
      -> policy checks
      -> citation checks
      -> LLM judge
      -> human review sample
  -> feedback object
  -> refinement policy
      -> repair
      -> retrieve more
      -> ask user
      -> escalate
      -> stop
  -> final output
  -> trace / metrics / eval backlog
  -> controlled memory update

可运营指标包括 refinement success rate、regression introduction rate、evidence preservation rate、safety preservation rate、average refinement rounds、cost per accepted output 和 human acceptance rate。

这些指标必须一起看。只看修订成功率会忽视成本,只看人工接受率会忽视安全,只看成本会压低必要复核。


8. 金融零售系统案例

8.1 Payment Dispute Assistant

支付争议助手可以自动修复缺交易时间、金额、商户、工单 schema 不合规、补证请求不清晰等问题。但承诺退款、把网络规则解释成最终裁决、忽略商户证据冲突、漏掉 SLA 风险,都必须阻断或升级。

适合的 feedback taxonomy 包括 missing_transaction_fact、unsupported_rule_claim、refund_promise、evidence_gap_ignored 和 deadline_risk。每类错误对应不同修复策略,而不是统一“再生成一次”。

8.2 KYC Document Checker

KYC 检查器可以在本轮对话中记住“刚才漏看地址证明”,也可以把去标识化失败模式交给 SME 审核后加入 checklist。但个人客户材料不能进入全局 memory,系统也不能因为历史类似案例而跳过当前证据检查。

8.3 AML Alert Triage

AML 场景中,反馈循环适合修复漏掉 prior alert、未区分事实和推断、narrative 缺少交易证据、typology 判断不完整等问题。必须停止或升级的情况包括自动决定 SAR、证据不足却建议关闭 alert、忽略高风险地区和生成无法溯源的事实陈述。

8.4 Contact Center Agent Assist

客服辅助可以通过 Self-Refine 改善语气、清晰度、引用格式和必要披露。但 refinement 不能绕过 approved language、投资建议边界、费用豁免权限和投诉升级规则。


9. Trace 和审计

每次 refinement 都应记录原始输入、检索来源、原输出、critic 类型、feedback object、修订动作、修订后输出、模型和 prompt 版本、是否触发人工、成本、耗时和最终接受状态。

这些 trace 支持三件事:事故复盘时定位错误来源,eval 改进时把 feedback 转成 regression cases,治理审查时证明系统不是无限自我循环,而是在明确边界内修复。


10. 可交付资产

资产内容
Feedback Taxonomy业务失败类型、严重程度、证据和修复动作
Refinement Policy哪些错误可自动修、哪些要检索、哪些必须人工
Reflection Memory ADR什么 reflection 可保存、保存多久、谁批准
Stop Rule Spec最大轮数、critical failure、成本和无新证据停止条件
Eval Reportrefinement 前后质量、安全、成本和人工接受率

11. 学习验证

读完后应能回答:

  1. Reflexion 和 Self-Refine 的差异是什么?
  2. 为什么 self-feedback 不等于事实校验?
  3. Verbal reflection 为什么能在不更新权重的情况下影响下一次尝试?
  4. Critic、feedback object、refinement policy 和 stop rule 各负责什么?
  5. 什么 reflection 可以进入长期 memory,什么必须阻断?
  6. 如何为 AML alert triage 设计 feedback taxonomy?
  7. 如果修订后答案更流畅但引用仍错误,应如何计分?

真正掌握这组方法的标志,是能把“反思”设计成可审计的反馈控制系统,而不是把它当作模型自我提升的魔法。


SOTA 状态标注 (2026-07-01)

本篇属于第二、三遍深读池(参考架构/深读笔记),未列入 12 周主线必读。时效基线为写作时点;引用前请按 CLAUDE.md 全局时效性硬规则复查最新进展。模块级 SOTA 对照见 docs/AI_SYSTEMATIC_LEARNING_ROADMAP_2026.md 各周「2026 SOTA 对照」行与文末「SOTA 检查」。