【论文阅读】Agent 记忆机制(43):Mem²Evolve——让经验与能力在双记忆中共同进化
文章目录
- 前言
- 零、论文基本信息
- 一、背景:Self-Evolving Agent 到底在"进化"什么?
- 二、Mem²Evolve 的核心视角:能力与经验应该共同演化
- 三、为什么叫 Mem²Evolve?
- 四、整体架构:Forward Inference + Backward Evolution
- 五、Asset Memory:保存 Agent 真正拥有的能力
- $$ m_{\mathrm{agt}}
- $$ m_{\mathrm{tool}}
- 六、Experience Memory:保存从成功和失败中蒸馏出的经验
- 七、Agent Experience:保存任务执行策略
- 八、Tool Experience:保存"工具应该怎么造"
- 九、为什么一定需要两类 Memory?
- 十、Forward Inference:Reuse First, Create on Demand
- 十一、第一阶段:Task Planning
- 十二、第二阶段:Asset Recruitment
- 十三、能力不足时:Experience-Guided Asset Creation
- 十四、第三阶段:Execution
- 十五、Backward Evolution:把一次任务变成长期能力
- 十六、Asset Memory Evolution:新工具不能"生成完就入库"
- $$ m^{\mathrm{final}}
- 十七、Experience Memory Evolution:成功和失败都值得记
- $$ e^{\mathrm{new}}
- 十八、完整的 Co-Evolution 闭环
- 十九、与"普通 Agent Memory"最大的区别
- 二十、实验设置
- 二十一、对比方法
- 二十二、主实验结果
- 二十三、为什么 GAIA 上的提升特别大?
- 二十四、消融实验:最重要的竟然是 Tool Creation
- 二十五、Experience Memory 不是装饰:移除后同样下降
- 二十六、Experience-Guided Tool Creation:经验到底帮了多少?
- 二十七、Excel 案例:为什么 Experience-Guided Creation 有效?
- 二十八、Single-Task Self-Evolving:Memory 能否持续积累?
- 二十九、Cross-Task Evolution:GAIA 的经验能不能帮助其他任务?
- 三十、这篇论文的"Memory"与 A-MEM / Mem0 不太一样
- 三十一、与 Agentic Plan Caching 的区别
- 三十二、与 MAGMA 的区别
- 三十三、与 3DLLM-Mem 的区别
- 三十四、我认为这篇论文最重要的启发:Memory 可以改变 Agent 的结构
- 三十五、对 Coding Agent 的启发
- 三十六、对 Skill 系统的启发
- 三十七、Experience 与 Asset 应该双向链接
- 三十八、我认为还可以加入 Capability Graph
- 三十九、局限性
- 四十、未来可以怎么扩展?
- 四十一、放到整个 Agent Memory 系列里怎么看?
- 四十二、我的理解和启发
- 四十三、总结
- 参考资料
前言
前面阅读的 Agent 记忆工作,大多在回答一个问题:
Agent 应该怎样保存、组织和召回过去的信息?
例如:
- Mem0 关注记忆的新增、更新和删除;
- A-MEM 关注记忆之间如何动态建立关联;
- MAGMA
将长期经历组织成语义、时间、因果和实体多图,并根据查询意图选择关系; - 3DLLM-Mem 将长期记忆扩展到具身环境,用 Working Memory 查询并融合历史
3D Episodic Memory; - Agentic Plan Caching 则进一步开始保存和复用历史任务中形成的计划。
这些工作虽然都在增强 Agent 的长期能力,但大部分情况下,Agent
的能力边界本身仍然相对固定。
例如,一个 Agent 当前只有:
Web Search
Calculator
Python
那么它可以:
积累更多经验
优化 Prompt
记住失败案例
复用成功轨迹
但如果未来任务需要:
解析带颜色格式的 Excel
转录特殊音频
操作一个此前没有接口的网站
处理一种新的文件格式
单纯"记住更多经验"并不能凭空产生新的工具。
另一条 Self-Evolving Agent 路线因此选择:
遇到新任务
↓
动态创建 Tool / Expert Agent
↓
扩展能力边界
但这里又会出现另一个问题:
如果每次创建新工具都从零开始,那么过去踩过的坑为什么还要再踩一次?
例如,Agent 曾经处理过一个 Excel 任务,并发现:
pandas.read_excel()
能够读取单元格内容,却无法完整保留任务所需的颜色、字体等样式信息。
如果这个失败经验没有沉淀下来,下次遇到类似任务,Agent 很可能再次:
生成 pandas 方案
↓
丢失颜色信息
↓
任务失败
↓
重新 Debug
Mem²Evolve 认为,现有 Self-Evolving Agent 实际上存在两条彼此割裂的路线:
Experience-Centric Evolution
记住过去怎么做
但能力空间基本固定
Capability-Centric Evolution
动态创造新能力
但创建过程缺少历史经验指导
而真正持续的 Agent 自进化应该形成一个闭环:
能力扩展
↓
能够完成更多任务
↓
产生新的成功 / 失败经验
↓
经验被蒸馏
↓
指导下一次能力扩展
↓
创造更可靠的新能力
因此,这篇论文真正想解决的问题不是:
怎样让 Agent 拥有更多 Memory?
而是:
怎样让"经验积累"和"能力扩展"互相促进,使 Agent
的能力与经验一起持续演化?
作者据此提出 Mem²Evolve,使用两类长期记忆:
Asset Memory
+
Experience Memory
其中:
- Asset Memory 保存 Agent 已经获得的"能力",包括可执行工具和专家
Agent; - Experience Memory
保存任务执行和资产创建过程中蒸馏出的成功经验、失败模式和实现建议。
在执行新任务时,系统遵循:
Reuse First, Create on Demand
优先复用已有能力;只有当前能力不足时才动态创建新的 Tool 或 Expert
Agent。
任务结束后,再通过 Backward Evolution:
验证 / 修复新资产
+
蒸馏成功与失败经验
+
写回双记忆
从而形成一个持续的 Capability–Experience Co-Evolution 闭环。
如果用一句话概括这篇论文的核心增量:
Mem²Evolve 不再把"经验记忆"和"能力创建"看成两套独立机制,而是通过
Asset Memory 与 Experience Memory
的双记忆闭环,让过去经验指导新工具/专家的创建,再让新能力产生的轨迹继续反哺经验,实现能力与经验的共同演化。
零、论文基本信息
- 论文名称:Mem²Evolve: Towards Self-Evolving Agents via
Co-Evolutionary Capability Expansion and Experience
Distillation - 发表平台:ACL 2026 Main Conference,Long Papers
- 代码/项目主页:Mem²Evolve
- 作者信息:Zihao Cheng、Zeming Liu、Yingyu Shan、Xinyi
Wang、Xiangrong Zhu、Yunpu Ma、Hongru Wang、Yuhang Guo、Wei
Lin、Yunhong Wang
一、背景:Self-Evolving Agent 到底在"进化"什么?
1. 普通 Agent 的能力边界基本是人为定义的
传统 Tool-Augmented Agent 通常由开发者提前配置:
LLM
+
Prompt
+
Tool Set
+
Agent Roles
例如:
Search Agent
├── Web Search
└── Browser
Code Agent
├── Python
└── Shell
Agent 可以在这些能力范围内进行推理和工具调用,但:
Capability Space
基本在系统部署时就已经确定。
当任务超出已有能力时,Agent
即使"知道自己不会",也不一定能够创造出缺失的能力。
2. Experience-Centric Evolution:经验越来越多,但能力边界不变
第一类 Self-Evolving Agent 主要通过经验积累提升能力。
典型流程:
执行任务
↓
得到成功 / 失败轨迹
↓
反思
↓
抽取策略
↓
写入 Memory
↓
未来任务召回
这类方法可以让 Agent 学会:
哪些推理方式有效?
哪些操作容易失败?
以前类似任务怎么解决?
但论文指出,它们通常依赖一个预先定义的静态 Tool Set。
因此:
Experience ↑
并不等于:
Capability Boundary ↑
如果任务需要一个系统里根本不存在的工具,仅仅增加经验并不能解决能力缺口。
3. Capability-Centric Evolution:能创造工具,但每次都像重新开始
另一类方法允许 Agent:
Dynamic Tool Creation
Dynamic Expert Agent Creation
例如:
发现需要处理 PDF
↓
生成 PDF Parser
发现需要特殊数学计算
↓
生成计算工具
发现任务需要专业领域角色
↓
创建 Expert Agent
这让 Agent 能够突破初始能力边界。
但问题是:
新能力往往是从零生成的。
系统没有充分利用过去已经验证过的:
实现模式
Debug 经验
失败原因
任务策略
于是能力扩展可能表现为:
创建
↓
失败
↓
Debug
↓
成功
下次类似任务
创建
↓
再次犯同样错误
↓
再次 Debug
这并不是稳定的"进化",而更像不断重复试错。
二、Mem²Evolve 的核心视角:能力与经验应该共同演化
为了理解论文的研究定位,最值得先看的是 Figure 1。

图源:Cheng et al., 2026,Figure 1。
Figure 1 对比了静态 Agent、单一路线 Self-Evolving Agent 与 Mem²Evolve
的 Co-Evolution
Paradigm。这里最重要的是最后一种闭环:能力扩展产生新经验,而经验又继续指导下一轮能力扩展。
Mem²Evolve 的核心关系可以写成:
Capability Expansion
↓
完成原来无法完成的任务
↓
产生新的 Execution Trajectory
↓
Experience Distillation
↓
形成可复用经验
↓
指导下一轮 Capability Expansion
↓
更可靠地创建 Tool / Expert Agent
作者将这种机制称为:
Co-Evolutionary Capability Expansion and Experience Distillation。
这里最重要的变化是:
过去:
Memory 是 Agent 的辅助模块
Mem²Evolve:
Memory 直接参与 Agent 能力空间的演化
三、为什么叫 Mem²Evolve?
论文设计了两类相互配合的 Memory:
M_A:Asset Memory
M_E:Experience Memory
因此:
Mem²
≈
Two Memories
但这两类 Memory 保存的内容完全不同。
可以先用一句话区分:
Asset Memory:
我现在“能做什么”?
Experience Memory:
我过去“学到了什么”?
进一步说:
Memory 保存内容 作用
Asset Memory Tool、Expert Agent 扩展 Agent 可执行能力
Experience Memory 成功策略、失败模式、实现经验 指导任务执行与新资产创建
这正是整篇论文的核心。
四、整体架构:Forward Inference + Backward Evolution
为了理解两个 Memory 如何真正形成闭环,需要看论文的整体框架图。

图源:Cheng et al., 2026。
图中应重点关注两条路径:Forward Inference
负责"先复用、能力不足时再创建";Backward Evolution
负责验证新资产,并从任务轨迹中蒸馏新的 Experience Memory。
整个流程可以整理为:
用户任务 q_t
↓
Task Planning
↓
分解为多个 Subtask
↓
┌────────┴────────┐
↓ ↓
查询 Asset Memory 查询 Experience Memory
↓ ↓
已有能力足够? 提供历史策略 / 经验
↓
┌───────┴────────┐
↓ ↓
是 否
↓ ↓
Recruit Asset Create Asset
│ ↑
│ Experience-Guided
└───────┬────────┘
↓
Execution
↓
得到完整任务轨迹 τ_t
↓
LLM-as-a-Judge
↓
Reward + Critique
↓
Backward Evolution
┌─────┴─────┐
↓ ↓
Asset Evolution Experience Distillation
↓ ↓
Asset Memory Experience Memory
└─────┬─────┘
↓
下一任务
因此系统不是简单:
Retrieve → Answer
而是:
Retrieve
→ Execute
→ Create
→ Validate
→ Reflect
→ Store
→ Reuse
五、Asset Memory:保存 Agent 真正拥有的能力
1. Asset Memory 的组成
论文定义:
M A = B a g t ∪ B t o o l M_A=B_{\mathrm{agt}}\cup B_{\mathrm{tool}} MA=Bagt∪Btool
其中:
- M A M_A MA:Asset Memory;
- B a g t B_{\mathrm{agt}} Bagt:Agent Bank;
- B t o o l B_{\mathrm{tool}} Btool:Tool Bank。
也就是说,Agent 的能力资产分为两类:
Asset Memory
│
├── Agent Bank
│ └── Expert Agents
│
└── Tool Bank
└── Executable Tools
2. Agent Bank:保存专家 Agent
一个专家 Agent 可以表示为:
角色
专业能力
行为建议
可用工具
论文中的 Agent Asset 主要包含:
- Role;
- Expertise;
- Suggestions;
- Available Tools。
可以抽象表示为:
$$
m_{\mathrm{agt}}
\langle
\rho,
\epsilon,
\sigma,
T_{\mathrm{avail}}
\rangle
$$
其中:
- ρ \rho ρ:角色;
- ϵ \epsilon ϵ:专业能力;
- σ \sigma σ:行为建议;
- T a v a i l T_{\mathrm{avail}} Tavail:该 Agent 可以调用的工具。
例如:
Expert Agent:
Spreadsheet Analyst
Expertise:
复杂 Excel 分析
Suggestions:
处理格式信息时避免只使用 pandas
Available Tools:
parse_excel_with_styles
python
因此,Agent Bank 保存的并不是普通文本经验,而是:
可以在未来任务中重新被招募的"角色化能力模块"。
3. Tool Bank:保存真正可执行的工具
Tool Asset 被定义为:
$$
m_{\mathrm{tool}}
\langle
n,
d_{\mathrm{func}},
c_{\mathrm{impl}},
\omega_{\mathrm{doc}}
\rangle
$$
其中:
- n n n:工具名称;
- d f u n c d_{\mathrm{func}} dfunc:功能描述;
- c i m p l c_{\mathrm{impl}} cimpl:实现代码;
- ω d o c \omega_{\mathrm{doc}} ωdoc:输入输出文档。
例如:
Tool Name:
parse_excel_with_styles
Description:
读取 Excel 单元格内容以及颜色、字体、背景样式
Implementation:
Python + openpyxl
Documentation:
input: file_path
output: structured cell information
论文中的工具遵循 MCP 风格接口。
这意味着 Asset Memory 中保存的是:
可以被下一次任务直接调用的可执行能力,而不是一段"如何写工具"的自然语言笔记。
六、Experience Memory:保存从成功和失败中蒸馏出的经验
Asset Memory 回答:
“我拥有什么能力?”
Experience Memory 回答:
“我过去学到了什么?”
论文定义:
M E = E a g t ∪ E t o o l M_E=E_{\mathrm{agt}}\cup E_{\mathrm{tool}} ME=Eagt∪Etool
其中:
- E a g t E_{\mathrm{agt}} Eagt:Agent Experience;
- E t o o l E_{\mathrm{tool}} Etool:Tool Experience。
每条 Experience Memory 被结构化为:
e = ⟨ h t i t l e , d d e s c , U c a s e , κ c o n t e n t ⟩ e= \langle h_{\mathrm{title}}, d_{\mathrm{desc}}, U_{\mathrm{case}}, \kappa_{\mathrm{content}} \rangle e=⟨htitle,ddesc,Ucase,κcontent⟩
其中:
- h t i t l e h_{\mathrm{title}} htitle:经验标题;
- d d e s c d_{\mathrm{desc}} ddesc:经验适用背景;
- U c a s e U_{\mathrm{case}} Ucase:适用场景;
- κ c o n t e n t \kappa_{\mathrm{content}} κcontent:真正的经验内容。
七、Agent Experience:保存任务执行策略
Agent Experience 主要来自:
Execution Trajectory
+
Reflection
它不是保存整条轨迹,而是抽象出:
Strategic Insight
例如一次复杂信息检索任务成功后,可以形成:
Title:
多来源事实验证
Use Case:
需要从多个网页组合答案的任务
Experience:
不要在找到第一个候选答案后立即停止;
先收集多个独立来源,再检查时间、实体和数值是否一致。
未来新的 Expert Agent 执行类似任务时,可以直接使用这些经验。
因此:
Raw Trajectory
↓
Reflection
↓
Strategic Experience
实际上是一种 Experience Distillation。
八、Tool Experience:保存"工具应该怎么造"
这是 Mem²Evolve 最有意思的部分之一。
Tool Experience 不保存工具本身,而保存:
Implementation Guideline
Debugging Lesson
Failure Pattern
例如:
任务:
读取 Excel 中红色单元格
第一次工具:
pandas.read_excel()
结果:
可以读取文本
但颜色信息丢失
修复:
使用 openpyxl 读取 cell.fill / font.color
最终经验:
涉及 Excel 样式属性时,
不要只使用 pandas;
需要使用能够访问 Workbook 样式对象的库。
这条内容写入:
Tool Experience
以后创建新的 Excel Tool 时,就可以先召回它。
因此:
Asset Memory:
保存“已经造好的工具”
Tool Experience:
保存“怎样更好地造工具”
这两者不能互相替代。
九、为什么一定需要两类 Memory?
假设 Agent 已经成功实现过:
parse_excel_with_styles
未来遇到完全相同的任务:
直接从 Asset Memory 复用工具
效率最高。
但如果新任务变成:
解析 PowerPoint 中具有特殊颜色的文本
原来的 Excel Tool 不能直接复用。
此时真正有价值的可能不是工具本身,而是:
“不要使用会丢失样式信息的高层解析接口”
这种更抽象的经验可以迁移到新的 Tool Creation。
所以:
Asset Memory
→ Capability Reuse
Experience Memory
→ Knowledge Transfer
这就是双记忆设计的意义。
十、Forward Inference:Reuse First, Create on Demand
Mem²Evolve 在推理阶段采用一个非常工程化的原则:
Reuse First, Create on Demand。
即:
先看看自己会不会
↓
不会再创造新能力
而不是每个任务都重新生成工具和 Agent。
Forward Inference 分为:
- Task Planning;
- Asset Recruitment;
- Execution。
十一、第一阶段:Task Planning
面对任务:
q t q_t qt
Planner 首先将任务分解成:
S = { s 1 , s 2 , … , s k } S=\{s_1,s_2,\ldots,s_k\} S={s1,s2,…,sk}
例如:
用户:
分析这个 Excel,
找到所有黄色单元格中的数值,
计算总和,
再搜索相关行业平均值进行比较。
可以拆成:
Subtask 1:
解析 Excel 样式
Subtask 2:
筛选黄色单元格
Subtask 3:
计算数值总和
Subtask 4:
Web Search 行业平均值
Subtask 5:
比较并生成答案
分解以后,每个 Subtask 再分别判断需要什么能力。
十二、第二阶段:Asset Recruitment
对于每个子任务 s i s_i si,系统从 Asset Memory 中寻找可复用能力。
论文将 Recruitment Function 写为:
Γ ( s i ) = { m ∗ , sim ( s i , M A ) ≥ δ Create ( s i ∣ M E , W e b ) , otherwise \Gamma(s_i)= \begin{cases} m^*, & \operatorname{sim}(s_i,M_A)\geq\delta\\ \operatorname{Create}(s_i\mid M_E,\mathrm{Web}), & \text{otherwise} \end{cases} Γ(si)={m∗,Create(si∣ME,Web),sim(si,MA)≥δotherwise
这里:
- m ∗ m^* m∗:找到的最佳已有资产;
- δ \delta δ:复用阈值;
- M A M_A MA:Asset Memory;
- M E M_E ME:Experience Memory。
这个公式非常直接:
当前 Subtask
↓
与已有 Asset 比较
↓
Similarity ≥ δ ?
/ \
是 否
↓ ↓
Reuse Create
这也是论文所谓:
Reuse First, Create on Demand。
十三、能力不足时:Experience-Guided Asset Creation
如果 Asset Memory 中没有足够匹配的能力,系统不会直接宣布失败。
而是进入:
Create
创建对象可能是:
Tool
或
Expert Agent
但这里最重要的是:
创建过程不是从零开始。
系统会结合:
当前 Subtask
+
Web Information
+
Experience Memory
进行创建。
因此:
Create(s_i | M_E, Web)
实际上意味着:
先问:
过去有没有类似的 Tool Creation Experience?
再问:
外部世界有没有需要的新知识?
最后:
生成新的 Capability Asset
这就是 Experience Memory 真正参与 Capability Expansion 的位置。
十四、第三阶段:Execution
准备好 Agent 与 Tool 后,系统使用 ReAct 风格执行任务。
基本循环:
Thought
↓
Action
↓
Observation
↓
Thought
↓
Action
↓
...
最终得到完整轨迹:
τ t \tau_t τt
以及答案:
a t a_t at
但 Mem²Evolve 不会在任务完成后直接结束。
因为:
真正的"进化"发生在任务结束以后。
十五、Backward Evolution:把一次任务变成长期能力
Forward Inference 回答:
这次任务怎么完成?
Backward Evolution 回答:
这次任务完成以后,系统应该永久学到什么?
首先,系统使用 LLM-as-a-Judge 对:
Trajectory τ_t
+
Answer a_t
进行评估,得到:
r t r_t rt
和:
c t c_t ct
其中:
- r t r_t rt:任务是否成功;
- c t c_t ct:对执行过程的 Critique。
随后进入两条演化路径:
Backward Evolution
│
├── Asset Memory Evolution
│
└── Experience Memory Evolution
十六、Asset Memory Evolution:新工具不能"生成完就入库"
这是一个非常值得借鉴的工程设计。
很多 Tool-Creation Agent 的流程是:
LLM 生成代码
↓
加入 Tool Library
问题是:
生成出来并不代表可靠。
Mem²Evolve 增加了验证和自修复过程。
对于新资产:
m n e w m^{\mathrm{new}} mnew
系统根据任务结果和 Critique 进行验证。
可以概括为:
$$
m^{\mathrm{final}}
\begin{cases}
m^{\mathrm{new}}, & r_t=1 \land \operatorname{Valid}(m^{\mathrm{new}},c_t)\
\operatorname{Improve}(m^{\mathrm{new}},c_t), & \text{otherwise}
\end{cases}
$$
如果任务成功:
生成 Unit Test
↓
验证新 Tool
如果:
任务失败
或
Unit Test 失败
则进入:
Self-Correction Loop
不断:
Critique
↓
修改 Tool
↓
Test
↓
仍失败?
↓
继续修改
只有通过验证的资产才会永久进入:
M A M_A MA
因此:
Asset Memory
保存的不是所有生成过的能力,而是经过任务反馈与验证后的可复用能力。
十七、Experience Memory Evolution:成功和失败都值得记
任务结束以后,系统还会对轨迹进行 Reflection:
$$
e^{\mathrm{new}}
\operatorname{Reflection}(\tau_t,r_t,c_t)
$$
这里非常关键的一点是:
成功和失败都会产生 Experience Memory。
成功任务
系统抽取:
成功模式
高层策略
有效工具实现方式
可迁移步骤
也就是:
Success Generalization
失败任务
系统抽取:
失败原因
Anti-Pattern
Failure-Fix Pair
以后应该避免什么
也就是:
Failure Diagnosis
因此 Memory 并不是:
只记成功案例
而是:
Success → 怎样重复成功
Failure → 怎样避免再次失败
十八、完整的 Co-Evolution 闭环
现在可以把整个 Mem²Evolve 压缩成一个循环:
Asset Memory
↓
复用已有 Tool / Agent
↓
用户任务 → Planning → Capability 足够?
↓
否
↓
Experience Memory
↓
指导创建新 Asset
↓
Execute
↓
Task Trajectory
↓
Judge + Critique
/ \
↓ ↓
验证 / 修复 Asset 蒸馏 Experience
↓ ↓
Asset Memory Experience Memory
\ /
└─────┬────┘
↓
下一任务
这也是论文所谓:
Capability–Experience Co-Evolution。
十九、与"普通 Agent Memory"最大的区别
普通 Agent Memory 经常是:
History
↓
Store
↓
Retrieve
↓
Answer
Mem²Evolve 则是:
History
↓
Distill Experience
↓
Guide Capability Creation
↓
Create Executable Asset
↓
Validate
↓
Persist Asset
↓
Use New Capability
↓
Generate New Experience
所以 Memory 不再只是:
帮助模型想起过去。
而开始直接影响:
未来 Agent 能够调用什么能力。
这也是我认为这篇论文最值得放进 Agent Memory 系列的原因。
二十、实验设置
论文在 6 类任务、8 个 Benchmark 上评估。
覆盖:
General Assistant
Embodied Task
Multi-Hop QA
Mathematical Reasoning
Planning
Web Interaction
具体包括:
类别 Benchmark
General Assistant GAIA
Embodied ALFWorld
Multi-Hop QA HotpotQA、2Wiki
Math AIME24、AIME25
Planning TravelPlanner
Web Interaction WebShop
评价指标统一以:
Pass@1
为主。
主实验使用 GPT-5-chat 作为基础模型。
二十一、对比方法
论文将 Baseline 分成三组。
1. Naive LLM
包括:
GPT-5-Chat Direct
GPT-5-Chat CoT
GPT-5-Chat ReAct
以及 GAIA 上报告的 OpenAI DeepResearch 结果。
2. Experience-Centric Evolving
包括:
DyLAN
EvoAgent
AFLOW
DSPy
它们主要通过:
Prompt / Workflow / Agent Strategy Optimization
增强已有系统。
3. Capability-Centric Evolving
包括:
Alita
AgentVerse
AutoAgents
SwarmAgentic
它们主要关注:
动态 Tool / Agent Creation
Mem²Evolve 则试图同时拥有两边:
Experience Distillation
+
Capability Expansion
二十二、主实验结果
论文 Table 2 的主要结果如下。
方法 GAIA ALFWorld HotpotQA 2Wiki AIME24 AIME25 TravelPlanner WebShop Avg.
GPT-5-Chat 12.49 83.58 50.40 81.80 60.00 46.67 38.68 22.31 49.49
Direct
GPT-5-Chat CoT 17.84 83.58 47.40 74.40 66.67 56.67 39.51 27.49 51.71
GPT-5-Chat ReAct 18.47 86.87 41.40 48.40 66.67 60.00 39.13 25.10 48.27
DyLAN 18.62 91.20 52.00 65.00 46.67 43.33 43.15 36.40 49.55
EvoAgent 17.99 92.50 54.40 75.00 66.67 43.33 49.20 37.80 54.61
AFLOW 19.75 93.40 60.80 72.40 66.67 63.33 53.24 37.90 58.44
DSPy 18.95 92.80 55.60 76.40 66.67 50.00 44.90 35.50 55.10
Alita 72.73 86.13 58.80 77.40 70.00 66.67 48.32 30.21 63.78
AgentVerse 21.90 88.32 38.60 74.60 60.00 50.00 47.25 32.53 51.65
AutoAgents 26.50 87.92 54.20 73.80 40.00 36.67 43.52 31.40 49.25
SwarmAgentic 20.40 88.79 56.00 80.00 46.67 40.00 59.14 34.12 53.14
Mem²Evolve 76.31 94.31 60.80 82.00 76.70 73.33 59.25 39.20 70.24
表源:Cheng et al., 2026,Table 2。
Mem²Evolve 的平均 Pass@1:
70.24
相比:
最强 Experience-Centric:
AFLOW = 58.44
最强 Capability-Centric:
Alita = 63.78
分别提高:
70.24 - 58.44 = 11.80
70.24 - 63.78 = 6.46
论文还指出,相比标准 LLM 配置,最高整体提升达到:
18.53
二十三、为什么 GAIA 上的提升特别大?
GAIA 是这篇论文最能体现 Capability Expansion 价值的 Benchmark。
Mem²Evolve:
GAIA Total = 76.31
而 GPT-5-Chat ReAct:
18.47
差值:
57.84
即:
+57.84 个百分点。
原因在于 GAIA 中存在大量:
文件处理
Web Search
计算
多模态信息
特殊格式解析
多工具组合
只依赖一个静态 Tool Set 很容易碰到:
Capability Boundary
而 Mem²Evolve 可以:
发现缺失能力
↓
动态创建 Tool
↓
验证
↓
完成任务
因此 GAIA 特别能体现:
"记得更多"与"真的多会一种能力"之间的区别。
二十四、消融实验:最重要的竟然是 Tool Creation
论文 Table 3:
配置 Avg. Pass@1 下降
完整 Mem²Evolve 70.24 –
w/o Tool Creation 59.96 ↓10.28
w/o Expert Agent Creation 68.52 ↓1.72
w/o Tool Memory 67.11 ↓3.13
w/o Agent Memory 65.51 ↓4.73
最明显的结果是:
移除 Tool Creation
70.24 → 59.96
下降:
10.28
说明:
真正突破静态 Agent 能力边界的关键,是能够动态获得新的可执行工具。
Expert Agent Creation 也有贡献,但下降只有:
1.72
在这些 Benchmark 中,Tool Expansion 的价值明显更直接。
二十五、Experience Memory 不是装饰:移除后同样下降
如果去掉 Tool Memory:
70.24 → 67.11
下降:
3.13
如果去掉 Agent Memory:
70.24 → 65.51
下降:
4.73
这说明:
Capability Creation
虽然贡献很大,但如果缺少经验指导:
新能力的创建和使用都会变得更不稳定。
也就是说:
Asset Memory 负责让 Agent “会得更多”,Experience Memory
负责让这种能力扩张"更可靠"。
二十六、Experience-Guided Tool Creation:经验到底帮了多少?
论文 Table 4 专门研究:
Experience Memory 是否真的让 Tool Creation 更稳定?
作者使用两个指标:
First-Pass Validity
第一次生成的 Tool 是否无需修复就能通过验证。
Avg. Improve Iter.
一个 Tool 平均需要多少轮 Self-Correction 才能通过。
结果如下:
Benchmark 无经验 First-Pass 有经验 First-Pass 相对提升
GAIA 32.7% 51.0% +56.0%
AIME24 64.9% 83.8% +29.1%
AIME25 61.8% 82.4% +33.3%
平均 53.1% 72.4% +36.3%
平均修复轮数:
Benchmark 无经验 有经验 降低
GAIA 1.45 0.94 35.2%
AIME24 0.76 0.24 68.4%
AIME25 0.82 0.26 68.3%
平均 1.01 0.48 52.5%
这个实验非常直接地证明了:
Experience Memory
并不是简单提高最终回答准确率
它还直接提高:
新能力生成的工程质量
二十七、Excel 案例:为什么 Experience-Guided Creation 有效?
论文给出了一个很直观的案例。
任务需要:
读取 Excel
+
识别特定颜色单元格
没有 Experience Guidance 时,Agent 创建的 Tool 主要依赖:
pandas
但 pandas 更偏向读取:
Cell Value
不能完整保留任务要求的:
Font Color
Background Color
Style
结果:
工具看起来能运行
但关键属性已经丢失
↓
任务失败
有 Tool Experience 后,过去的经验告诉 Agent:
涉及 Excel 样式时
需要使用 openpyxl 等能够读取 Workbook Style 的接口
于是新工具会显式处理:
cell.font
cell.fill
font color
background color
最终成功完成任务。
这个案例很好地说明:
Experience Memory 的价值不是"把旧工具复制过来",而是把过去 Debug
得到的实现原则迁移到新工具生成过程中。
二十八、Single-Task Self-Evolving:Memory 能否持续积累?
作者进一步测试:
同一任务持续执行
比较:
Without Initial Memory
vs
With Prior Memory
论文 Figure 3 显示,使用前面轮次积累的 Memory 初始化 Agent
后,后续任务表现持续更好。

图源:Cheng et al., 2026,Figure 3。
该图说明 Mem²Evolve 的 Memory
不是只对单个任务有效,而可以随着同一任务序列持续积累,使后续执行从已有资产和经验出发。
这说明系统形成的是:
Task 1
↓
Asset + Experience
Task 2
↓
Reuse + New Experience
Task 3
↓
Reuse + Expand
...
而不是每个 Episode 都重新初始化。
二十九、Cross-Task Evolution:GAIA 的经验能不能帮助其他任务?
更有意思的是 Cross-Task Setting。
作者使用:
GAIA 上积累的异构 Memory
去初始化其他任务。
如果 Memory 只是非常具体的任务缓存,那么:
GAIA Memory
→ AIME / HotpotQA / 其他任务
可能没有帮助,甚至产生 Negative Transfer。
但论文 Figure 4 显示:

使用 GAIA 中积累的 Memory
初始化后,在不同任务上依然能够获得稳定提升,并接近同任务 Memory
初始化的表现。
这意味着 Memory 中存在一定的:
Transferable Experience
+
Reusable Assets
例如:
文件解析经验
Web 信息验证经验
通用计算工具
结构化数据处理工具
都可以跨任务使用。
三十、这篇论文的"Memory"与 A-MEM / Mem0 不太一样
Mem0 更像:
User / Agent Facts
↓
Add / Update / Delete
A-MEM 更像:
Memory Note
↓
Dynamic Linking
↓
Knowledge Network
Mem²Evolve 则是:
Memory
│
├── Experience Memory
│ └── “我学到了什么”
│
└── Asset Memory
└── “我现在真正会做什么”
尤其 Asset Memory 已经不只是:
Knowledge
而是:
Executable Capability
这让"记忆"的定义从:
Past Information
扩展到了:
Persistent Agent Structure
三十一、与 Agentic Plan Caching 的区别
APC 保存的是:
Successful Trajectory
↓
Plan Template
↓
未来相似任务复用
它更偏向:
Procedural Memory。
Mem²Evolve 则进一步区分:
Experience:
做这类事情有什么策略?
Asset:
真正用什么 Tool / Expert Agent 去做?
因此可以理解为:
APC:
复用“计划”
Mem²Evolve:
复用“经验”
+
复用“能力”
+
能力不足时继续创造新能力
Mem²Evolve 的 Evolution Loop 更完整。
三十二、与 MAGMA 的区别
MAGMA 的重点是:
历史事件已经存在
↓
如何根据 Query 找到正确关系路径?
所以它解决:
Memory Retrieval Structure
Mem²Evolve 的重点则是:
执行任务
↓
产生经验
↓
创建新能力
↓
验证并永久保存
↓
继续演化
所以它解决:
Memory-Driven Agent Evolution
简单来说:
MAGMA:
怎么找到过去?
Mem²Evolve:
怎么让过去改变未来的能力边界?
三十三、与 3DLLM-Mem 的区别
3DLLM-Mem 保存的是:
Spatial-Temporal Episodic Memory
主要回答:
过去在哪里看到什么?
环境后来怎么变化?
Mem²Evolve 保存的是:
Strategic Experience
+
Executable Assets
主要回答:
过去学到了什么?
以后应该怎么做?
我现在拥有哪些可以复用的能力?
因此:
3DLLM-Mem:
Episodic / State Memory
Mem²Evolve:
Experience + Capability Memory
三十四、我认为这篇论文最重要的启发:Memory 可以改变 Agent 的结构
过去很多 Agent Memory 架构是:
Agent
│
├── LLM
├── Tool Set
└── Memory
其中:
Memory
只是给 LLM 增加上下文。
Mem²Evolve 则开始形成:
Memory
↓
指导 Tool Creation
↓
Tool 写入 Asset Memory
↓
Agent Capability Space 改变
也就是说:
Memory 不再只是 Agent 的输入,而开始成为修改 Agent
自身结构的依据。
这其实是 Self-Evolving Agent 与普通 Memory Agent 的重要分界。
三十五、对 Coding Agent 的启发
这个思路非常适合代码开发 Agent。
可以把 Memory 设计成:
Experience Memory
│
├── Debug Experience
├── Framework Pitfalls
├── Dependency Experience
├── Test Strategy
└── Failure-Fix Pairs
Asset Memory
│
├── Skills
├── Scripts
├── MCP Tools
├── Specialized Agents
└── Reusable Workflows
例如第一次遇到:
Playwright Chromium 下载太慢
Agent 最终发现:
网络问题
↓
使用代理
↓
配置 PLAYWRIGHT_DOWNLOAD_HOST
或复用本地 Browser
这次任务结束后,不应该只保存:
“Playwright 下载慢”
而应该形成:
Experience Memory
Title:
远程 GPU 环境 Browser Binary 下载失败
Use Case:
AutoDL / Docker / 中国大陆网络环境
Experience:
先检查网络和代理;
避免重复下载;
优先检测系统是否已有 Chromium;
下载过程需要可恢复。
Asset Memory
browser-env-check.sh
proxy-on
chromium-launcher
以后 Agent 再遇到类似任务:
先复用 Asset
↓
能力不够
↓
使用 Experience 创建新 Asset
这比简单的向量记忆更接近真正的:
Agent Learning
三十六、对 Skill 系统的启发
如果一个 Agent 本身支持 Skill:
.md
+
yaml
+
script
+
tool
那么 Asset Memory 几乎可以直接映射为:
Skill Library
完整流程可以变成:
执行任务
↓
发现能力缺口
↓
搜索已有 Skill
↓
没有
↓
根据 Experience 生成 Skill
↓
测试 Skill
↓
修复
↓
注册 Skill
↓
未来自动发现并复用
而 Experience Memory 则可以负责:
什么时候应该调用这个 Skill?
这个 Skill 有哪些坑?
哪些环境下不能用?
之前失败过什么?
因此:
Mem²Evolve 的双记忆思想非常适合 Agent Skill 自进化。
三十七、Experience 与 Asset 应该双向链接
论文逻辑已经体现了二者协同,但实际工程中还可以进一步让两类 Memory
显式关联。
例如:
{
"asset_id": "excel_style_parser_v3",
"derived_from_experience": [
"exp_excel_style_001",
"exp_openpyxl_color_003"
],
"success_count": 17,
"failure_count": 2,
"verified": true
}
反过来 Experience 也可以记录:
{
"experience_id": "exp_excel_style_001",
"related_assets": [
"excel_style_parser_v2",
"excel_style_parser_v3"
],
"source_tasks": [
"task_128",
"task_141"
]
}
这样 Agent 就可以回答:
这个 Tool 为什么这样实现?
它来自哪些失败经验?
哪些经验已经被哪些 Asset 消化?
这会让 Self-Evolution 更可追溯。
三十八、我认为还可以加入 Capability Graph
Asset Memory 当前主要是:
Agent Bank
+
Tool Bank
但随着资产数量增加:
100 Tools
500 Tools
1000 Tools
单纯相似度搜索会逐渐出现问题。
可以进一步构建:
Capability Graph
例如:
Spreadsheet Processing
│
├── CSV Parser
├── Excel Value Parser
├── Excel Style Parser
└── Formula Evaluator
以及:
Excel Style Parser
requires
↓
openpyxl
Report Generator
uses
↓
Excel Style Parser
这样 Asset Memory 就不仅是"仓库",而成为:
Capability Structure
这与 MAGMA 的结构化记忆思想可以进一步结合。
三十九、局限性
1. Self-Evolution 仍然依赖强 LLM
整个系统很多关键步骤都需要 LLM:
Task Planning
Asset Creation
Reflection
Critique
Experience Distillation
Self-Correction
因此所谓:
Self-Evolving
并不意味着系统摆脱了基础模型能力。
如果基础模型本身:
不会写可靠代码
不会判断失败原因
不会抽象经验
那么 Memory Loop 也可能不断积累低质量内容。
2. 自动验证并不能保证工具真正可靠
Unit Test 是重要改进,但:
LLM 自己生成 Tool
+
LLM 自己生成 Test
仍可能存在:
测试覆盖不足
错误假设一致
隐藏边界条件
也就是说:
Pass Unit Test
≠
Production Ready
如果 Asset Memory 真正长期复用,应该进一步记录:
Test Coverage
Runtime Environment
Dependency Version
Failure Statistics
Confidence
3. Asset Memory 会不断膨胀
随着 Agent 持续演化:
Tool ↑
Agent ↑
Experience ↑
会出现:
重复 Tool
功能重叠
旧版本
过时依赖
低价值 Experience
冲突经验
论文重点讨论:
Creation
+
Persistence
但对长期:
Merge
Prune
Forget
Deprecate
Versioning
涉及相对较少。
这可能成为真正 Lifelong Agent 的核心工程问题。
4. Experience Distillation 可能丢失上下文
把完整轨迹:
τ
压缩成:
Title
Description
Use Case
Content
虽然便于检索,但也意味着信息压缩。
如果 Reflection 错误:
错误归因
↓
写入 Experience Memory
↓
以后持续指导 Tool Creation
错误可能被放大。
因此最好加入:
Source Trajectory
Evidence
Confidence
Validation Count
而不是把蒸馏结果当成绝对事实。
5. 动态代码创建存在安全问题
Agent 可以:
生成 Tool
↓
执行 Tool
↓
持久化 Tool
这天然带来:
任意代码执行
文件系统访问
网络访问
凭据泄露
依赖污染
供应链风险
论文使用 Sandbox 进行代码执行,这本身也说明真实部署必须建立严格的:
Permission
Sandbox
Audit
Resource Limit
机制。
四十、未来可以怎么扩展?
我认为可以沿以下方向继续发展:
1. Asset Versioning
2. Experience Confidence
3. Capability Graph
4. Memory Pruning
5. Asset Deprecation
6. Experience Conflict Resolution
7. Cross-Agent Asset Sharing
8. Skill Marketplace
9. Learned Retrieval Policy
10. Capability Evaluation
尤其值得研究的是:
什么时候应该继续复用旧
Asset,什么时候应该修改它,什么时候应该创建全新的 Asset?
当前主要依赖:
Similarity Threshold δ
但未来可以让 Agent 学习一个更完整的策略:
Reuse
Modify
Compose
Create
Discard
这会比简单:
Reuse / Create
更接近真正的软件工程式能力演化。
四十一、放到整个 Agent Memory 系列里怎么看?
结合前面阅读的工作,可以看到 Agent Memory 正在逐渐扩展:
Mem0
↓
事实如何增删改?
A-MEM
↓
记忆如何形成动态关联?
MAGMA
↓
如何按语义 / 时间 / 因果 / 实体关系检索?
3DLLM-Mem
↓
如何记住物理世界中的长期时空状态?
Agentic Plan Caching
↓
如何把成功轨迹变成可复用计划?
Mem²Evolve
↓
如何让经验进一步改变 Agent 的能力结构?
因此,Mem²Evolve 的位置比较特殊。
它已经不只是:
Memory System
而开始进入:
Memory
+
Skill
+
Tool
+
Agent Architecture
+
Self-Evolution
的交叉区域。
四十二、我的理解和启发
1. 真正的 Agent 学习应该同时积累"经验"和"能力"
如果系统只保存 Experience:
知道应该怎么做
但没有工具
依然可能失败。
如果系统只保存 Asset:
有很多工具
但不知道什么时候用
也不知道过去为什么失败
同样不够。
更完整的 Agent Memory 应该至少区分:
Declarative Memory:
知道什么
Episodic Memory:
发生过什么
Procedural / Experience Memory:
应该怎么做
Capability / Asset Memory:
真正能调用什么
Mem²Evolve 最重要的贡献之一,就是把最后两类明确连接起来。
2. Experience 的价值应该通过未来行为验证
一条 Experience 写入 Memory 后,不应该永久认为它正确。
更合理的是记录:
使用次数
成功次数
失败次数
最后验证时间
适用任务
相关 Asset
例如:
{
"experience": "Excel 样式读取优先使用 openpyxl",
"used": 21,
"success": 19,
"failure": 2,
"confidence": 0.91
}
这会让 Experience Memory 从:
LLM Reflection Notes
逐渐变成:
Empirically Validated Knowledge
3. Asset Memory 很适合与 Skill Registry 结合
对于实际 Coding Agent,可以让:
Asset Memory
直接映射:
Tool Registry
Skill Registry
MCP Server
Agent Registry
Workflow Registry
而 Experience Memory 负责:
Skill Selection
Tool Creation Guidance
Failure Avoidance
Task Strategy
这样 Agent 的长期学习就不再只是:
Prompt 越来越长
而是:
真正能够使用的能力越来越丰富。
4. Self-Evolution 最终需要"遗忘"
如果 Agent 永远:
只 Add
不 Delete
最终会出现:
Memory Pollution
Capability Redundancy
Version Conflict
Retrieval Noise
所以真正完整的 Self-Evolving Loop 应该是:
Create
↓
Use
↓
Evaluate
↓
Improve
↓
Merge
↓
Prune
↓
Deprecate
而不仅是:
Create
↓
Store
这也是 Mem²Evolve 后续最值得继续研究的方向之一。
四十三、总结
Mem²Evolve 提出了一种面向 Self-Evolving Agent
的能力—经验共同演化框架。
它首先指出,现有方法主要分为两类:
Experience-Centric Evolution
能够积累经验,却受到静态 Tool Set 的能力边界限制;
以及:
Capability-Centric Evolution
能够动态创建 Tool 或 Expert
Agent,却缺少过去经验指导,容易重复失败并产生不稳定的新能力。
Mem²Evolve 因此设计了双记忆机制:
Asset Memory
+
Experience Memory
其中 Asset Memory 包含:
Agent Bank
+
Tool Bank
用于保存经过验证、可以直接复用的能力。
Experience Memory 包含:
Agent Experience
+
Tool Experience
用于保存从成功和失败轨迹中蒸馏出的策略、实现经验、Anti-Pattern 和
Failure-Fix Pair。
在 Forward Inference 阶段,系统遵循:
Reuse First, Create on Demand
先从 Asset Memory 招募已有能力;如果当前 Subtask 超出能力边界,则结合
Experience Memory 与外部信息动态创建新的 Tool / Expert Agent。
任务结束后,系统执行 Backward Evolution:
Judge
↓
Critique
↓
验证 / 修复新 Asset
↓
写入 Asset Memory
同时
Trajectory
↓
Reflection
↓
成功经验 / 失败经验
↓
写入 Experience Memory
于是形成:
能力扩展
↓
完成更多任务
↓
获得更多经验
↓
经验指导下一次能力扩展
↓
更加稳定地创造新能力
的 Co-Evolution Loop。
实验中,Mem²Evolve 在 6 类任务、8 个 Benchmark 上取得:
Average Pass@1 = 70.24
相比最强 Experience-Centric Baseline AFLOW:
+11.80
相比最强 Capability-Centric Baseline Alita:
+6.46
在 GAIA 上更从 GPT-5-Chat ReAct 的:
18.47
提升到:
76.31
提升:
57.84 个百分点。
消融实验进一步表明,动态 Tool Creation
是最重要的能力扩展模块;移除后平均 Pass@1 从 70.24 降至 59.96。
而 Experience-Guided Asset Creation 则显著提高了新工具的可靠性:平均
First-Pass Validity 从 53.1% 提升到 72.4%,平均修复轮数从 1.01 降低到
0.48。
因此,这篇论文真正值得记住的并不是简单的"双 Memory"。
它提出的是一个更重要的 Agent Memory 方向:
记忆不应该只帮助 Agent 回忆过去,还应该能够改变 Agent
未来真正拥有的能力。
如果用一句话概括 Mem²Evolve:
Mem²Evolve 通过 Asset Memory 保存"已经学会的能力",通过 Experience
Memory保存"过去学到的经验",再让经验指导新能力创建、新能力产生新的经验,从而把
Agent Memory 从被动的信息存储升级为驱动 Agent
持续自进化的能力—经验闭环。
参考资料
- Cheng Z, Liu Z, Shan Y, et al. Mem²Evolve: Towards Self-Evolving
Agents via Co-Evolutionary Capability Expansion and Experience
Distillation. ACL,
2026. - Mem²Evolve 项目主页
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)