Back to Blog

有用的记忆,在 LLM 持续更新中变得有缺陷

Paper

Agent 记忆整合的系统性失败分析

2605.12978  |  UIUC & Tsinghua IIIS  |  Dylan Zhang, Yanshan Lin 等
arxiv.org/abs/2605.12978
核心发现:当前 Agent 记忆系统假设每次记忆整合(consolidation)至少无害。本文证明这个假设是错的——持续更新的记忆不仅不会自我优化,反而会变得越来越差,甚至跌到没有记忆的基线之下。GPT-5.4 在用 ground-truth 解题轨迹做整合后,在原本能 100% 解决的 ARC-AGI 题目上暴跌至 54%。

令人震惊的实验

GPT-5.4 无记忆正确率
100%
19 道 ARC-AGI 题目
用 GT 轨迹整合后
54%
同样的 19 道题
"The failure can therefore be attributed to faulty memory rather than to noisy trajectories." — 不是轨迹有问题,不是任务变难了,纯粹是 LLM 在做"整合"时把有用的信息改坏了。

记忆效用:先升后降

在 ScienceWorld、WebShop、ALFWorld、AppWorld 四个 benchmark 上,观察到了一致的模式:从空记忆开始,随整合次数增加,性能先上升后下降。

WebShop AWM 8 个示例
0.64
峰值性能
WebShop AWM 128 个示例
0.20
与无记忆持平 — 更多经验 = 更差记忆

三个关键观察:

1. 流式更新远差于批量更新。 同样的轨迹池,一次性整合比分批次流式整合效果好得多。流式更新中早期的小错误被后续整合反复复用,错误逐步累积放大。

2. 异构批次加速退化。 混合不同任务的批次比单任务批次产出更差记忆——模型在同一轮整合中合并了不兼容的经验。

3. 高质量初始记忆也无法稳定。 先用 GPT-5.4 做高质量整合,再用 GPT-5-nano 持续更新,性能在所有 solver 上都持续下降。

原始轨迹本身就是强 baseline

⚡ 关键对照:不做任何整合,直接把原始解题轨迹作为 in-context examples 拼到 context 里。这个"笨"方法在几乎所有场景下都和整合方法相当甚至更好。轨迹中包含的观测、动作、中间失败、环境反馈都绑定在具体情境中——对 solver 已经足够有用。

三种失败模式

❌ 错误分组
整合前未正确识别经验类别。模型能识别结构,但在执行整合时破坏了自己已识别的分组。需要 568 个示例才能收敛到正确分类。
⚠️ 过度泛化
整合剥离经验适用的前提条件,产生看似通用实则误导的经验。累积整合比单任务整合落后 203 分,过泛化记忆速率高 5 倍。
🎯 过拟合
窄分布输入下,记忆过拟合到具体实例而非底层策略。相同题目表现稳定,同家族内简单变体上崩溃。

正确的记忆架构

ARC-AGI Stream 环境中给 Agent 三种操作——Retain、Delete、Consolidate——对比三种策略:

Force 强制整合
每步强制整合
不保留原始轨迹
性能最差
Auto 自主选择
模型自主选择
默认保留原始轨迹
准确率是 Force 的 2 倍
Episodic Only
只能保留/删除
完全禁用整合
性能与 Auto 持平
📊 Agent 自己的行为模式:在 Auto 模式下,模型会迅速填满 episodic buffer(100 个位置),而 abstract store 始终保持稀疏——当架构允许时,Agent 自己就选择了"保留证据、少做整合"的策略。

核心启示

1. 原始轨迹是一等公民
不是待压缩的废料。当前系统把 trajectory 当作需要被"提炼"的素材,但它本身就是最有价值的记忆形式。
2. 整合应选择性、延迟、可回溯
不应在每次交互后都触发。整合前需确认分组正确,整合后需验证没丢失关键前提条件。
3. Episodic 和 Schema 应架构分离
认知科学的 Complementary Learning Systems 理论:快速情景记忆和慢速模式形成应该分开存储。当前系统把两种角色压缩到一个重写循环里,正是制造干扰的条件。
4. 持续更新 ≠ 自我进化
"持续更新的文本记忆"不是可靠的自进化引擎。在 Agent 可以可靠地控制何时、如何整合之前,应该对记忆更新持保守态度。
对你正在做的方向:这篇论文的诊断覆盖了当前大多数 Agent 框架的记忆设计。如果 OpenClaw 或你探索的 self-improving agent 包含"轨迹→文本经验→持续更新"的记忆链路,这篇论文的发现值得认真对待。
Tags: #Blog