Google Research 今日发布了 ReasoningBank,带论文和开源代码库。前提直接且有用:现有的 agent 记忆方法要么把动作轨迹详尽记录(Synapse 风格)但无法蒸馏出可迁移的模式,要么只保存成功的工作流(AWM 风格)从而忽视了学习的一大来源——agent 自己的失败。ReasoningBank 主张两者都要,且要结构化。

架构精简。每条记忆有三个字段:标题(简要策略标识)、描述(简短摘要)、内容(蒸馏后的推理步骤、决策依据或操作性见解)。推理时 agent 在行动前检索相关记忆,与环境交互,然后用 LLM-as-a-judge 自评结果并抽取新记忆。不做微调,全部在运行时。作者指出:自评不必完美准确;系统对评判噪声具有鲁棒性。记忆会跨执行演化:早期条目像程序性清单(「查找页面链接」),后期条目发展为预防性逻辑(「持续交叉比对任务与当前页面过滤器,确保取出的数据集未被过早分页」)。

数字是诚实的。在 Gemini-2.5-Flash 上,ReasoningBank 在 WebArena 上把成功率提升 8.3 个百分点,在 SWE-Bench-Verified 上提升 4.6 个百分点,均相对无记忆基线,并在 SWE-Bench-Verified 上每任务节省约 3 步执行。启用 MaTTS(并行扩展,k=5)后,WebArena 再多 3 %,减少 0.4 步。对比基线包括原始 ReAct、Synapse(轨迹记忆)和 AWM(工作流记忆)。这些是在已很能干的 agent 基础上的一位数增益,而不是改变框架的飞跃——但它们来自一层几乎零成本的记忆(只有检索与裁判 LLM 调用),无需训练。

如果你在搭 agent,有两点实用提示。其一,从失败中学习这一洞见是最干净的部分。如果你的 agent 记忆系统只存成功轨迹(这是绝大多数流传实现的默认),你就把潜在收益里相当一部分留在桌上了。SWE-Bench-Verified 上的 4.6 个百分点并不来自更好的动作,而是来自把上次出错的东西以 agent 下次能检索到的形式保存起来。其二,代码在 github.com/google-research/reasoning-bank,论文在 arxiv 2509.25140。三字段条目结构足够简单,能在现有 agent 回路里不做重写就改装进去——学术记忆架构通常就卡在这一步。