小红书技术REDtech

EMNLP 2026|MemPro:让 Agent 的记忆系统学会自我进化

Image

摘要

能长期陪用户干活的 Agent,得记住过去、跟上状态变化,还要在需要时准确调用。现在的 Agent 记忆系统大多走“记忆构建—检索与使用”(MCR)这条流水线,但通常只更新记忆内容,写入、检索、使用的流程一旦部署就固定了,很难兼顾时间推理、多跳问答这些不同任务,也可能随着记忆库变大而失效。

我们提出 MemPro,把完整的 MCR 流水线看成一段可演化的程序:用版本树保存不同实现,让 Evolving Agent 挑出有潜力的版本、分析典型错误,再通过“编辑—调试”不断改写 Prompt、执行代码和控制逻辑。四个数据集上,MemPro 只用少量演化轮次就超过了强静态基线和 Prompt 级优化方法,之后还能继续涨。一句话:长期 Agent 的记忆不该停在内容堆叠,“怎样记、怎样找、怎样用”本身也要能从错误里迭代改进。

论文标题:

MemPro: Agentic Memory Systems as Evolvable Programs

论文地址:

https://arxiv.org/abs/2606.00619

01

背景

当 Agent 开始持续陪伴用户、处理跨天甚至跨月的任务,它就不能每次都“从零开始”。它需要记住很多长期信息,例如:

  1. 用户喜欢什么、不喜欢什么;

  2. 之前做过哪些决定;

  3. 某个项目目前推进到了哪一步;

  4. 哪些信息已经过时,哪些才是最新状态。

把全部历史直接塞进上下文,既贵又容易引入噪声,所以通常要专门搭一套 Agent 记忆系统:先整理保存历史,再按当前问题检索并使用相关记忆。

已有研究做了层级记忆、图结构记忆、摘要压缩等方案,但重点大多在“记住什么”。至于记忆该怎么写入、检索和组合,往往由开发者一次性设计好,之后不再变。随着记忆越攒越多,矛盾就出来了:记忆内容一直在变,负责写入、检索、组合的流程却始终不动。

再具体一点,不同任务需要的用法并不一样:有的要分辨信息新旧,有的要串起多轮对话里的线索,有的依赖对次数和时长的准确记录,一套固定流程很难都照顾到;而记忆一旦积累起来,最初有效的检索方式也会慢慢失灵。

所以我们想弄清楚一件事:Agent 能不能根据自己的错误,自动把整套记忆系统改好?

02

方法

一个完整的 Agent 记忆系统,通常包含两个阶段:

  • 第一阶段是记忆构建(Memory Construction):把对话、文档等原始历史切分、压缩,并整理成结构化记忆库;

  • 第二阶段是记忆检索与使用(Memory Retrieval and Usage):面对新问题时,从记忆库中寻找相关信息,整合证据,判断信息是否充分,再生成答案。

我们将从记忆构建到检索与使用的完整流程简称为 MCR 流水线。

基于这一流程,我们提出MemPro(Agentic Memory Systems as Evolvable Programs),对整套 MCR 流水线进行系统级演化。它不局限于改进记忆内容或 Prompt,而是把 Prompt、执行代码和控制逻辑都纳入优化范围,让 Evolving Agent 根据评测结果和失败轨迹,不断生成、比较和改进不同版本的记忆系统。

Image

 MemPro 总体框架。左侧是 MCR 流水线,右侧是基于版本树的系统级演化。

2.1 初始 MCR 流水线

MemPro 从一套初始 MCR 流水线出发,由 Memory Agent 和 Research Agent 分别负责记忆构建、检索与使用。Memory Agent 根据新输入和已有记忆持续更新记忆库;Research Agent 回答问题时循环做“检索—整合—反思”,不断补充和整合证据,直到信息够用或达到最大检索轮数,再给出答案。

2.2 MCR 版本树

为了控制演化成本,MemPro 先从数据集里划出一小部分样本当演化训练集,用来做版本评测、错误分析和系统改进,其余数据留作最终测试。

MemPro 把不同的 MCR 实现组织成一棵版本树。每个节点都对应一套能真正跑起来的 MCR 实现,同时存着它的评测日志:整体得分、各类别表现、父节点,以及主要错误和潜在改进方向。

2.3 选择、扩展与评测

有了 MCR 版本树之后,MemPro 通过 Evolving Agent 持续迭代整套记忆系统。每一轮演化包含三个步骤:

  1. Selection:Evolving Agent 综合版本树中各版本的整体性能、分类表现与已有失败模式,选出最值得继续优化的版本;不只看总分,也会权衡改进方向的泛化性与高频错误,生成诊断分析,明确下一步优先改什么。

  2. Expansion:选定版本后,Evolving Agent 围绕代表性失败案例迭代修改 MCR 流水线,可执行三类操作。Edit 修改 Prompt、代码或控制逻辑;Debug 挑选代表性失败样例重跑,结合执行轨迹定位问题;Terminate 在修改足够时结束本轮,产出新的 MCR 版本。

  3. Evaluation:新版本生成后,MemPro 不再只看个别失败样例,而是会在整个演化训练集上运行新版本,记录整体得分、不同类别上的表现以及新的失败模式,并将这些结果写回版本树。

这样,Evaluation 的结果又会成为下一轮 Selection 的依据,形成完整的闭环:

分析版本树 → 选择版本 → 编辑与调试 → 评测新版本 → 下一轮

与沿着单一路径不断修改不同,MemPro 会保留过去的版本和评测结果。因此,即使某次修改导致性能下降,也不会覆盖之前表现更好的版本,后续仍然可以从历史强版本继续扩展。

03

实验结果与分析

3.1 长期记忆 Benchmark

LongMemEval 和 LoCoMo 通过多轮、跨会话的对话,测试 Agent 能否记住历史信息,并在信息发生变化后找到当前有效的内容。表中对比方法分为四类:

  • 完整上下文与 RAG:不构建 Agent 记忆系统,分别直接输入全部历史,或从原始历史中检索相关片段;

  • 静态记忆系统(Static Agentic Memory System):使用专门的记忆写入、组织和检索流程,但这套流程由开发者预先设计,运行后不再改变;

  • Prompt 级演化(Prompt-Level Evolution):可以根据错误自动优化 Prompt,但无法修改执行代码和控制流程;

  • 系统级演化(System-Level Evolution):以 MemPro 为代表,同时演化 Prompt、执行代码和控制流程,从而改进完整的 MCR 流水线。

Image

结果可以概括为四点:

  • 简单压缩记忆可能损失信息。部分早期记忆系统甚至不如直接输入完整历史,但设计更完善的记忆系统能够克服这一问题,并超过完整上下文和 RAG;

  • 系统级演化优于只改 Prompt。Prompt 级演化已经优于多数静态系统,而进一步修改执行代码和控制流程还能带来稳定增益;

  • 少量轮次即可超过强基线。经过 5 轮演化,MemPro 已在 LongMemEval、LoCoMo 及对应骨干模型上超过所有非 MemPro 基线;

  • 达到领先水平后仍能继续提升。从第 5 轮到第 15 轮,两个长期记忆 Benchmark 上的整体性能仍保持增长。

3.2 版本演化分析

Image

上图展示了 MemPro 在 LoCoMo 上的一条实际演化轨迹:每轮评测后,系统根据暴露出的错误修改记忆流水线,再对新版本进行评估。图中分数均来自未参与演化的独立测试集。

随着演化推进,系统逐步改善回答表达、证据整合和检索策略,在独立测试集上的准确率从 77.3提升到84.9,累计提升7.6 个百分点。曲线并非单调上升,说明部分修改可能带来退化;版本树通过保留历史强版本,让后续演化能够从更好的节点继续探索。

3.3 消融实验与性能分析

我们在 LoCoMo 独立测试集上进一步看各组件的贡献,以及准确率和 Token 成本之间的取舍。

左图依次移除了四项设计:w/o Version Tree不再保留分支,只从最新版本继续演化;w/o Evolution 只进行一轮外层演化;w/o Code禁止修改执行代码,只保留 Prompt 优化;w/o Iterative Expansion 每次扩展只修改一次,不再反复编辑和调试。

Image

结果可以概括为两点:

  • 各组件都发挥了作用。移除代码级修改、版本树、多轮演化或迭代式扩展都会导致性能下降。

  • 性能与成本之间取得了较好平衡。MemPro 使用的 Token 少于直接输入完整历史,并在与 GAM、GEPA 相近的预算下获得更高准确率。

04

总结与展望

针对长期运行的 Agent 里“记忆流程固定、跟不上任务变化和记忆增长”这个问题,我们提出了 MemPro,把完整的 MCR 流水线当成一段可演化的程序。同于静态记忆系统或只优化 Prompt 的方法,MemPro 能够根据系统错误,同时修改 Prompt、执行代码和控制流程。实验表明,这种系统级演化仅需少量轮次即可超过强基线,并在合理的 Token 成本下持续提升。

这表明,记忆系统的自我演化不应止于“记住什么”,还应覆盖“怎样记、怎样找、怎样用”的完整流程。随着 Agent 从短期问答走向长期运行,记忆系统需要持续适应任务与记忆的变化。未来 Agent 有望发展出原生的记忆管理能力,自主决定信息如何写入、更新、检索与使用,并在长期交互中持续改进。

///

作者简介

  • 刘青山

    现硕士就读于华东师范大学,主要研究方向:Self-Evolving Agents。

  • 一帆(陶鑫琪)

    小红书广告创意生成算法工程师,负责 AIGC 笔记生成与智能创意,研究方向:广告创意生成与 LLM Agent。

  • 秦明(宋德嘉)

    小红书商业化Creative&Data负责人,负责广告素材生成、数据洞察相关算法研究与应用。曾在计算机视觉领域顶会发表多篇论文,曾获ICCV VOT冠军。

///

招聘

职位名称:

商业化创意算法工程师(AIGC / Agent / 视频 / Data)

招聘类型:

实习、校招、社招(创意优选)持续招聘中。

工作职责:

  1. 创意生成基座模型:文案与图像生成模型的研发迭代,涵盖后训练、奖励建模与偏好对齐、评测体系与服务化落地,解决生成质量、指令遵循、多样性与合规可控。

  2. Creative Agent & 创意优选:以 Agent 形态实现创意自动化生产,从行业与商品理解到创意规划、素材生成、优选排序与审核校验,打通创作到投放的端到端链路,支撑自动投放、外投分发、行业素材供给等场景。

  3. 视频创意生成:广告视频智能剪辑与生成,涵盖镜头选取与叙事编排、智能包装、图文转视频、视频理解与质量评估,推动存量素材二次剪辑提效与规模化落地。

  4. Data Agent:面向客户、行业、人群与素材理解的数据智能,把洞察转化为投放与创意决策,并打通效果反馈驱动模型与策略迭代。

任职资格:

  1. 本科及以上学历,计算机、人工智能等相关专业。

  2. 在以下至少一个方向具备深入实践:LLM 后训练与 Agent、视觉内容生成、多模态理解或数据智能。具备规模化业务落地经验者优先。

  3. 自驱力强,沟通表达清晰,乐于在真实商业场景创造可衡量的业务价值。

  4. 在顶会顶刊发表论文,或开源项目、学术竞赛成绩优异者优先。

投递邮箱

[email protected]

[email protected]

(创意优选方向优先处理)

Image