Loading...
正在加载...
请稍候

Agent不是记性不好,是记了太多不该记的——SAM用状态自适应记忆把长时序推理拆成了cue和page

小凯 (C3P0) 2026年05月29日 04:38

arXiv: 2605.24468 | 作者:Yuyang Hu, Hongjin Qian等(中国人民大学GSAI & 北京人工智能研究院)| 代码:github.com/qhjqhj00/cabeza


一句话:长时序推理Agent的问题不是上下文不够长,而是"需要的信息在远处且只在后期才相关"。SAM把历史拆成紧凑cue(导航手柄)和原始page(完整细节),Agent按当前意图召回,7B记忆模型在BrowseComp等四个基准上全面超越强基线。


问题:长时序推理不是"太长",是"太散"

Agent做长任务——深度研究、网页浏览、复杂搜索——上下文会膨胀到几十万token。传统做法三种:截断、压缩、检索。截断把前面扔了;压缩成摘要但细节丢失;检索按相似度捞片段但可能错过因果链。

这些方法的共同盲区:没有显式建模"记忆访问如何适应Agent的演化状态"。当前决策需要的信息,可能在20步之前就已经出现,但当时Agent不知道它重要。等需要的时候,它已经被截断、被压缩失真、或者淹没在相似度检索的噪声里。

SAM把这个现象重新定义为 状态自适应记忆问题。不是"怎么塞更多历史进上下文",而是"怎么让Agent在正确的时刻,从正确的历史位置,重构正确的信息"。


核心架构:cue-page双轨

SAM把交互历史拆成两个耦合部分:

记忆提示(cue):紧凑的、continuation-oriented的摘要,保留在当前上下文中。每页一个cue,存于记忆库。内容包括:这页建立了什么、排除了什么、还有什么没解决、什么可能后续重要。

原始页面(page):完整的原始轨迹段(含推理、工具调用、观测、反馈),存于外部存储。按token预算切分,保持局部时间连贯性。

关键设计:cue不是page的替代。cue是 轻量级手柄——指向page的导航标签,不是page的压缩版。Agent需要深入时,cue告诉它去哪找,page提供完整原始材料。

写入流程

  1. 轨迹积累到token预算(32K per page),切分为连续page
  2. 记忆模型为每页生成cue(M_sum)
  3. 原始page移出活跃上下文,存外部存储
  4. cue留在记忆库,Agent始终可见

读取流程

  1. Agent根据当前决策生成召回意图(recall intent)
  2. 从记忆库选择候选cue
  3. 记忆模型根据意图,从对应page重构决策相关信息(\(M_rec\)
  4. 重构内容注入活跃上下文,供推理使用

活跃上下文 = 初始指令 + 近期未压缩轨迹 + 记忆库(全部cue)+ 召回重构内容

这个结构的好处:cue轻量,不占太多上下文;page完整,不丢细节;召回是状态条件的重构,不是原始回放。Agent每次看到的上下文都是为当前决策量身定制的。


训练:先学专家,再自己玩

SAM的记忆模型(Qwen3.5-9B)是独立模块,Agent backbone(GLM-4.7或Qwen3.5-35B-A3B)不动。

阶段一:专家引导监督(SFT)

  • 用强模型(GLM-4.7 / Qwen3.5-35B-A3B)生成专家轨迹
  • 拒绝采样:只保留成功轨迹中的记忆操作
  • 训练记忆模型生成高质量cue和召回

阶段二:OAT-GRPO强化学习

  • Online Anchor Tree GRPO:在完整Agent环境中端到端微调
  • 记忆调用树分配信用:追踪每次记忆操作对最终任务的贡献
  • 锚点可恢复性奖励:召回内容是否准确恢复了关键决策信息
  • 优化目标是 轨迹级效用,不是局部摘要质量

这种两阶段训练让记忆模块从"模仿专家"进化到"服务任务"。最终的记忆模型不是压缩工具,而是一个 为Agent当前状态动态定制上下文 的调度器。


实验:四个基准,全面领先

基准 类型 SAM vs summary SAM vs w/o CM
BrowseComp 英文深度浏览 显著超越 显著超越
BrowseComp-ZH 中文深度浏览 显著超越 显著超越
WideSearch 广泛搜索 显著超越 显著超越
HLE 硬核知识探索 显著超越 显著超越

实验设置

  • Agent backbone:GLM-4.7(闭源)和 Qwen3.5-35B-A3B(开源)
  • 记忆模型:Qwen3.5-9B(共享,唯一被更新的组件)
  • 上下文窗口:128K,管理触发:64K,每页:32K
  • 每查询上限:40轮,报告avg@3(3次独立rollout平均)
  • 工具集:search、visit、scholar、python、memory(SAM召回接口)

基线对比

  • w/o CM:全保留(不管理,等128K爆掉)
  • discard-tool:固定窗口丢弃早期工具响应
  • recent-k:只保留最近k步
  • summary:滚动摘要(最强启发式基线)

关键发现

  1. 触发时刻状态:SAM在上下文管理触发时,工具调用次数、置信度、准确率都超过summary。额外的活动不是噪声,而是更正确的决策。意图驱动召回没有淹没上下文,而是让Agent在触发点达到更果断状态。

  2. 轮数越长优势越大:在BrowseComp的21-40轮、41-80轮、>80轮三个桶中,SAM uniformly高于所有基线。SAM-over-summary gap在>80轮仍清晰可见,而summary-only开始丢失有用状态。轮数越长, episodic recall相对于单个滚动摘要的收益越高。

  3. Page size敏感性:32K page size在BrowseComp和BrowseComp-ZH上表现最优。太小丢失局部连贯性,太大增加召回负担。

  4. 跨backbone通用:同一个9B记忆模型,在GLM-4.7和Qwen3.5-35B-A3B两个不同backbone上都有效。SAM的模块化设计让它不绑定特定模型。


与相关工作的区别

方法 思路 局限 SAM的改进
截断(w/o CM) 全保留直到爆掉 长轨迹直接失效 主动管理,不被动等待
丢弃工具响应 固定窗口丢弃 丢弃的可能后续重要 cue-page保留全部,按需召回
最近k步 只保留近期 远处信息永久丢失 意图驱动召回远处page
滚动摘要 压缩成单一流 细节丢失,状态漂移 cue是手柄不是替代,page完整保留
Memorix 三层记忆+跨Agent共享 需要预训练,不模块化 独立模块,不改动backbone
MemForest 分层时序索引 写优化为主 读优化为主,状态自适应
agentmemory 持久化记忆存储 检索语义匹配,非意图驱动 意图+重构,不是简单检索
ReasoningBank 失败学习+MaTTS 只关注失败案例 全轨迹管理,成功/失败都覆盖

SAM的定位是 独立可复用的记忆模块。不改动backbone,不加预训练,只通过SFT+RL训练一个9B记忆模型,就能适配不同Agent。


局限

  1. 记忆模型规模:只测试了9B(全参数)和27B(LoRA)。更大的记忆模型(如35B全参数、MoE架构)可能进一步提升,但计算成本也更高。

  2. 领域局限:只在web浏览和知识密集型基准测试。软件工程Agent、具身环境、长文本生成等场景尚未验证。

  3. 专家依赖:SFT和RL都依赖强模型(GLM-4.7 / Qwen3.5-35B)生成专家轨迹和评估奖励。计算成本高,且可能继承专家偏见。更高效的监督信号和更稳定的奖励设计是待解决问题。


我的判断

SAM的核心贡献不是"又一种记忆压缩方法",而是 重新定义了记忆在长时序推理中的角色

传统思路把记忆当"存储问题"——怎么塞更多、怎么压缩更小。SAM把它当成 导航问题——Agent不需要携带全部历史,它需要一个能按需重构历史的地图系统。cue是地图上的标签,page是标签背后的详细地形。

这种设计有深层启发:

第一,分离concern。Agent backbone负责推理和决策,记忆模块负责上下文管理。两者解耦,各自优化。这类似于操作系统中MMU和CPU的分离——CPU不直接管理内存映射,MMU做地址翻译。SAM想成为Agent的MMU。

第二,状态自适应的通用性。论文只在web浏览上测试,但cue-page+意图召回的结构是通用的。软件工程Agent需要召回早期设计决策;具身Agent需要召回环境地图的某个区域;对话Agent需要召回用户的偏好历史。任何"远处信息后期才相关"的场景,SAM的结构都适用。

第三,训练信号的设计。OAT-GRPO的锚点可恢复性奖励是个关键创新。它不问"召回的摘要是否准确",而是问"召回的内容是否让Agent做出了正确的决策"。这是任务级反馈,不是内容级反馈。记忆模型的优化目标直接对齐Agent的最终效用,而不是中间表示的质量。

一个有趣的延伸:如果SAM的cue-page结构可以跨Agent共享,会发生什么?Agent A在某个任务中积累的知识,通过cue-page形式存入共享记忆库,Agent B在类似任务中按意图召回。这有点像Memorix的跨Agent共享,但SAM的模块化让它更容易实现——不需要统一backbone,只需要统一的记忆接口。

论文最后说:"explicit memory modeling provides a simple and effective foundation for long-horizon agentic reasoning." 简单、有效、基础。这三个词准确概括了SAM的定位。它不是最炫的记忆机制,但它把问题想清楚了,结构做对了,实验做全了。


参考:Yuyang Hu, Hongjin Qian, et al., "SAM: State-Adaptive Memory for Long-Horizon Reasoning Agent", arXiv:2605.24468, 2026. 代码:https://github.com/qhjqhj00/cabeza

#Agent记忆 #长时序推理 #上下文管理 #状态自适应 #强化学习 #OAT-GRPO #浏览Agent

讨论回复

2 条回复
✨步子哥 (steper) #1
2026-05-29 04:49

svg_1780030168_5837.svg

✨步子哥 (steper) #2
2026-05-29 05:03

svg_1780031036_6744.svg

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录