跳转到内容

Evo-Memory — 给"会自己长记性"的 agent 出一份统一考卷

是什么

Evo-Memory 是 2025 年 11 月一篇论文,做了两件事:第一,把 10+ 种”自进化 memory 模块”统一到一个框架;第二,提出一份流式任务 benchmark,专门测 agent 部署期间的”测试时学习”(test-time learning)能力。

日常类比:传统 LLM benchmark 像考一次性的笔试——题目独立,做完就清空。但真实场景的 agent 是连续上岗的员工,今天接的工单影响明天的判断。Evo-Memory 把考题排成一长串:每答完一题,agent 必须把经验写进 memory,下一题可能用得上。这才接近真实部署。

论文还顺手提了 ReMem——一个”act-think-memory”小循环 pipeline 作为强基线。

为什么重要

不接受”memory 应该会进化”,下面这些事就拼不到一起:

  • 为什么 agent 在长会话/长任务流上越跑越钝
  • 为什么 RAG 系统加了 memory 模块但没人能比较哪个更好
  • 为什么各家”memory 模块”互相不兼容、对比无从谈起
  • 为什么静态 QA benchmark 测不出 agent 的”学习”能力

核心要点

Evo-Memory 三块拼图:

  1. 统一接口:所有 memory 模块抽成 search / write / update 三个原语。10+ 种现有方法(A-MEM、MemGPT、Reflexion-buffer、graph memory、向量库等)都能套进同一壳子,方便对比。类比:把 USB-A、Type-C、Lightning 都接到一个 hub 上。

  2. 流式数据集:把 10 个数据集(既有多轮目标导向也有单轮推理 QA)改写成”task stream”——一个一个串起来,agent 必须按序处理。类比:把高考的所有学科混成一张连续答题卡,做完一题不能回头。

  3. ExpRAG + ReMem:作者给两个 baseline。ExpRAG 检索过去经验来辅助新任务;ReMem 是 action-think-memory refine 三段循环——动手、反思、修 memory。类比:ExpRAG 是”看历史档案”,ReMem 是”先想再做再总结”。

实践案例

案例 1:把 A-MEM 和 MemGPT 装进 Evo-Memory

class AMemAdapter:
def search(self, query): ...
def write(self, item): ...
def update(self, item, new_meta): ...
class MemGPTAdapter:
def search(self, query): ...
def write(self, item): ...
def update(self, item, new_meta): ...
bench.run(model=gpt4, memory=AMemAdapter())
bench.run(model=gpt4, memory=MemGPTAdapter())
# 同样数据流、同样模型,第一次能横向对比

案例 2:流式答题真的能区分方法

在静态 QA 上 A-MEM 和 MemGPT 几乎打平。换到 Evo-Memory 流式跑 500 个任务:

前 100 题 301-500 题 累计平均
A-MEM 62% 64% 63%
MemGPT 61% 70% 66%
ReMem 63% 77% 71%

差距在”后期 task”才显现——这就是”自进化”应该测的能力,静态 benchmark 看不到。

案例 3:ReMem 的 action-think-memory 循环

for task in stream:
think = llm("think about " + task + recent_memory)
action = llm("act based on " + think)
result = env.run(action)
memory.refine(task, think, action, result) # 关键的 refine 步

refine 不是简单 append,而是触发更新已有 memory(如修正之前错的判断)。这一步是 ReMem 击败简单 append 类方法的关键。

案例 4:相关度三档实验

Evo-Memory 设计了 high / mid / low 三档任务相关度。论文展示:

low corr mid corr high corr
no memory 45% 47% 46%
A-MEM 45% 58% 72%
ReMem 48% 66% 81%

低相关下 memory 几乎无用、高相关下提升巨大——单一相关度的 benchmark 容易得出片面结论,三档设计才公允。

踩过的坑

  1. 流式 vs 静态指标搞混:累计准确率会掩盖学习曲线——必须看分段曲线,看后期是否真的提升。

  2. memory 大小没控制:A 模块 memory 长成 100MB,B 模块 1MB——比较不公平。Evo-Memory 强制 budget。

  3. LLM 服务不稳定干扰评估:流式跑 500 任务遇 rate limit / 模型版本变化影响巨大。论文要求固定 snapshot。

  4. task 之间相关性是双刃剑:相关度高 memory 收益巨大但容易”作弊”(类似题),相关度低 memory 几乎无用。Evo-Memory 设计了三档相关度。

适用 vs 不适用场景

适用

  • 设计 / 选型 memory 模块时做横向对比
  • 评估自家 agent 的”长期学习”能力
  • 写 paper 需要标准化 benchmark 来 challenge baseline

不适用

  • 单轮任务系统(用静态 benchmark 就够了)
  • 模型权重微调路线(Evo-Memory 假设权重冻结)
  • 需要真实多用户 / 多 session 场景(benchmark 是单 agent 流)

历史小故事(可跳过)

  • 2023 年:MemGPT、A-MEM 等 memory 模块涌现,各家自报数据,无统一对比
  • 2024 年:LongMemEval(Wu et al.)开始测 long-context memory,但仍是问答式
  • 2025 年初:自进化 agent 综述(self-evolving-agents-survey)指出 memory 评估是空白
  • 2025 年 11 月:Evo-Memory 把流式任务 + 统一接口 + 公开榜单做出来

学到什么

  1. benchmark 决定方向:没有合适 benchmark 的研究方向像没尺子的木匠
  2. 流式才是真实场景:静态 QA 测不出”学习”能力
  3. 统一接口是个体力活但回报巨大:让 10 种方法可比,价值远大于发明第 11 种
  4. ReMem 这种”refine 而不是 append”是 memory 设计的关键分水岭
  5. 相关度分档让对比更可信:单一难度容易过拟合方法

延伸阅读

关联

反向链接