跳转至

Honest Lying: Understanding Memory Confabulation in Reflexive Agents

会议: ICML 2026
arXiv: 2605.29463
代码: 无(论文未公开代码仓库)
领域: LLM Agent / Agent Memory
关键词: Reflexion, 记忆虚构, RRR, 反馈接地, 自我诊断失败

一句话总结

本文揭露 Reflexion 类 agent 一种系统性失败模式——"记忆虚构 (memory confabulation)":agent 会把错误的任务理解写进反思记忆并跨 trial 反复使用,作者用 Reflection Repetition Rate (RRR) 量化该现象,并用程序化反馈抽取替代开放式自我诊断,把 ALFWorld 上正确对象提及率从 0% 拉到 86%、RRR 从 0.64 降到 0.10。

研究背景与动机

领域现状:Reflexion (Shinn et al., 2023) 等"反思型 agent"通过失败后让 LLM 写一段自然语言反思、再把反思拼到下一次 trial 上下文里来"学习",不做任何梯度更新。该范式在 HumanEval 上把 GPT-4 的 pass@1 从 80% 拉到 91%,被认为是 LLM agent"内省式自我改进"的代表。ExpeL 等工作把单 task 反思推广到跨 task 共享规则库。

现有痛点:这条 pipeline 的根本假设是"agent 能正确诊断自己为何失败"。但作者发现在反馈信号稀疏(仅 pass/fail)+ 任务要求多步操作时,agent 会自信地写错诊断,并把错误诊断永久写入记忆——下一 trial 再去强化这个错误,形成 self-reinforcing false belief。这和 hallucination 不同:hallucination 是单次生成误差,confabulation 是跨 trial 持续误用

核心矛盾:反思记忆设计上是"修复机制",但实证上经常是"错误放大器"——尤其在 binary feedback 下,没有 step-level 信号支撑因果归因,反思就退化成同一段错话的复述。

本文目标:(1) 把这个失败模式形式化、可测量;(2) 跨域确认它不是 ALFWorld 个例;(3) 给出 cheap、不改 LLM 权重的缓解方案。

切入角度:作者借用认知科学里"confabulation"(reality monitoring 失败,把内部生成当成观察)的概念命名这个现象,并意识到它在已有 Reflexion 日志里就能被检测出来——只用 gamefile 名(含 ground-truth target object)+ 反思文本就够,不需要新跑实验。

核心 idea:用"反思之间的近似重复率"作为 frozen memory 探针,用"程序化抽取轨迹失败信号"替代 LLM 自我诊断,把反馈从无信号变成有信号。

方法详解

整体框架

论文的方法由三块组成:(1) 概念:给出 memory confabulation 的可操作定义;(2) 诊断:提出 RRR 指标作为 frozen memory 的 log-based 检测器;(3) 缓解:用 grounded reflection 和 programmatic feedback extraction 两种干预,在不改模型权重、不增加 trial 数的前提下打破"frozen 记忆 → 重复错诊断 → 再失败"的死循环。三块绑成一个闭环——先证伪原假设、再量化伤害、再修复。

关键设计

  1. Memory Confabulation 的可操作定义:

    • 功能:把"agent 在脑补错任务"这种主观判断变成能在日志上自动批量识别的 boolean 标签。
    • 核心思路:对任务 \(\tau\) 在第 \(t\) 次失败时生成反思 \(r_t\),存入记忆 \(M_{t+1}=M_t\cup\{r_t\}\)。定义 \(r_t\)confabulated当且仅当 \(\mathrm{obj}(\tau)\notin r_t\),即 task 描述中明示的目标物体没有出现在反思文本里。\(\mathrm{obj}(\tau)\) 直接从 ALFWorld gamefile 目录名(如 pick_cool_then_place_in_recep-Mug-None-CoffeeMachine-10 里的 Mug)抽取,HumanEval 上换成"失败 assert 的具体测例"。
    • 设计动机:能用 string check 而非另一个 LLM judge 来打标签,避免"用 LLM 评 LLM"的循环偏差;同时让所有现有 Reflexion 日志立刻可复用,无新 API 调用成本。
  2. Reflection Repetition Rate (RRR) 与 frozen memory 阈值:

    • 功能:用一个标量衡量"反思记忆有没有在更新",作为 frozen memory 的诊断器。
    • 核心思路:对环境的记忆 \(M=\{r_0,\dots,r_n\}\),定义 \(\mathrm{RRR}=\frac{|\{r_i:i\geq 1,\exists j<i,\mathrm{sim}(r_i,r_j)\geq 0.85\}|}{|M|-1}\),其中 \(\mathrm{sim}\) 是 SequenceMatcher 字符串相似度。\(\mathrm{RRR}=0\) 意味着所有反思都是新内容,\(\mathrm{RRR}=1\) 意味着除第 0 条外全是已有内容的近似复制。论文把 \(\mathrm{RRR}\geq 0.5\) 定义为 frozen environment,并实证发现 RRR 与 trials-to-solve 的 Spearman \(r=0.808\) (\(p<0.0001\))。
    • 设计动机:相比直接调 LLM 判断"反思有没有进步",字符相似度便宜、可复现、和成本完全脱钩;0.85 阈值是经验拍的、对应"接近全文复用",0.5 frozen 阈值则保证"至少一半新反思是旧反思的近邻"才报警。
  3. 程序化反馈抽取替代开放式自我诊断:

    • 功能:在不改 LLM、不增加 trial 数的前提下打破 frozen memory。
    • 核心思路:在 ALFWorld 上写一个轨迹解析器,自动识别 (a) 收到 "Nothing happens" 的动作 (b) 重复出现的动作循环;在 HumanEval 上对应解析失败的 assert 语句和异常类型。把这些结构化失败步骤直接注入反思 prompt,替代"让 LLM 自己回想哪儿错了"。作者还试了一种较弱版本 grounded reflection——要求 LLM 按 FAILED STEP / ROOT CAUSE / NEW PLAN 三段式填模板,但仍由 LLM 自己定位失败步。
    • 设计动机:核心因果归因是"binary feedback 阻止了 step-level diagnosis",单靠让 LLM 自省解决不了根因,必须用环境侧确定性可解析的信号去喂它。这本质上是把 HumanEval 的 unit-test feedback 范式迁移到 ALFWorld。

损失函数 / 训练策略

没有训练。所有实验都在已发布的 Reflexion 日志 + gpt-3.5-turbo / gpt-4o-mini 上跑,重做的 16 个 frozen ALFWorld 环境用 10 次 trial 预算(原始为 15 次)。

实验关键数据

主实验

跨 ALFWorld、WebShop、HotpotQA、HumanEval 四个域复现 frozen memory 现象,再在 ALFWorld 16 个 frozen 环境上对比五种条件。

反馈类型 Frozen 比例 平均 RRR
ALFWorld Binary 32% (16/50) 0.64
WebShop Binary 82% (55/67) 0.83
HotpotQA Binary 46% (46/100) 0.059
HumanEval Unit tests 17% (4/23) 0.59
条件 (16 frozen env) 解决数 对象提及率 平均 RRR
原始 Reflexion (全 confabulated) 0/16 0% (0/121) 0.64
无记忆 ablation 2/16
Grounded reflection (三段式) 2/16
Programmatic extraction 3/16 86% (134/156) 0.10
gpt-4o-mini 替换 2/16 100% 0.53

消融实验

关键对照 发现 含义
16 frozen env 拆 memory-harmful vs task-hard 2 个 (env_31, env_97) 在无记忆下 1 trial 解决,原版要 7–8 trials 反思记忆主动伤害性能而非被动无用
env_22 (Mug→CoffeeMachine) 14/14 反思引用 tomato + microwave(完全错任务) 错任务身份能跨 trial 稳定持续
env_35 case study grounded / no-mem 都 DNF;programmatic extraction 第 4 trial 解出 程序化信号能解锁仅靠自省解不掉的环境
HumanEval 程序化扩展 18/18 反思包含具体 error type;RRR 0.59→0.44 该机制不限于 navigation,code generation 也成立
gpt-4o-mini 升级 对象提及率 100% 但仅解 2/16 模型能力提升能消除 confabulation,但解不了能力本身的 gap

关键发现

  • 反馈粒度决定 confabulation 频率:binary feedback 域(ALFWorld/WebShop/HotpotQA)frozen 率 32–82%,而 unit-test feedback 的 HumanEval 只有 17%,反向支持"反馈信号决定自我诊断质量"的假说。
  • WebShop 出现 symptom confabulation:56% (121/218) frozen 反思只描述"点错了",不诊断违反了哪个 size/color/price 约束——同一根因的不同表面形式。
  • 能力 gap 与 confabulation 是两个独立轴:14/16 任务即使去掉记忆也解不了,但 0/16 → 3/16 的提升来自 env_31/97/35 这种"能解但被记忆带偏"的样本;gpt-4o-mini 实验进一步分离这两个因素。
  • 干预也有风险:HumanEval/77 在程序化抽取后从"解决"退化为"未解",提醒任何记忆干预都可能破坏原本 working 的解题路径。

亮点与洞察

  • 概念落到指标:把"memory confabulation"这种听起来很玄的现象,用 RRR + object mention rate 两个 log-only 指标变成可批量审计的工程问题,非常便于复用。
  • 零成本复现:所有发现都基于已发布的 Reflexion logs,不需要重跑实验就能拿到 134 environments × 4 domain 的证据,方法学上很省。
  • 诊断与缓解对偶:先用 RRR 找到 frozen 环境,再用程序化抽取喂回正确信号,闭环干净;这套"先量化失败模式、再针对性接地"的思路对所有 memory-augmented agent 工作都有迁移价值。
  • 借用认知科学概念锚定问题:confabulation 在心理学里就是"reality monitoring 失败",对应 LLM agent 把生成当成观察的本质——命名得到位,便于跨学科交流。

局限与展望

  • RRR 的相似度阈值 (0.85) 和 frozen 阈值 (0.5) 都是经验拍定,缺乏对其他任务族的鲁棒性扫描;语义重复(措辞不同但意思相同)会被 SequenceMatcher 漏掉。
  • 程序化抽取依赖 "Nothing happens" / AssertionError 这种领域可解析信号,对开放式任务(写作、多轮对话)能不能定义出类似 hook 是开放问题。
  • 实验主要在 gpt-3.5-turbo 上跑,gpt-4o-mini 的复现只局限于 ALFWorld 16 环境;对更强模型(Claude / GPT-5)confabulation 是否仍主导未知。
  • 仅 16 个 frozen 环境的样本量较小,env_35 这种"被解锁"案例的 generalizability 需要更大规模验证。

相关工作与启发

  • vs Reflexion (Shinn 2023): 本文不是对 Reflexion 的替代,而是外科手术式打补丁——保留反思机制但替换信号源。Reflexion 的失败在 binary feedback 下显式暴露。
  • vs ExpeL (Zhao 2024): ExpeL 把单 task 反思蒸馏成全局规则库,本文指出这套架构会把单条 confabulated 反思放大成全局错规则,风险更高;本文方法对 ExpeL 这种 rule-library agent 同样适用。
  • vs Hallucination 综述 (Ji 2023): 把 memory confabulation 与 single-generation hallucination 显式区分——前者是 multi-trial、self-reinforcing,需要 memory-aware 评测,而非现有 hallucination benchmark。
  • vs Memory survey (Du 2026): 印证了 survey 中关于"reflective memory 风险 = 自我强化错误"的理论预期,给出第一个跨域实证 + 缓解方案。

评分

  • 新颖性: ⭐⭐⭐⭐ 命名和形式化都是新的;缓解方案(程序化抽取)思想直接但论文之前没人系统化地试过。
  • 实验充分度: ⭐⭐⭐⭐ 跨 4 域 + 5 种条件 + 不同模型对照很扎实;样本量稍小、阈值消融偏弱。
  • 写作质量: ⭐⭐⭐⭐⭐ 论证链条清晰,case study (env_22/35) 让抽象现象具体可感。
  • 价值: ⭐⭐⭐⭐ 对所有 memory-augmented LLM agent 都给出可立即采纳的诊断指标和落地缓解策略。

评分

  • 新颖性: 待评
  • 实验充分度: 待评
  • 写作质量: 待评
  • 价值: 待评