【论文阅读】Agent 记忆机制(43):Mem²Evolve——让经验与能力在双记忆中共同进化

文章目录

  • 前言
  • 零、论文基本信息
  • [一、背景:Self-Evolving Agent 到底在"进化"什么?](#一、背景:Self-Evolving Agent 到底在"进化"什么?)
    • [1. 普通 Agent 的能力边界基本是人为定义的](#1. 普通 Agent 的能力边界基本是人为定义的)
    • [2. Experience-Centric Evolution:经验越来越多,但能力边界不变](#2. Experience-Centric Evolution:经验越来越多,但能力边界不变)
    • [3. Capability-Centric Evolution:能创造工具,但每次都像重新开始](#3. Capability-Centric Evolution:能创造工具,但每次都像重新开始)
  • [二、Mem²Evolve 的核心视角:能力与经验应该共同演化](#二、Mem²Evolve 的核心视角:能力与经验应该共同演化)
  • [三、为什么叫 Mem²Evolve?](#三、为什么叫 Mem²Evolve?)
    • [Experience Memory 成功策略、失败模式、实现经验 指导任务执行与新资产创建](#Experience Memory 成功策略、失败模式、实现经验 指导任务执行与新资产创建)
  • [四、整体架构:Forward Inference + Backward Evolution](#四、整体架构:Forward Inference + Backward Evolution)
  • [五、Asset Memory:保存 Agent 真正拥有的能力](#五、Asset Memory:保存 Agent 真正拥有的能力)
    • [1. Asset Memory 的组成](#1. Asset Memory 的组成)
    • [2. Agent Bank:保存专家 Agent](#2. Agent Bank:保存专家 Agent)
  • [ m_{\\mathrm{agt}}](# m_{\mathrm{agt}})
    • [3. Tool Bank:保存真正可执行的工具](#3. Tool Bank:保存真正可执行的工具)
  • [ m_{\\mathrm{tool}}](# m_{\mathrm{tool}})
  • [六、Experience Memory:保存从成功和失败中蒸馏出的经验](#六、Experience Memory:保存从成功和失败中蒸馏出的经验)
  • [七、Agent Experience:保存任务执行策略](#七、Agent Experience:保存任务执行策略)
  • [八、Tool Experience:保存"工具应该怎么造"](#八、Tool Experience:保存"工具应该怎么造")
  • [九、为什么一定需要两类 Memory?](#九、为什么一定需要两类 Memory?)
  • [十、Forward Inference:Reuse First, Create on Demand](#十、Forward Inference:Reuse First, Create on Demand)
  • [十一、第一阶段:Task Planning](#十一、第一阶段:Task Planning)
  • [十二、第二阶段:Asset Recruitment](#十二、第二阶段:Asset Recruitment)
  • [十三、能力不足时:Experience-Guided Asset Creation](#十三、能力不足时:Experience-Guided Asset Creation)
  • 十四、第三阶段:Execution
  • [十五、Backward Evolution:把一次任务变成长期能力](#十五、Backward Evolution:把一次任务变成长期能力)
  • [十六、Asset Memory Evolution:新工具不能"生成完就入库"](#十六、Asset Memory Evolution:新工具不能"生成完就入库")
  • [ m\^{\\mathrm{final}}](# m^{\mathrm{final}})
  • [十七、Experience Memory Evolution:成功和失败都值得记](#十七、Experience Memory Evolution:成功和失败都值得记)
  • [ e\^{\\mathrm{new}}](# e^{\mathrm{new}})
  • [十八、完整的 Co-Evolution 闭环](#十八、完整的 Co-Evolution 闭环)
  • [十九、与"普通 Agent Memory"最大的区别](#十九、与"普通 Agent Memory"最大的区别)
  • 二十、实验设置
  • 二十一、对比方法
    • [1. Naive LLM](#1. Naive LLM)
    • [2. Experience-Centric Evolving](#2. Experience-Centric Evolving)
    • [3. Capability-Centric Evolving](#3. Capability-Centric Evolving)
  • 二十二、主实验结果
    • [**Mem²Evolve** **76.31** **94.31** **60.80** **82.00** **76.70** **73.33** **59.25** **39.20** **70.24**](#Mem²Evolve 76.31 94.31 60.80 82.00 76.70 73.33 59.25 39.20 70.24)
  • [二十三、为什么 GAIA 上的提升特别大?](#二十三、为什么 GAIA 上的提升特别大?)
  • [二十四、消融实验:最重要的竟然是 Tool Creation](#二十四、消融实验:最重要的竟然是 Tool Creation)
  • [二十五、Experience Memory 不是装饰:移除后同样下降](#二十五、Experience Memory 不是装饰:移除后同样下降)
  • [二十六、Experience-Guided Tool Creation:经验到底帮了多少?](#二十六、Experience-Guided Tool Creation:经验到底帮了多少?)
      • [First-Pass Validity](#First-Pass Validity)
      • [Avg. Improve Iter.](#Avg. Improve Iter.)
  • [二十七、Excel 案例:为什么 Experience-Guided Creation 有效?](#二十七、Excel 案例:为什么 Experience-Guided Creation 有效?)
  • [二十八、Single-Task Self-Evolving:Memory 能否持续积累?](#二十八、Single-Task Self-Evolving:Memory 能否持续积累?)
  • [二十九、Cross-Task Evolution:GAIA 的经验能不能帮助其他任务?](#二十九、Cross-Task Evolution:GAIA 的经验能不能帮助其他任务?)
  • [三十、这篇论文的"Memory"与 A-MEM / Mem0 不太一样](#三十、这篇论文的"Memory"与 A-MEM / Mem0 不太一样)
  • [三十一、与 Agentic Plan Caching 的区别](#三十一、与 Agentic Plan Caching 的区别)
  • [三十二、与 MAGMA 的区别](#三十二、与 MAGMA 的区别)
  • [三十三、与 3DLLM-Mem 的区别](#三十三、与 3DLLM-Mem 的区别)
  • [三十四、我认为这篇论文最重要的启发:Memory 可以改变 Agent 的结构](#三十四、我认为这篇论文最重要的启发:Memory 可以改变 Agent 的结构)
  • [三十五、对 Coding Agent 的启发](#三十五、对 Coding Agent 的启发)
      • [Experience Memory](#Experience Memory)
      • [Asset Memory](#Asset Memory)
  • [三十六、对 Skill 系统的启发](#三十六、对 Skill 系统的启发)
  • [三十七、Experience 与 Asset 应该双向链接](#三十七、Experience 与 Asset 应该双向链接)
  • [三十八、我认为还可以加入 Capability Graph](#三十八、我认为还可以加入 Capability Graph)
  • 三十九、局限性
    • [1. Self-Evolution 仍然依赖强 LLM](#1. Self-Evolution 仍然依赖强 LLM)
    • [2. 自动验证并不能保证工具真正可靠](#2. 自动验证并不能保证工具真正可靠)
    • [3. Asset Memory 会不断膨胀](#3. Asset Memory 会不断膨胀)
    • [4. Experience Distillation 可能丢失上下文](#4. Experience Distillation 可能丢失上下文)
    • [5. 动态代码创建存在安全问题](#5. 动态代码创建存在安全问题)
  • 四十、未来可以怎么扩展?
  • [四十一、放到整个 Agent Memory 系列里怎么看?](#四十一、放到整个 Agent Memory 系列里怎么看?)
  • 四十二、我的理解和启发
    • [1. 真正的 Agent 学习应该同时积累"经验"和"能力"](#1. 真正的 Agent 学习应该同时积累"经验"和"能力")
    • [2. Experience 的价值应该通过未来行为验证](#2. Experience 的价值应该通过未来行为验证)
    • [3. Asset Memory 很适合与 Skill Registry 结合](#3. Asset Memory 很适合与 Skill Registry 结合)
    • [4. Self-Evolution 最终需要"遗忘"](#4. Self-Evolution 最终需要"遗忘")
  • 四十三、总结
  • 参考资料

前言

前面阅读的 Agent 记忆工作,大多在回答一个问题:

Agent 应该怎样保存、组织和召回过去的信息?

例如:

  • Mem0 关注记忆的新增、更新和删除;
  • A-MEM 关注记忆之间如何动态建立关联;
  • MAGMA
    将长期经历组织成语义、时间、因果和实体多图,并根据查询意图选择关系;
  • 3DLLM-Mem 将长期记忆扩展到具身环境,用 Working Memory 查询并融合历史
    3D Episodic Memory;
  • Agentic Plan Caching 则进一步开始保存和复用历史任务中形成的计划。

这些工作虽然都在增强 Agent 的长期能力,但大部分情况下,Agent

能力边界本身仍然相对固定

例如,一个 Agent 当前只有:

text 复制代码
Web Search
Calculator
Python

那么它可以:

text 复制代码
积累更多经验
优化 Prompt
记住失败案例
复用成功轨迹

但如果未来任务需要:

text 复制代码
解析带颜色格式的 Excel
转录特殊音频
操作一个此前没有接口的网站
处理一种新的文件格式

单纯"记住更多经验"并不能凭空产生新的工具。

另一条 Self-Evolving Agent 路线因此选择:

text 复制代码
遇到新任务
   ↓
动态创建 Tool / Expert Agent
   ↓
扩展能力边界

但这里又会出现另一个问题:

如果每次创建新工具都从零开始,那么过去踩过的坑为什么还要再踩一次?

例如,Agent 曾经处理过一个 Excel 任务,并发现:

text 复制代码
pandas.read_excel()

能够读取单元格内容,却无法完整保留任务所需的颜色、字体等样式信息。

如果这个失败经验没有沉淀下来,下次遇到类似任务,Agent 很可能再次:

text 复制代码
生成 pandas 方案
   ↓
丢失颜色信息
   ↓
任务失败
   ↓
重新 Debug

Mem²Evolve 认为,现有 Self-Evolving Agent 实际上存在两条彼此割裂的路线:

text 复制代码
Experience-Centric Evolution
记住过去怎么做
但能力空间基本固定

Capability-Centric Evolution
动态创造新能力
但创建过程缺少历史经验指导

而真正持续的 Agent 自进化应该形成一个闭环:

text 复制代码
能力扩展
   ↓
能够完成更多任务
   ↓
产生新的成功 / 失败经验
   ↓
经验被蒸馏
   ↓
指导下一次能力扩展
   ↓
创造更可靠的新能力

因此,这篇论文真正想解决的问题不是:

怎样让 Agent 拥有更多 Memory?

而是:

怎样让"经验积累"和"能力扩展"互相促进,使 Agent
的能力与经验一起持续演化?

作者据此提出 Mem²Evolve,使用两类长期记忆:

text 复制代码
Asset Memory
+
Experience Memory

其中:

  • Asset Memory 保存 Agent 已经获得的"能力",包括可执行工具和专家
    Agent;
  • Experience Memory
    保存任务执行和资产创建过程中蒸馏出的成功经验、失败模式和实现建议。

在执行新任务时,系统遵循:

text 复制代码
Reuse First, Create on Demand

优先复用已有能力;只有当前能力不足时才动态创建新的 Tool 或 Expert

Agent。

任务结束后,再通过 Backward Evolution:

text 复制代码
验证 / 修复新资产
+
蒸馏成功与失败经验
+
写回双记忆

从而形成一个持续的 Capability--Experience Co-Evolution 闭环。

如果用一句话概括这篇论文的核心增量:

Mem²Evolve 不再把"经验记忆"和"能力创建"看成两套独立机制,而是通过
Asset Memory 与 Experience Memory
的双记忆闭环,让过去经验指导新工具/专家的创建,再让新能力产生的轨迹继续反哺经验,实现能力与经验的共同演化。


零、论文基本信息


一、背景:Self-Evolving Agent 到底在"进化"什么?

1. 普通 Agent 的能力边界基本是人为定义的

传统 Tool-Augmented Agent 通常由开发者提前配置:

text 复制代码
LLM
+
Prompt
+
Tool Set
+
Agent Roles

例如:

text 复制代码
Search Agent
  ├── Web Search
  └── Browser

Code Agent
  ├── Python
  └── Shell

Agent 可以在这些能力范围内进行推理和工具调用,但:

text 复制代码
Capability Space

基本在系统部署时就已经确定。

当任务超出已有能力时,Agent

即使"知道自己不会",也不一定能够创造出缺失的能力。


2. Experience-Centric Evolution:经验越来越多,但能力边界不变

第一类 Self-Evolving Agent 主要通过经验积累提升能力。

典型流程:

text 复制代码
执行任务
   ↓
得到成功 / 失败轨迹
   ↓
反思
   ↓
抽取策略
   ↓
写入 Memory
   ↓
未来任务召回

这类方法可以让 Agent 学会:

text 复制代码
哪些推理方式有效?
哪些操作容易失败?
以前类似任务怎么解决?

但论文指出,它们通常依赖一个预先定义的静态 Tool Set。

因此:

text 复制代码
Experience ↑

并不等于:

text 复制代码
Capability Boundary ↑

如果任务需要一个系统里根本不存在的工具,仅仅增加经验并不能解决能力缺口。


3. Capability-Centric Evolution:能创造工具,但每次都像重新开始

另一类方法允许 Agent:

text 复制代码
Dynamic Tool Creation
Dynamic Expert Agent Creation

例如:

text 复制代码
发现需要处理 PDF
   ↓
生成 PDF Parser

发现需要特殊数学计算
   ↓
生成计算工具

发现任务需要专业领域角色
   ↓
创建 Expert Agent

这让 Agent 能够突破初始能力边界。

但问题是:

新能力往往是从零生成的。

系统没有充分利用过去已经验证过的:

text 复制代码
实现模式
Debug 经验
失败原因
任务策略

于是能力扩展可能表现为:

text 复制代码
创建
↓
失败
↓
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 的核心关系可以写成:

text 复制代码
Capability Expansion
        ↓
完成原来无法完成的任务
        ↓
产生新的 Execution Trajectory
        ↓
Experience Distillation
        ↓
形成可复用经验
        ↓
指导下一轮 Capability Expansion
        ↓
更可靠地创建 Tool / Expert Agent

作者将这种机制称为:

Co-Evolutionary Capability Expansion and Experience Distillation。

这里最重要的变化是:

text 复制代码
过去:
Memory 是 Agent 的辅助模块

Mem²Evolve:
Memory 直接参与 Agent 能力空间的演化

三、为什么叫 Mem²Evolve?

论文设计了两类相互配合的 Memory:

text 复制代码
M_A:Asset Memory
M_E:Experience Memory

因此:

text 复制代码
Mem²
≈
Two Memories

但这两类 Memory 保存的内容完全不同。

可以先用一句话区分:

text 复制代码
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。

整个流程可以整理为:

text 复制代码
                    用户任务 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
          └─────┬─────┘
                ↓
             下一任务

因此系统不是简单:

text 复制代码
Retrieve → Answer

而是:

text 复制代码
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 的能力资产分为两类:

text 复制代码
Asset Memory
│
├── Agent Bank
│   └── Expert Agents
│
└── Tool Bank
    └── Executable Tools

2. Agent Bank:保存专家 Agent

一个专家 Agent 可以表示为:

text 复制代码
角色
专业能力
行为建议
可用工具

论文中的 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 可以调用的工具。 例如: ```text 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:输入输出文档。 例如: ```text 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 回答: ```text "我拥有什么能力?" ``` Experience Memory 回答: ```text "我过去学到了什么?" ``` 论文定义: 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 主要来自: ```text Execution Trajectory + Reflection ``` 它不是保存整条轨迹,而是抽象出: ```text Strategic Insight ``` 例如一次复杂信息检索任务成功后,可以形成: ```text Title: 多来源事实验证 Use Case: 需要从多个网页组合答案的任务 Experience: 不要在找到第一个候选答案后立即停止; 先收集多个独立来源,再检查时间、实体和数值是否一致。 ``` 未来新的 Expert Agent 执行类似任务时,可以直接使用这些经验。 因此: ```text Raw Trajectory ↓ Reflection ↓ Strategic Experience ``` 实际上是一种 Experience Distillation。 *** ** * ** *** ## 八、Tool Experience:保存"工具应该怎么造" 这是 Mem²Evolve 最有意思的部分之一。 Tool Experience 不保存工具本身,而保存: ```text Implementation Guideline Debugging Lesson Failure Pattern ``` 例如: ```text 任务: 读取 Excel 中红色单元格 第一次工具: pandas.read_excel() 结果: 可以读取文本 但颜色信息丢失 修复: 使用 openpyxl 读取 cell.fill / font.color 最终经验: 涉及 Excel 样式属性时, 不要只使用 pandas; 需要使用能够访问 Workbook 样式对象的库。 ``` 这条内容写入: ```text Tool Experience ``` 以后创建新的 Excel Tool 时,就可以先召回它。 因此: ```text Asset Memory: 保存"已经造好的工具" Tool Experience: 保存"怎样更好地造工具" ``` 这两者不能互相替代。 *** ** * ** *** ## 九、为什么一定需要两类 Memory? 假设 Agent 已经成功实现过: ```text parse_excel_with_styles ``` 未来遇到完全相同的任务: ```text 直接从 Asset Memory 复用工具 ``` 效率最高。 但如果新任务变成: ```text 解析 PowerPoint 中具有特殊颜色的文本 ``` 原来的 Excel Tool 不能直接复用。 此时真正有价值的可能不是工具本身,而是: ```text "不要使用会丢失样式信息的高层解析接口" ``` 这种更抽象的经验可以迁移到新的 Tool Creation。 所以: ```text Asset Memory → Capability Reuse Experience Memory → Knowledge Transfer ``` 这就是双记忆设计的意义。 *** ** * ** *** ## 十、Forward Inference:Reuse First, Create on Demand Mem²Evolve 在推理阶段采用一个非常工程化的原则: > **Reuse First, Create on Demand。** 即: ```text 先看看自己会不会 ↓ 不会再创造新能力 ``` 而不是每个任务都重新生成工具和 Agent。 Forward Inference 分为: 1. Task Planning; 2. Asset Recruitment; 3. 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} 例如: ```text 用户: 分析这个 Excel, 找到所有黄色单元格中的数值, 计算总和, 再搜索相关行业平均值进行比较。 ``` 可以拆成: ```text 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。 这个公式非常直接: ```text 当前 Subtask ↓ 与已有 Asset 比较 ↓ Similarity ≥ δ ? / \ 是 否 ↓ ↓ Reuse Create ``` 这也是论文所谓: > **Reuse First, Create on Demand。** *** ** * ** *** ## 十三、能力不足时:Experience-Guided Asset Creation 如果 Asset Memory 中没有足够匹配的能力,系统不会直接宣布失败。 而是进入: ```text Create ``` 创建对象可能是: ```text Tool 或 Expert Agent ``` 但这里最重要的是: > **创建过程不是从零开始。** 系统会结合: ```text 当前 Subtask + Web Information + Experience Memory ``` 进行创建。 因此: ```text Create(s_i | M_E, Web) ``` 实际上意味着: ```text 先问: 过去有没有类似的 Tool Creation Experience? 再问: 外部世界有没有需要的新知识? 最后: 生成新的 Capability Asset ``` 这就是 Experience Memory 真正参与 Capability Expansion 的位置。 *** ** * ** *** ## 十四、第三阶段:Execution 准备好 Agent 与 Tool 后,系统使用 ReAct 风格执行任务。 基本循环: ```text Thought ↓ Action ↓ Observation ↓ Thought ↓ Action ↓ ... ``` 最终得到完整轨迹: τ t \\tau_t τt 以及答案: a t a_t at 但 Mem²Evolve 不会在任务完成后直接结束。 因为: > **真正的"进化"发生在任务结束以后。** *** ** * ** *** ## 十五、Backward Evolution:把一次任务变成长期能力 Forward Inference 回答: ```text 这次任务怎么完成? ``` Backward Evolution 回答: ```text 这次任务完成以后,系统应该永久学到什么? ``` 首先,系统使用 LLM-as-a-Judge 对: ```text 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。 随后进入两条演化路径: ```text Backward Evolution │ ├── Asset Memory Evolution │ └── Experience Memory Evolution ``` *** ** * ** *** ## 十六、Asset Memory Evolution:新工具不能"生成完就入库" 这是一个非常值得借鉴的工程设计。 很多 Tool-Creation Agent 的流程是: ```text 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}

如果任务成功: ```text 生成 Unit Test ↓ 验证新 Tool ``` 如果: ```text 任务失败 或 Unit Test 失败 ``` 则进入: ```text Self-Correction Loop ``` 不断: ```text 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。

成功任务

系统抽取:

text 复制代码
成功模式
高层策略
有效工具实现方式
可迁移步骤

也就是:

text 复制代码
Success Generalization

失败任务

系统抽取:

text 复制代码
失败原因
Anti-Pattern
Failure-Fix Pair
以后应该避免什么

也就是:

text 复制代码
Failure Diagnosis

因此 Memory 并不是:

text 复制代码
只记成功案例

而是:

text 复制代码
Success → 怎样重复成功
Failure → 怎样避免再次失败

十八、完整的 Co-Evolution 闭环

现在可以把整个 Mem²Evolve 压缩成一个循环:

text 复制代码
              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 经常是:

text 复制代码
History
↓
Store
↓
Retrieve
↓
Answer

Mem²Evolve 则是:

text 复制代码
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 上评估。

覆盖:

text 复制代码
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

评价指标统一以:

text 复制代码
Pass@1

为主。

主实验使用 GPT-5-chat 作为基础模型。


二十一、对比方法

论文将 Baseline 分成三组。

1. Naive LLM

包括:

text 复制代码
GPT-5-Chat Direct
GPT-5-Chat CoT
GPT-5-Chat ReAct

以及 GAIA 上报告的 OpenAI DeepResearch 结果。

2. Experience-Centric Evolving

包括:

text 复制代码
DyLAN
EvoAgent
AFLOW
DSPy

它们主要通过:

text 复制代码
Prompt / Workflow / Agent Strategy Optimization

增强已有系统。

3. Capability-Centric Evolving

包括:

text 复制代码
Alita
AgentVerse
AutoAgents
SwarmAgentic

它们主要关注:

text 复制代码
动态 Tool / Agent Creation

Mem²Evolve 则试图同时拥有两边:

text 复制代码
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:

text 复制代码
70.24

相比:

text 复制代码
最强 Experience-Centric:
AFLOW = 58.44

最强 Capability-Centric:
Alita = 63.78

分别提高:

text 复制代码
70.24 - 58.44 = 11.80

70.24 - 63.78 = 6.46

论文还指出,相比标准 LLM 配置,最高整体提升达到:

text 复制代码
18.53

二十三、为什么 GAIA 上的提升特别大?

GAIA 是这篇论文最能体现 Capability Expansion 价值的 Benchmark。

Mem²Evolve:

text 复制代码
GAIA Total = 76.31

而 GPT-5-Chat ReAct:

text 复制代码
18.47

差值:

text 复制代码
57.84

即:

+57.84 个百分点。

原因在于 GAIA 中存在大量:

text 复制代码
文件处理
Web Search
计算
多模态信息
特殊格式解析
多工具组合

只依赖一个静态 Tool Set 很容易碰到:

text 复制代码
Capability Boundary

而 Mem²Evolve 可以:

text 复制代码
发现缺失能力
↓
动态创建 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

最明显的结果是:

text 复制代码
移除 Tool Creation
70.24 → 59.96

下降:

text 复制代码
10.28

说明:

真正突破静态 Agent 能力边界的关键,是能够动态获得新的可执行工具。

Expert Agent Creation 也有贡献,但下降只有:

text 复制代码
1.72

在这些 Benchmark 中,Tool Expansion 的价值明显更直接。


二十五、Experience Memory 不是装饰:移除后同样下降

如果去掉 Tool Memory:

text 复制代码
70.24 → 67.11

下降:

text 复制代码
3.13

如果去掉 Agent Memory:

text 复制代码
70.24 → 65.51

下降:

text 复制代码
4.73

这说明:

text 复制代码
Capability Creation

虽然贡献很大,但如果缺少经验指导:

text 复制代码
新能力的创建和使用都会变得更不稳定。

也就是说:

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%

这个实验非常直接地证明了:

text 复制代码
Experience Memory
并不是简单提高最终回答准确率

它还直接提高:

text 复制代码
新能力生成的工程质量

二十七、Excel 案例:为什么 Experience-Guided Creation 有效?

论文给出了一个很直观的案例。

任务需要:

text 复制代码
读取 Excel
+
识别特定颜色单元格

没有 Experience Guidance 时,Agent 创建的 Tool 主要依赖:

text 复制代码
pandas

但 pandas 更偏向读取:

text 复制代码
Cell Value

不能完整保留任务要求的:

text 复制代码
Font Color
Background Color
Style

结果:

text 复制代码
工具看起来能运行
但关键属性已经丢失
↓
任务失败

有 Tool Experience 后,过去的经验告诉 Agent:

text 复制代码
涉及 Excel 样式时
需要使用 openpyxl 等能够读取 Workbook Style 的接口

于是新工具会显式处理:

text 复制代码
cell.font
cell.fill
font color
background color

最终成功完成任务。

这个案例很好地说明:

Experience Memory 的价值不是"把旧工具复制过来",而是把过去 Debug

得到的实现原则迁移到新工具生成过程中。


二十八、Single-Task Self-Evolving:Memory 能否持续积累?

作者进一步测试:

text 复制代码
同一任务持续执行

比较:

text 复制代码
Without Initial Memory
vs
With Prior Memory

论文 Figure 3 显示,使用前面轮次积累的 Memory 初始化 Agent

后,后续任务表现持续更好。

图源:Cheng et al., 2026,Figure 3。

该图说明 Mem²Evolve 的 Memory

不是只对单个任务有效,而可以随着同一任务序列持续积累,使后续执行从已有资产和经验出发。

这说明系统形成的是:

text 复制代码
Task 1
↓
Asset + Experience

Task 2
↓
Reuse + New Experience

Task 3
↓
Reuse + Expand

...

而不是每个 Episode 都重新初始化。


二十九、Cross-Task Evolution:GAIA 的经验能不能帮助其他任务?

更有意思的是 Cross-Task Setting。

作者使用:

text 复制代码
GAIA 上积累的异构 Memory

去初始化其他任务。

如果 Memory 只是非常具体的任务缓存,那么:

text 复制代码
GAIA Memory
→ AIME / HotpotQA / 其他任务

可能没有帮助,甚至产生 Negative Transfer。

但论文 Figure 4 显示:

使用 GAIA 中积累的 Memory

初始化后,在不同任务上依然能够获得稳定提升,并接近同任务 Memory

初始化的表现。

这意味着 Memory 中存在一定的:

text 复制代码
Transferable Experience
+
Reusable Assets

例如:

text 复制代码
文件解析经验
Web 信息验证经验
通用计算工具
结构化数据处理工具

都可以跨任务使用。


三十、这篇论文的"Memory"与 A-MEM / Mem0 不太一样

Mem0 更像:

text 复制代码
User / Agent Facts
↓
Add / Update / Delete

A-MEM 更像:

text 复制代码
Memory Note
↓
Dynamic Linking
↓
Knowledge Network

Mem²Evolve 则是:

text 复制代码
Memory
│
├── Experience Memory
│   └── "我学到了什么"
│
└── Asset Memory
    └── "我现在真正会做什么"

尤其 Asset Memory 已经不只是:

text 复制代码
Knowledge

而是:

text 复制代码
Executable Capability

这让"记忆"的定义从:

text 复制代码
Past Information

扩展到了:

text 复制代码
Persistent Agent Structure

三十一、与 Agentic Plan Caching 的区别

APC 保存的是:

text 复制代码
Successful Trajectory
↓
Plan Template
↓
未来相似任务复用

它更偏向:

Procedural Memory。

Mem²Evolve 则进一步区分:

text 复制代码
Experience:
做这类事情有什么策略?

Asset:
真正用什么 Tool / Expert Agent 去做?

因此可以理解为:

text 复制代码
APC:
复用"计划"

Mem²Evolve:
复用"经验"
+
复用"能力"
+
能力不足时继续创造新能力

Mem²Evolve 的 Evolution Loop 更完整。


三十二、与 MAGMA 的区别

MAGMA 的重点是:

text 复制代码
历史事件已经存在
↓
如何根据 Query 找到正确关系路径?

所以它解决:

text 复制代码
Memory Retrieval Structure

Mem²Evolve 的重点则是:

text 复制代码
执行任务
↓
产生经验
↓
创建新能力
↓
验证并永久保存
↓
继续演化

所以它解决:

text 复制代码
Memory-Driven Agent Evolution

简单来说:

text 复制代码
MAGMA:
怎么找到过去?

Mem²Evolve:
怎么让过去改变未来的能力边界?

三十三、与 3DLLM-Mem 的区别

3DLLM-Mem 保存的是:

text 复制代码
Spatial-Temporal Episodic Memory

主要回答:

text 复制代码
过去在哪里看到什么?
环境后来怎么变化?

Mem²Evolve 保存的是:

text 复制代码
Strategic Experience
+
Executable Assets

主要回答:

text 复制代码
过去学到了什么?
以后应该怎么做?
我现在拥有哪些可以复用的能力?

因此:

text 复制代码
3DLLM-Mem:
Episodic / State Memory

Mem²Evolve:
Experience + Capability Memory

三十四、我认为这篇论文最重要的启发:Memory 可以改变 Agent 的结构

过去很多 Agent Memory 架构是:

text 复制代码
Agent
│
├── LLM
├── Tool Set
└── Memory

其中:

text 复制代码
Memory

只是给 LLM 增加上下文。

Mem²Evolve 则开始形成:

text 复制代码
Memory
↓
指导 Tool Creation
↓
Tool 写入 Asset Memory
↓
Agent Capability Space 改变

也就是说:

Memory 不再只是 Agent 的输入,而开始成为修改 Agent
自身结构的依据。

这其实是 Self-Evolving Agent 与普通 Memory Agent 的重要分界。


三十五、对 Coding Agent 的启发

这个思路非常适合代码开发 Agent。

可以把 Memory 设计成:

text 复制代码
Experience Memory
│
├── Debug Experience
├── Framework Pitfalls
├── Dependency Experience
├── Test Strategy
└── Failure-Fix Pairs

Asset Memory
│
├── Skills
├── Scripts
├── MCP Tools
├── Specialized Agents
└── Reusable Workflows

例如第一次遇到:

text 复制代码
Playwright Chromium 下载太慢

Agent 最终发现:

text 复制代码
网络问题
↓
使用代理
↓
配置 PLAYWRIGHT_DOWNLOAD_HOST
或复用本地 Browser

这次任务结束后,不应该只保存:

text 复制代码
"Playwright 下载慢"

而应该形成:

Experience Memory

text 复制代码
Title:
远程 GPU 环境 Browser Binary 下载失败

Use Case:
AutoDL / Docker / 中国大陆网络环境

Experience:
先检查网络和代理;
避免重复下载;
优先检测系统是否已有 Chromium;
下载过程需要可恢复。

Asset Memory

text 复制代码
browser-env-check.sh
proxy-on
chromium-launcher

以后 Agent 再遇到类似任务:

text 复制代码
先复用 Asset
↓
能力不够
↓
使用 Experience 创建新 Asset

这比简单的向量记忆更接近真正的:

text 复制代码
Agent Learning

三十六、对 Skill 系统的启发

如果一个 Agent 本身支持 Skill:

text 复制代码
.md
+
yaml
+
script
+
tool

那么 Asset Memory 几乎可以直接映射为:

text 复制代码
Skill Library

完整流程可以变成:

text 复制代码
执行任务
↓
发现能力缺口
↓
搜索已有 Skill
↓
没有
↓
根据 Experience 生成 Skill
↓
测试 Skill
↓
修复
↓
注册 Skill
↓
未来自动发现并复用

而 Experience Memory 则可以负责:

text 复制代码
什么时候应该调用这个 Skill?
这个 Skill 有哪些坑?
哪些环境下不能用?
之前失败过什么?

因此:

Mem²Evolve 的双记忆思想非常适合 Agent Skill 自进化。


三十七、Experience 与 Asset 应该双向链接

论文逻辑已经体现了二者协同,但实际工程中还可以进一步让两类 Memory

显式关联。

例如:

json 复制代码
{
  "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 也可以记录:

json 复制代码
{
  "experience_id": "exp_excel_style_001",
  "related_assets": [
    "excel_style_parser_v2",
    "excel_style_parser_v3"
  ],
  "source_tasks": [
    "task_128",
    "task_141"
  ]
}

这样 Agent 就可以回答:

text 复制代码
这个 Tool 为什么这样实现?
它来自哪些失败经验?
哪些经验已经被哪些 Asset 消化?

这会让 Self-Evolution 更可追溯。


三十八、我认为还可以加入 Capability Graph

Asset Memory 当前主要是:

text 复制代码
Agent Bank
+
Tool Bank

但随着资产数量增加:

text 复制代码
100 Tools
500 Tools
1000 Tools

单纯相似度搜索会逐渐出现问题。

可以进一步构建:

text 复制代码
Capability Graph

例如:

text 复制代码
Spreadsheet Processing
│
├── CSV Parser
├── Excel Value Parser
├── Excel Style Parser
└── Formula Evaluator

以及:

text 复制代码
Excel Style Parser
   requires
      ↓
openpyxl

Report Generator
   uses
      ↓
Excel Style Parser

这样 Asset Memory 就不仅是"仓库",而成为:

text 复制代码
Capability Structure

这与 MAGMA 的结构化记忆思想可以进一步结合。


三十九、局限性

1. Self-Evolution 仍然依赖强 LLM

整个系统很多关键步骤都需要 LLM:

text 复制代码
Task Planning
Asset Creation
Reflection
Critique
Experience Distillation
Self-Correction

因此所谓:

text 复制代码
Self-Evolving

并不意味着系统摆脱了基础模型能力。

如果基础模型本身:

text 复制代码
不会写可靠代码
不会判断失败原因
不会抽象经验

那么 Memory Loop 也可能不断积累低质量内容。


2. 自动验证并不能保证工具真正可靠

Unit Test 是重要改进,但:

text 复制代码
LLM 自己生成 Tool
+
LLM 自己生成 Test

仍可能存在:

text 复制代码
测试覆盖不足
错误假设一致
隐藏边界条件

也就是说:

text 复制代码
Pass Unit Test
≠
Production Ready

如果 Asset Memory 真正长期复用,应该进一步记录:

text 复制代码
Test Coverage
Runtime Environment
Dependency Version
Failure Statistics
Confidence

3. Asset Memory 会不断膨胀

随着 Agent 持续演化:

text 复制代码
Tool ↑
Agent ↑
Experience ↑

会出现:

text 复制代码
重复 Tool
功能重叠
旧版本
过时依赖
低价值 Experience
冲突经验

论文重点讨论:

text 复制代码
Creation
+
Persistence

但对长期:

text 复制代码
Merge
Prune
Forget
Deprecate
Versioning

涉及相对较少。

这可能成为真正 Lifelong Agent 的核心工程问题。


4. Experience Distillation 可能丢失上下文

把完整轨迹:

text 复制代码
τ

压缩成:

text 复制代码
Title
Description
Use Case
Content

虽然便于检索,但也意味着信息压缩。

如果 Reflection 错误:

text 复制代码
错误归因
↓
写入 Experience Memory
↓
以后持续指导 Tool Creation

错误可能被放大。

因此最好加入:

text 复制代码
Source Trajectory
Evidence
Confidence
Validation Count

而不是把蒸馏结果当成绝对事实。


5. 动态代码创建存在安全问题

Agent 可以:

text 复制代码
生成 Tool
↓
执行 Tool
↓
持久化 Tool

这天然带来:

text 复制代码
任意代码执行
文件系统访问
网络访问
凭据泄露
依赖污染
供应链风险

论文使用 Sandbox 进行代码执行,这本身也说明真实部署必须建立严格的:

text 复制代码
Permission
Sandbox
Audit
Resource Limit

机制。


四十、未来可以怎么扩展?

我认为可以沿以下方向继续发展:

text 复制代码
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?

当前主要依赖:

text 复制代码
Similarity Threshold δ

但未来可以让 Agent 学习一个更完整的策略:

text 复制代码
Reuse
Modify
Compose
Create
Discard

这会比简单:

text 复制代码
Reuse / Create

更接近真正的软件工程式能力演化。


四十一、放到整个 Agent Memory 系列里怎么看?

结合前面阅读的工作,可以看到 Agent Memory 正在逐渐扩展:

text 复制代码
Mem0
↓
事实如何增删改?

A-MEM
↓
记忆如何形成动态关联?

MAGMA
↓
如何按语义 / 时间 / 因果 / 实体关系检索?

3DLLM-Mem
↓
如何记住物理世界中的长期时空状态?

Agentic Plan Caching
↓
如何把成功轨迹变成可复用计划?

Mem²Evolve
↓
如何让经验进一步改变 Agent 的能力结构?

因此,Mem²Evolve 的位置比较特殊。

它已经不只是:

text 复制代码
Memory System

而开始进入:

text 复制代码
Memory
+
Skill
+
Tool
+
Agent Architecture
+
Self-Evolution

的交叉区域。


四十二、我的理解和启发

1. 真正的 Agent 学习应该同时积累"经验"和"能力"

如果系统只保存 Experience:

text 复制代码
知道应该怎么做
但没有工具

依然可能失败。

如果系统只保存 Asset:

text 复制代码
有很多工具
但不知道什么时候用
也不知道过去为什么失败

同样不够。

更完整的 Agent Memory 应该至少区分:

text 复制代码
Declarative Memory:
知道什么

Episodic Memory:
发生过什么

Procedural / Experience Memory:
应该怎么做

Capability / Asset Memory:
真正能调用什么

Mem²Evolve 最重要的贡献之一,就是把最后两类明确连接起来。


2. Experience 的价值应该通过未来行为验证

一条 Experience 写入 Memory 后,不应该永久认为它正确。

更合理的是记录:

text 复制代码
使用次数
成功次数
失败次数
最后验证时间
适用任务
相关 Asset

例如:

json 复制代码
{
  "experience": "Excel 样式读取优先使用 openpyxl",
  "used": 21,
  "success": 19,
  "failure": 2,
  "confidence": 0.91
}

这会让 Experience Memory 从:

text 复制代码
LLM Reflection Notes

逐渐变成:

text 复制代码
Empirically Validated Knowledge

3. Asset Memory 很适合与 Skill Registry 结合

对于实际 Coding Agent,可以让:

text 复制代码
Asset Memory

直接映射:

text 复制代码
Tool Registry
Skill Registry
MCP Server
Agent Registry
Workflow Registry

而 Experience Memory 负责:

text 复制代码
Skill Selection
Tool Creation Guidance
Failure Avoidance
Task Strategy

这样 Agent 的长期学习就不再只是:

text 复制代码
Prompt 越来越长

而是:

text 复制代码
真正能够使用的能力越来越丰富。

4. Self-Evolution 最终需要"遗忘"

如果 Agent 永远:

text 复制代码
只 Add
不 Delete

最终会出现:

text 复制代码
Memory Pollution
Capability Redundancy
Version Conflict
Retrieval Noise

所以真正完整的 Self-Evolving Loop 应该是:

text 复制代码
Create
↓
Use
↓
Evaluate
↓
Improve
↓
Merge
↓
Prune
↓
Deprecate

而不仅是:

text 复制代码
Create
↓
Store

这也是 Mem²Evolve 后续最值得继续研究的方向之一。


四十三、总结

Mem²Evolve 提出了一种面向 Self-Evolving Agent

的能力---经验共同演化框架。

它首先指出,现有方法主要分为两类:

text 复制代码
Experience-Centric Evolution

能够积累经验,却受到静态 Tool Set 的能力边界限制;

以及:

text 复制代码
Capability-Centric Evolution

能够动态创建 Tool 或 Expert

Agent,却缺少过去经验指导,容易重复失败并产生不稳定的新能力。

Mem²Evolve 因此设计了双记忆机制:

text 复制代码
Asset Memory
+
Experience Memory

其中 Asset Memory 包含:

text 复制代码
Agent Bank
+
Tool Bank

用于保存经过验证、可以直接复用的能力。

Experience Memory 包含:

text 复制代码
Agent Experience
+
Tool Experience

用于保存从成功和失败轨迹中蒸馏出的策略、实现经验、Anti-Pattern 和

Failure-Fix Pair。

在 Forward Inference 阶段,系统遵循:

text 复制代码
Reuse First, Create on Demand

先从 Asset Memory 招募已有能力;如果当前 Subtask 超出能力边界,则结合

Experience Memory 与外部信息动态创建新的 Tool / Expert Agent。

任务结束后,系统执行 Backward Evolution:

text 复制代码
Judge
↓
Critique
↓
验证 / 修复新 Asset
↓
写入 Asset Memory

同时

Trajectory
↓
Reflection
↓
成功经验 / 失败经验
↓
写入 Experience Memory

于是形成:

text 复制代码
能力扩展
↓
完成更多任务
↓
获得更多经验
↓
经验指导下一次能力扩展
↓
更加稳定地创造新能力

的 Co-Evolution Loop。

实验中,Mem²Evolve 在 6 类任务、8 个 Benchmark 上取得:

text 复制代码
Average Pass@1 = 70.24

相比最强 Experience-Centric Baseline AFLOW:

text 复制代码
+11.80

相比最强 Capability-Centric Baseline Alita:

text 复制代码
+6.46

在 GAIA 上更从 GPT-5-Chat ReAct 的:

text 复制代码
18.47

提升到:

text 复制代码
76.31

提升:

text 复制代码
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
持续自进化的能力---经验闭环。


参考资料

相关推荐
TJHHH.1 小时前
SQL注入学习总结
数据库·笔记·sql·学习·注入
Eric.461 小时前
AI 漫剧量产实战:StableDiffusion 帧稳画算法 + ComfyUI 自动质检流水线搭建(附完整代码 + 配置)
人工智能·深度学习·stable diffusion·comfyui·ai漫剧
代码方舟1 小时前
企业级对公银行 KYC 架构:基于天远人脸身份证比对A构建自动化客户尽调网关
运维·人工智能·架构·自动化
xingyun861 小时前
DeepSeek涨价,你换了吗?——AI大模型服务成本与替代方案深度分析
人工智能
程序员cxuan1 小时前
DeepSeek Harness 必装的插件公布了!
人工智能·后端·程序员
Claire_881 小时前
自然语言处理在法律文书生成中的应用:以离婚协议为例的多工具功能对比
人工智能·自然语言处理
樊小肆1 小时前
DeepSeeker-Code源码导读05-计划模式与子Agent
人工智能·agent
办公室马主任1 小时前
乐图数字化打通哪几个环节?从车间数据到经营决策的数据链路设计
大数据·人工智能·系统架构·制造
delishcomcn1 小时前
数字孪生+AI预测:热烫膜分切机迈向“黑灯工厂”的关键路径
大数据·人工智能