AI越反思越蠢:我们可能把Agent的“长期记忆“做反了

发布时间:2026/5/21 3:25:54

AI越反思越蠢:我们可能把Agent的“长期记忆“做反了 我是一名 AI 算法工程师在学习大模型的过程中踩过很多坑我把自己的经验写成了一本免费电子书《动手学大语言模型写给程序员的手搓LLM实战指南》。本书的主要目标是帮助读者通过动手实践的方式快速地学懂 LLM。我希望能尽自己最大努力将其打造成最适合初学者入门大模型中文版图书 整本书已免费开源阅读全文AI越反思越蠢我们可能把Agent的长期记忆做反了先说一个非常反直觉的实验。一个 AI 模型本来 19 道题能全对。研究者没给它任何错误信息——反过来直接把标准答案喂给它让它像我们设想的自我进化 Agent那样把成功经验总结成可复用的心得存进记忆库。结果它做错的题反而变多了。喂进去的不是噪声是百分之百正确的解法。模型是在总结正确经验的过程里把自己绕蠢的。这是 arXiv 上一篇新论文《Useful Memories Become Faulty When Continuously Updated by LLMs》的核心发现。在作者搭的 ARC-AGI Stream 实验里GPT-5.4 不用任何记忆19 道题 100% 做对把同一批题的正确解法持续压缩进记忆、反复重写之后正确率掉到了大约 54%。我自己一直在推各种 Memory Consolidation 方案看完这篇得停下来想想了。一、 先划清边界被挑战的到底是什么需要先说明一句免得标题把人带偏。这篇论文没有研究AI 反思有没有用也没碰 CoT、self-correction、planning 这些。Agent 的长期记忆是个大范围——原始日志、向量库、用户偏好、工具状态、技能库都算。论文精确打击的是其中一种做法把任务轨迹交给 LLM总结成一条文本经验然后在后续运行中持续重写这套经验库。它的结论是在当前模型能力下这个写入动作本身就是高风险操作。理解全文需要先搞清楚一个区分这也是论文最有价值的概念框架。情节记忆episodic是原始轨迹本身“当时一步步发生了什么的完整记录抽象记忆consolidated是把多次经验蒸馏出来的、schema 式的心得”。人脑两套都有而且在架构上是分开的。但今天主流的 Agent 框架——CLIN、Agent Workflow MemoryAWM、Dynamic Cheatsheet、ACE思路都属于一类——几乎全在追第二种抽象记忆而且默认一件事每次 consolidation最差也就是没用不会有害。论文用大量实验说这个假设是错的。如果要给整篇文章一条主线我会这样概括——过去我们以为 Agent 长期记忆的问题是记得不够多这篇论文提醒我们真正的问题可能是三个动作写得太勤、压得太早、改得太随意。二、 正确的经验也会被总结坏研究者特意把输入条件设得对记忆极为有利要么用 Agent 自己做对的题要么直接给标准答案。喂进去的经验按设计就是有用的。即便如此效用曲线还是同一个形状先升后降跌破零记忆基线。在 ScienceWorld 上按每批 4 条轨迹持续更新得分在第 20 步左右见顶之后一路下滑到第 100 步记忆库设多大都逃不掉。WebShop 上更直白。AWM 蒸馏出的记忆8 个样本时还有 0.64到 128 个样本掉到 0.20基本归零和完全不用记忆持平。攒了 128 条经验等于白攒。记忆不是越多越好。左图 ScienceWorld效用先升后降右图 WebShop橙线是原始轨迹、紫线是 AWM 蒸馏记忆——样本越多AWM 一路掉到和零记忆持平原始轨迹却基本稳得住。问题不是经验不够是经验被反复压缩后开始变形。我的理解是让 LLM 连续重写自己的记忆本质是有损压缩的反复叠加。每一次抽象丢掉一些有用细节塞进来一些凭空冒出来的伪规则原本贴合任务的抽象在慢慢漂移。单看一步问题不大但下一步是在被污染过的记忆基础上再压缩。错误没有被修正而是被当成上下文继续传递、放大。这就是压得太早、改得太随意的代价。三、 退化的锅是经验背还是总结背有人会问是不是原始轨迹质量不行论文专门做了实验排除这个可能。同一批轨迹固定不变只改喂给压缩器的方式。一组对照是 Static-All轨迹池一次性全量抽象对 Stream分批流式更新模拟持续进化的 Agent。结果 Stream 明显更惨——那个 ARC-AGI 案例里Static 跑完 10 轮、50 轮还能保住Stream 第 10 轮就崩了。轨迹是同一批差别只在更新节奏。这就是写得太勤的代价。另一组对照更说明问题episodic-only。不做任何抽象原始轨迹直接当 few-shot 塞进上下文。这个什么都不干的土办法在 WebShop、ALFWorld、AppWorld 上基本能和精心设计的 lesson-style 框架打平很多时候还更好。把这两件事放一起看——轨迹池不变换个更新节奏结果就不一样而且不抽象的对照组反而更稳——结论只能指向一个地方问题出在 consolidation 这个写入动作本身不在经验。四、 记忆是怎么被污染的论文没有停在记忆会退化这个现象上而是把退化拆成了三种可观测的机制。对做工程的人来说这部分最有参考价值。misgrouping类别混淆。 不同任务家族的轨迹被硬凑成一条规则。论文里有个反直觉的细节模型并不是看不出类别结构——给它足够的自主权它最终能把 6 种题型干净地各归各类。但在每步强制 consolidation 的模式下强制抽象这个动作本身覆盖掉了它原本能做对的分组。瓶颈不是认不出类别而是被逼着抽象。overgeneralization条件丢失。 分组对了也没用抽象照样会把一条规则的适用条件磨掉。论文里一个例子很生动一条本来只适用于挑出最大物体的策略连续重写 50 轮之后“max size这个唯一具体的判据没了变成了找出某个派生数值属性的最大值”——读起来更通用但已经没人知道到底该最大化哪个属性。一条有边界的经验被磨成了万能废话。overfitting表面规律。 当输入流很窄、反复是同族近似重复题时记忆会过拟合到见过的具体实例。原题能答对同族稍微变一下就崩。它记住了见过的样子却没学到真正的策略。光说机制有点抽象论文附录里有两个塌缩案例肉眼可见。第一个更极端。把 19 道横跨 6 个题型的题反复喂 10 遍后整个记忆库塌缩成了一条规则——“找最大的物体当框把框里的东西挖空”。然后拿一道完全无关的题来测这道题的真实规则只是擦掉某个特定颜色的物体本来不用记忆 10/10 能过。但模型带着那条记忆硬套框-挖空剧本最后输出了一整片空白网格0/10。第二个案例同理。250 道横跨 6 个题型的训练任务流式喂进去后记忆库塌缩成两条全部来自同一题型的规则另外 5 个题型一条没留。结果一道本来留下最大物体就能满分的题模型按记忆里的形状出现频率去筛选从 10/10 掉到 2/10。这不是抽象曲线是实际错误。中间一栏 GPT-5.4 不用记忆做对了10/10右边带着塌缩后的记忆直接产出一片空白0/10。同样的对比——不用记忆时模型正确留下最大的三角形10/10带记忆时却按记忆里的形状多数规则只留下两个小 T 形2/10。它不是少做了一点是被错误记忆带偏执行了完全不该执行的规则。五、 论文的解法把 consolidation 从默认动作改成受控动作问题出在强制、即时、无差别地重写记忆解法的方向也就清楚了。研究者搭了 ARC-AGI Stream 测试床给 Agent 三个显式动作Retain保留原始情节、Delete删除、Consolidate抽象让它自己决定每步干什么。然后对比三种模式每轮强制抽象的 Force、模型自选的 Auto、彻底禁用抽象的 Episodic Management Only。有意思的是Auto 模式下Agent 拿到选择权后会默认大量保留原始情节把抽象库维持得很稀疏——它用脚投票选了 episodic-first。而纯 Episodic Management Only完全不抽象居然能和 Auto 打平甚至更好。在当前模型能力下保留原始情节是更稳的默认值。落到工程上论文给的建议很具体原始情节记忆被严重低估直接当 few-shot 往往比规则库更鲁棒不要每轮都跑 consolidation要加门控不同任务家族的经验绝对不能扔进同一批次让 LLM 一起总结。六、 但这不等于以后别总结了全存原始轨迹讲到这儿得拐一个弯否则容易走到另一个极端。原始轨迹不是免费午餐。它上下文成本高检索难trace 质量参差不齐多任务场景下还得做标签、索引、去重、版本管理长期运行更不可能无限往 prompt 里塞 few-shot。论文自己在结论里也承认情节记忆无限堆下去会撑爆上下文、也难以组合复用压缩和迁移终究需要抽象。所以真正的问题不是要不要抽象而是什么时候抽象、抽象什么、由谁验证、错了怎么回滚。我自己的判断是这样一句话——raw episode 应该是证据层不是最终答案层。可靠的 Agent 记忆方向不是废掉 consolidation而是把抽象建立在可回溯、可验证、可删除、可版本化的原始证据之上。顺着这个思路我想补充一套更具体的写入架构。需要说明下面这套分层是我基于论文结论的工程延伸论文本身没有讲到这个程度不要当成论文内容。可以把 Agent 的记忆写入想成四个部分。最底层是情节存储存原始轨迹、观察、动作、反馈它的工程要求是可检索、可裁剪、可回放——成本和噪声是它的代价但它是整套系统的证据基础不能丢。往上是抽象存储存规则、策略、模式但每一条抽象都必须带三样东西来源从哪几条轨迹来的、适用条件什么情况下用、置信度。没有这三样的抽象就是论文里那种被掏空的万能废话。再往上要有一个验证环节新抽象写入前先用反例或回放测试跑一遍过不了就回滚——这是论文里门控思想的具体化。最后是检索路由决定一个任务该读哪一类记忆关键是按任务家族隔离避免跨域误召回——这正对应论文说的 misgrouping。一句话真正可靠的记忆系统不是一个心得本而是一套带证据链的写入系统。七、 对企业Agent来说这事比答错一道题严重得多这是我特别想强调的一点因为它和很多人正在落地的东西直接相关。在 benchmark 里记忆退化的后果是一道题从 10/10 掉到 2/10测试完了就完了。企业场景不一样。一条错误规则一旦被沉淀进长期状态后续的客户跟进、审批流程、知识库更新、代码修改、运营决策全都可能受影响。而且它是静默的——模型当场犯错你还能发现但它把这次错误当成经验存了下来下次、下下次接着用你很难定位是哪一步出的问题。最可怕的不是模型当场 hallucinate而是系统把这次 hallucination 当成经验保存了下来。对任何打算让 Agent 长期运行、持续积累的团队这都是必须正视的风险。八、 几点判断第一这篇论文真正的价值在于换了一个 baseline。 它没说抽象记忆没用说的是你的抽象记忆必须先打得过什么都不抽象、原始轨迹直接塞 prompt这个对照组才有资格说自己有用。如果你手上正在做 Agent 项目建议很直接——把 episodic-only 作为对照组先跑一遍。这件事现在就能做很可能你会发现精心设计的记忆模块并没有跑赢这个土办法。第二当前 LLM 的元认知能力可能比我们以为的弱。 今天的做法是让同一个模型既生成记忆又监控自己抽象得好不好论文反复点到这个控制回路不稳定。这和 chain-of-thought 有时一本正经胡说八道是同一类问题——让一个模型同时当运动员和裁判本来就靠不住。往远看也许我们需要把用经验和提炼经验拆开要么 finetune 一个专门负责 consolidation 的小模型要么引入外部可验证的记忆机制。第三回到那条主线。对 Agent 记忆系统来说能不能保留证据比会不会总结重要得多。原始轨迹应该是底层账本抽象记忆只是上层索引。未来真正可靠的 Agent不会把每一次经验都急着写成心得而会先判断一句这条经验到底值不值得被写进长期记忆。Agent 长期记忆真正危险的不是记不住而是把还没验证清楚的经验过早写成了长期规则。顺便一提这篇论文的作者之一吴正坤来自清华大学交叉信息研究院目前在 UIUC 访问研究。工作做得很扎实附录里那些记忆退化的真实案例尤其值得细读。参考来源Dylan Zhang et al., Useful Memories Become Faulty When Continuously Updated by LLMs, arXiv:2605.12978论文涉及的记忆框架CLIN、Agent Workflow Memory (AWM)、Dynamic Cheatsheet、ACE原文地址https://mdnice.com/writing/d0c043d92b8e4d5184613269a95bf5ed

相关新闻