跳转到内容

MemGym — 给长程 agent memory 做一间健身房

已复核 · 稳定内容

MemGym 是一个面向 长程 LLM agent memory 的 benchmark。它不只测模型能不能记住用户偏好,而是测 agent 在长时间执行任务时,能不能形成、压缩、检索并复用有用记忆。

类比:聊天记忆像记住朋友喜欢喝冰美式;MemGym 关心的是一个实习生做了三周项目后,能不能把踩坑、代码结构、工具限制和成功路径沉淀成下次能用的经验。

论文把多个 agent gym 和自建 memory-grounded pipeline 统一到一个 memory-reasoning interface 下,并覆盖 tool-use dialogue、deep research、coding 和 computer use 等场景。

很多 memory benchmark 停留在多轮聊天:问你我叫什么、喜欢什么、昨天说过什么。这类任务能测 retention,但不一定能测 agent 做事时的动态记忆。

真实 agent memory 更难:它要在任务过程中决定哪些观察值得留下,如何压缩不丢关键条件,什么时候检索,检索后又如何不污染当前推理。

MemGym 的核心问题是:记忆系统能不能在 coding、web navigation、deep research 这些真实执行环境里帮 agent,而不是只在聊天问答里拿高分。

MemGym 的一个关键贡献是 memory-isolated scores。它试图把 memory performance 从 reasoning、retrieval 和 tool-use ability 里拆出来,让不同记忆策略可以更公平地比较。

这点很重要,因为一个 agent 做错任务,可能是不会推理,也可能是没检索到记忆,也可能是记忆压缩质量差。没有隔离分数,就容易把所有失败都归因给模型或工具。

它和 reflexionvoyager 的关系是:Reflexion 和 Voyager 都强调经验回写;MemGym 更像给这些经验回写系统提供一套统一训练场和评测口径。

MemGym 覆盖五个 evaluation tracks,并归到四类 agentic regimes:

RegimeTrack / 场景
tool-use dialoguetau2-bench
deep research searchMEMGYM-DR
codingSWE-Gym 和 MEMGYM-CODEQA
computer useWebArena-Infinity

论文还为 MEMGYM-CODEQA 和 MEMGYM-DR 构建了 length-controllable 的合成 pipeline,并在各阶段做 ablation verification。

为了让 coding 环境评测更容易跑,论文训练了 MemRM:一个 Qwen3-1.7B + QLoRA 的轻量 reward model,用来快速评分 compression quality,替代完整 Docker rollout 的高成本读取。

假设 agent 要连续修 3 个同仓库 bug:

任务新观察好记忆应该留下什么
bug 1登录失败来自 AuthService 的 token 过期token 刷新入口和测试命令
bug 2类似错误出现在移动端适配层“先查 AuthService,再查 adapter” 的排查路线
bug 3失败日志不同但根因仍是 token 刷新复用路线,同时避免把旧日志当新事实

MemGym 要测的不是 agent 是否死记每段日志,而是它能否把“可迁移经验”压缩出来,并在新任务里正确检索。

  1. 记忆越多不等于越好:未经筛选的历史会制造噪声,甚至把过期结论带进新任务。
  2. 聊天记忆不能代表执行记忆:用户偏好和任务轨迹的结构完全不同。
  3. 只测最终成功会混淆原因:成功可能来自模型强推理,不一定来自 memory。
  4. 压缩质量本身要评估:如果摘要漏掉约束,检索再准也会带来错误行动。

MemGym 把 agent memory 从“能不能记住信息”推进到“能不能形成可迁移执行经验”。这对长期 study / harness 项目很贴近:我们真正需要的不是聊天记录堆积,而是能在下一轮任务中减少重复踩坑的结构化记忆。

对工程实现来说,memory 系统至少要拆成三步看:写入时筛选、保存时压缩、使用时校验。任何一步偷懒,都会把 memory 从资产变成污染源。