- ReasoningBank 是谷歌研究院开源(Apache-2.0)的智能体记忆框架:从自我评判的成功与失败轨迹中提炼可泛化的推理策略存入记忆,测试时检索相关记忆指导行动,再把新经验写回,形成闭环。
- 与多数记忆机制的关键差异:失败轨迹同样入库,且存的是「怎么推理」——标题、描述加提炼后的推理步骤,而不是任务结果或原始轨迹。
- 配套提出 MaTTS(记忆感知的测试时扩展):给单个任务分配更多算力以产生多样经验,对比信号合成更高质量的记忆,更好的记忆再反哺扩展效率,形成双向协同。
- 论文(ICLR 2026 收录)称,在 WebArena、Mind2Web、SWE-Bench-Verified 上,ReasoningBank 稳定优于「存原始轨迹」和「只存成功经验」两类记忆机制,效果与效率同时提升,MaTTS 进一步放大收益。
- 代码含 SWE-Bench 与 WebArena 两套基准实现,支持 GPT、Gemini、Claude 三个模型系列;官方声明非 Google 正式支持产品,仅供研究演示,不可用于生产。
ReasoningBank 是什么:把踩坑经验变成可检索的推理策略
ReasoningBank 解决的是长期运行智能体的一个基础缺陷:任务一个接一个地来,但智能体不会从交互历史里学习,每次都丢弃已有经验、重复犯过的错。它的输入是智能体成功和失败的任务轨迹,输出是一个可检索的记忆库——测试时,智能体先从中取出与当前任务相关的记忆来指导行动,交互结束后又把新经验提炼写回。
一条记忆条目不是日志,而是提炼后的策略:标题、一句话描述,加上蒸馏出的推理步骤或决策依据。配套的闭环是「检索 → 交互 → 提炼 → 归档」,其中轨迹的对错由 LLM 评判器自评产生,不需要人工标注。
核心技术一:成功和失败都进记忆,存的是推理不是结果
以往的记忆机制大多只记录成功经验,或者干脆只存事实性内容。ReasoningBank 的判断是,失败轨迹里含有别处拿不到的信息:哪条路走不通、为什么走不通。失败经验会被转化成预防性的教训和策略性的护栏,和成功经验进入同一个记忆库。
第二个差异是记忆的载体。它存的不是「这一步做了什么」的结果记录,而是「怎么想到这一步」的推理过程——可泛化的策略,而不是一次性的操作序列。按论文摘要的结论,这种设计在两个基准上都稳定优于存原始轨迹和只存成功例子的机制,且同时提升效果与效率;具体数值见论文原文。
核心技术二:MaTTS,记忆与测试时计算的双向协同
测试时扩展(给单个任务更多算力、探索更多路径)的固有浪费在于:每次扩展都从零开始,踩过的坑下次接着踩。MaTTS 把记忆和测试时计算接成一个双向回路。
一个方向是记忆让扩展更高效:带着已有策略去探索,不用重复进入已知死路。另一个方向是扩展反哺记忆:更多算力产生更丰富、更多样的经验,成功与失败并存构成的对比信号,能合成出更高质量的记忆条目。论文把这条回路称为智能体系统在「模型参数量」和「测试时计算量」之外的第三个扩展维度,并称 MaTTS 能进一步放大 ReasoningBank 的收益。
适用场景与效果边界
这套代码面向的是研究复现:覆盖网页浏览(WebArena)和软件工程(SWE-Bench)两类基准任务,论文另在 Mind2Web 上做了评估。如果你的工作是让智能体在同类任务流上持续变强——比如长期运行的网页操作或代码修复 agent——这套实现是可以直接参考的完整管线,包括自动评估用的 LLM 评判器。
边界要写明。其一,仓库声明这不是 Google 正式支持的产品,仅供演示,不可用于生产环境。其二,效果依赖 LLM 自我评判轨迹对错的质量,评判器跑偏时,入库的「教训」也会跑偏。其三,目前的证据都是基准测试口径,没有公开的生产环境案例;论文标题里的「第三扩展维度」是作者的主张,能否在真实业务任务流上成立,还需要更多独立复现。
快速上手
前置条件是 Python 环境和对应模型的访问权限。克隆仓库后先装依赖:
模型配置分两类。用 GPT(gpt-3.5-turbo / gpt-4 / gpt-4o)只需设置 OpenAI 密钥:
用 Gemini(gemini-2.5-flash / gemini-2.5-pro)或 Claude(claude-3-7-sonnet)则走 Vertex AI,需要先完成 Google Cloud 认证: 跑 WebArena 还要按官方教程配置 browsergym 和 Docker 环境,并把仓库自带的修正版 webarena 树置于 PYTHONPATH 首位(修正了购物任务标注、心愿单评估等问题),然后执行 run.sh,按需配置 model、output_dir、website 和 memory_mode:
SWE-Bench 基于 mini-swe-agent 构建,先在 third_party 目录下 pip install -e . 安装,再按 SWE-Bench/run.sh 的说明配好 VertexAI 后运行,评测用官方的 sb-cli。最常见的三个失败点:VertexAI 认证未完成、WebArena 的 Docker 站点地址没配、忘记设置 PYTHONPATH 导致用到了 pip 版未修正的 webarena。
生态定位:经验积累成为第三条扩展轴
智能体能力提升此前主要沿两条轴推进:更大的模型参数量,和更多的测试时计算。ReasoningBank 的主张是存在第三条轴——经验的积累与复用,且这条轴与前两条正交:记忆让测试时计算更有效率,测试时计算又让记忆质量更高。代码层面它站在已有工作上(致谢 Agent-workflow-memory、webarena、mini-swe-agent),谷歌研究院另有官方博客配套解读。
对正在做长期运行智能体的团队,这份代码的价值在于给出了一套完整可跑的「经验闭环」参考实现,而不是一个即插即用的产品。它现在回答的是「记忆机制应该怎么设计」,距离回答「我的业务 agent 该不该用」还差一轮你自己的基准验证。