← 返回 2026-02-06

MemSkill:为自进化智能体学习和演化记忆技能 MemSkill: Learning and Evolving Memory Skills for Self-Evolving Agents

Haozhen Zhang, Quanyu Long, Jianzhu Bao, Tao Feng, Weizhi Zhang, Haodong Yue, Wenya Wang 📅 2026-02-02 👍 63 2026-07-13 08:35
LLM Agent Memory System Reinforcement Learning Self-Evolving Agent Skill Learning

将记忆操作重构为可学习、可演化的技能库,通过闭环优化实现智能体自进化记忆管理

前置知识

LLM Agent Memory System

LLM 智能体记忆系统是指让大语言模型在长时间、开放式交互中维护外部记忆的技术架构。典型流程包括:从交互历史中提取关键信息存入记忆库,在新查询到来时检索相关记忆条目辅助推理,以及通过合并或剪枝来更新记忆库。现有方法如 MemoryBank、A-MEM、Mem0 等都依赖固定的、人工设计的记忆操作原语(如 add/update/delete/skip),这些硬编码的启发式规则限制了系统的适应性。

MemSkill 的核心贡献就是重新定义了记忆操作的抽象层次,理解现有记忆系统的工作方式是理解本文创新点的前提。

Reinforcement Learning for Sequential Decision

强化学习(RL)是一种通过与环境交互、接收奖励信号来学习最优策略的范式。在本文中,控制器(controller)需要在每个记忆构建步骤中选择一组技能,这是一个序列决策问题。论文使用 PPO(Proximal Policy Optimization)算法来优化控制器,将下游任务性能(如 F1 分数、成功率)作为奖励信号,通过策略梯度方法学习技能选择策略。

理解 RL 和 PPO 的基本原理对于理解控制器如何学习技能选择策略至关重要,特别是 Top-K 无放回抽样的联合概率计算。

Skill-based Agent Architecture

基于技能的智能体架构是一种将智能体行为组织为可复用技能的设计哲学。每个技能是一个结构化的例程,包含用途说明(Purpose)、适用条件(When to use)、应用方法(How to apply)和约束条件(Constraints)。智能体根据当前上下文选择和组合相关技能来完成任务。这种设计在 Web 交互(SkillWeaver)和具身任务中已被证明有效。

MemSkill 借鉴了这一设计哲学来组织记忆操作,将记忆提取/修订/剪枝抽象为可复用的技能,理解这一概念有助于把握论文的核心创新视角。

Self-Evolving Agent

自进化智能体是指能够从交互经验中自主改进自身能力的智能体系统。典型方法包括 ExpeL(从轨迹中蒸馏可编辑的自然语言经验)、EvolveR(将交互固化为可复用原则并通过 RL 更新)、Absolute Zero Reasoner(通过自我博弈进行训练)等。这些系统的核心思想是减少对人工监督的依赖,让智能体通过与环境的交互来持续提升自身能力。

MemSkill 的定位是自进化记忆技能——不仅能学习使用固定技能集,还能持续改进技能库本身,理解自进化智能体的研究背景有助于定位本文的贡献。

Top-K without Replacement Selection

Top-K 无放回抽样是一种从候选集中选择 K 个不同元素的采样策略。在 MemSkill 中,控制器需要从当前技能库中选择 K 个不同的技能(如 K=7)传递给执行器。与标准的单动作选择不同,Top-K 选择的联合概率需要考虑已选技能的条件概率,其数学形式为 $\pi_{\theta}(A_t | h_t) = \prod_{j=1}^{K} \frac{p_{\theta}(a_{t,j} | h_t)}{1 - \sum_{\ell<j} p_{\theta}(a_{t,\ell} | h_t)}$,当 $K=1$ 时退化为标准单动作情况。

这是 MemSkill 控制器优化的技术细节,理解这一抽样机制对于理解 RL 训练过程和 PPO 目标函数的实现至关重要。

研究动机

当前 LLM 智能体记忆系统普遍存在一个根本性问题:几乎所有方法都依赖一组固定的、人工设计的操作原语来管理记忆。例如 MemoryBank 使用固定的提取和更新规则,A-MEM 依赖预定义的聚合机制,Mem0 使用固定的 add/update/delete/skip 操作。这些硬编码的启发式规则存在三方面具体问题。首先,它们将人类先验强加于「什么值得记住」的判断中,导致系统在不同交互模式下缺乏适应性。其次,大多数方法以固定粒度(如逐轮次处理)提取记忆,当面对更长的交互历史时效率下降且信息丢失加剧。第三,记忆构建过程被分解为多个独立的专用模块,每个模块有固定的职责边界,这种设计使得记忆行为无法灵活组合和复用。以 LoCoMo 数据集为例,现有最强基线 MemoryOS 在 LLaMA 上仅达到 L-J 48.64 的分数,而 A-MEM 为 49.71,远未充分利用交互历史中的信息。

本文的目标是本文的具体目标是将记忆操作从固定的过程式工作流提升为可学习、可复用、可演化的技能集合。具体而言,作者希望实现三个目标:(1)最小化对人类先验的依赖,让记忆行为由交互数据驱动并随任务需求演化;(2)支持更大的提取粒度,使系统能够在不同跨度长度上灵活操作而不仅限于逐轮次处理;(3)实现基于技能的组合式记忆构建,通过选择和组合少量相关技能在一步生成中完成记忆提取和修订。在实验层面,MemSkill 在 LoCoMo 上达到 L-J 53.82(LLaMA)和 54.14(Qwen),相比 MemoryOS 提升约 5-11 个百分点,同时将推理时的 LLM 调用次数从 1288 次降低到 215 次(SS=512)。

与已有工作不同的是,本文的独特切入角度在于将记忆构建视为「技能应用」而非「固定操作执行」。已有工作(如 Memory-R1、Mem-$\alpha$)虽然也使用 RL 来优化记忆管理,但它们仍然在固定的、人工定义的操作空间内进行优化——RL 只是学会了更好地使用预定义的操作,而不是改变操作本身。MemSkill 则更进一步,引入了一个「设计师」(Designer)组件,它能够分析训练中的困难案例,对现有技能进行修订并提出新技能。这种闭环优化使得技能库本身也在持续演化,形成了「学习使用技能」和「改进技能」的交替进行。用一个类比来说,已有方法相当于教会一个工人更好地使用固定的工具箱,而 MemSkill 不仅教会工人如何选工具,还让工人自己改进和制造新工具。

核心方法

MemSkill 的整体思路可以用一个类比来理解:想象一个厨师团队处理大量的食材(交互历史)。传统的做法是给厨师一份固定的食谱(人工设计的操作规则),厨师只能按食谱逐步处理食材。而 MemSkill 的做法是建立一个可扩展的技能库(Skill Bank),里面存放着各种「烹饪技巧」——有的擅长切菜,有的擅长调味,有的擅长摆盘。系统维护一个「选择器」(Controller),它根据当前食材的特点和已有的烹饪状态,从技能库中挑选最相关的几个技巧。然后一个「执行器」(Executor,基于 LLM)按照这些技巧的指导在一步中完成食材处理。更关键的是,系统还有一个「设计师」(Designer),它会定期回顾失败的烹饪案例,分析哪些技巧缺失或不够好,然后修订现有技巧或创造新技巧。技术路线上,MemSkill 维护两个存储:一个是特定于交互轨迹的记忆库(Memory Bank),一个是跨轨迹共享的技能库(Skill Bank)。训练过程交替进行「学习使用技能」和「改进技能」两个阶段。

MemSkill 最本质的创新在于将记忆管理从「固定过程」转变为「可演化技能」。这一转变体现在三个层面。在抽象层面,每个记忆技能不再是一个简单的操作标签(如 INSERT/DELETE),而是一个结构化的指导文档,包含用途说明、适用条件、应用方法和约束条件。例如,一个「捕获时间上下文」的技能会详细说明如何识别时间要素(开始时间、结束时间、持续时间、顺序关系),以及如何以简洁具体的方式记录它们。在学习层面,控制器使用 RL 学习技能选择策略,它将状态表示(当前文本跨度嵌入 + 检索到的记忆嵌入)与每个候选技能的表示拼接后通过共享评分器打分,产生 Top-K 的技能选择分布。关键设计是评分器 $f_{\theta}^{score}([h_t; u_i])$ 作用于所有状态-技能对,使得控制器能够适应技能库的动态变化。在演化层面,设计师通过分析困难案例(难度分数 $d(q) = (1 - r(q)) \cdot c(q)$,其中 $r(q)$ 是任务奖励,$c(q)$ 是失败计数),识别记忆行为的缺失或不精确之处,然后提出具体的技能修订和新技能。这种「使用-反馈-改进」的闭环使得技能库能够随训练逐步增强。

方法步骤详情

MemSkill 的完整方法流程如下。第一步,将每个交互轨迹(如一段长对话)按 token 数量分割为固定长度的连续跨度(span)。第二步,对每个跨度,控制器接收当前文本跨度 $x_t$ 和从记忆库中检索到的记忆 $M_t = \{m_{t,1}, \ldots, m_{t,R}\}$,通过嵌入模型 $e(\cdot)$ 编码后,将跨度嵌入与聚合记忆嵌入拼接得到上下文表示 $h_t = f_{\theta}^{ctx}([e(x_t); \bar{m}_t])$,其中 $\bar{m}_t = \frac{1}{R}\sum_{r=1}^{R} e(m_{t,r})$ 是记忆嵌入的平均值。第三步,控制器计算每个候选技能 $s_i \in S_t$ 的表示 $u_i = f_{\theta}^{skill}(e(\text{desc}(s_i)))$,并通过共享评分器计算状态-技能兼容性分数 $z_{t,i} = f_{\theta}^{score}([h_t; u_i])$,经 softmax 得到选择概率 $p_{\theta}(i | h_t) = \text{softmax}(z_t)_i$。第四步,使用 Gumbel-Top-K 技巧采样有序技能子集 $A_t = (a_{t,1}, \ldots, a_{t,K})$。第五步,执行器(基于 LLM)接收选定的技能和当前文本跨度,在一步中生成结构化的记忆更新(INSERT/UPDATE/DELETE)。第六步,更新后的记忆库在训练查询上评估,产生任务奖励用于优化控制器。第七步,困难案例被记录到滑动窗口缓冲区。第八步,每 100 个训练步骤,设计师聚类分析代表性困难案例,提出技能修订和新技能(每轮最多 3 次修改),然后控制器在更新后的技能库上继续训练,通过 logit 增益鼓励对新技能的探索。

技术新颖性

MemSkill 的技术新颖性体现在多个方面。首先,与 Memory-R1 和 Mem-$\alpha$ 等使用 RL 优化记忆管理的工作相比,MemSkill 不是在固定的操作空间内优化,而是通过技能演化扩展了操作空间本身。这是一个质的飞跃:前者相当于在给定的棋盘上学习更好的下棋策略,后者则可以修改棋盘的规则。其次,与 SkillWeaver 等技能学习工作相比,MemSkill 将技能学习应用于记忆管理这一特定领域,设计了完整的技能结构(Purpose/When to use/How to apply/Constraints)和演化机制。第三,控制器的设计允许技能库动态变化——评分器 $f_{\theta}^{score}$ 作用于所有状态-技能对,当新技能加入时无需修改网络架构,只需为新技能计算嵌入即可。第四,设计师的困难案例挖掘策略(聚类 + 难度分数 + 代表性选择)确保了技能演化的多样性和针对性。第五,训练稳定性的保障机制(快照回滚、早期停止、探索激励的线性衰减)使得闭环优化过程不会因技能更新导致性能崩溃。

Prior turn-level, handcrafted operations vs. MemSkill's span-level, skill-conditioned generation
Figure 1: Prior turn-level, handcrafted operations vs. MemSkill's span-level, skill-conditioned generation
MemSkill architecture overview
Figure 2: MemSkill architecture overview
Case study of representative evolved skills on LoCoMo and ALFWorld
Figure 4: Case study of representative evolved skills on LoCoMo and ALFWorld

实验结果

MemSkill 在四个基准测试上展现了全面且一致的性能提升。在对话式记忆基准 LoCoMo 上,使用 LLaMA-3.3-70B 作为基础模型时,MemSkill 达到 F1 44.21 和 L-J 53.82,分别比最强基线 A-MEM(F1 39.39)提升 4.82 个百分点,比 MemoryOS(L-J 48.64)提升 5.18 个百分点。在 Qwen3-Next-80B 上,MemSkill 达到 F1 42.08 和 L-J 54.14,同样显著超越所有基线。在 LongMemEval 的纯迁移评估中(仅使用 LoCoMo 学到的技能,不进行任何 LongMemEval 训练),MemSkill 在 LLaMA 上达到 F1 31.12 和 L-J 60.89,在 Qwen 上达到 F1 25.29 和 L-J 60.40,L-J 分数比次优方法提升约 14-17 个百分点,展示了极强的跨数据集泛化能力。在具身交互任务 ALFWorld 上,MemSkill 在 LLaMA 上的平均成功率达到 80.36%(ALF-Seen 77.14%,ALF-Unseen 83.58%),在 Qwen 上达到 81.29%(ALF-Seen 85.71%,ALF-Unseen 76.87%),且交互步数显著减少。在 HotpotQA 的跨格式迁移实验中(对话格式的技能直接应用于文档格式的问答),MemSkill 在 50/100/200 文档拼接的三个难度设置下均优于 MemoryOS 和 A-MEM,且在最困难的 200 文档设置下优势更加明显。消融实验表明,移除控制器(随机技能选择)导致 L-J 从 53.82 降至 48.43(LLaMA),移除设计器(固定技能库)导致 L-J 降至 46.50(LLaMA)和 36.15(Qwen),仅允许修订不允许新增技能则为 47.45/48.88。成本分析显示,MemSkill(SS=512)仅需 249K 输入 token、18K 输出 token 和 215 次 LLM 调用,远低于 MemoryOS(1013K/165K/1288 次)和 A-MEM(2850K/362K/1548 次),同时 L-J 分数更高。在 Llama-3.1-8B 小模型上,MemSkill 也保持了最佳性能(LoCoMo L-J 27.23,LongMemEval L-J 30.20),证明了方法不依赖大模型能力。

Main comparison results on LoCoMo, LongMemEval, and ALFWorld
Table 1: Main comparison results on LoCoMo, LongMemEval, and ALFWorld
LoCoMo ablation study (L-J)
Table 2: LoCoMo ablation study (L-J)
Cost analysis on LoCoMo
Table 3: Cost analysis on LoCoMo
More comparison results on ALFWorld
Table 4: More comparison results on ALFWorld
More comparison results on ALFWorld without in-context demonstrations
Table 5: More comparison results on ALFWorld without in-context demonstrations
More comparison results on AppWorld with and without in-context demonstrations
Table 6: More comparison results on AppWorld with and without in-context demonstrations
Experimental results on LoCoMo and LongMemEval using Llama-3.1-8B-Instruct
Table 7: Experimental results on LoCoMo and LongMemEval using Llama-3.1-8B-Instruct
Skill generalization under distribution shift on HotpotQA
Figure 3: Skill generalization under distribution shift on HotpotQA
查看结构化数据
任务指标本文基线提升
LoCoMo (对话式记忆) LLM-Judge (L-J) 53.82 (LLaMA) / 54.14 (Qwen) 48.64 (MemoryOS) / 47.37 (MemoryOS) +5.18 / +6.77
LoCoMo (对话式记忆) F1 44.21 (LLaMA) / 42.08 (Qwen) 41.39 (MemoryOS) / 39.86 (MemoryOS) +2.82 / +2.22
LongMemEval (迁移评估) LLM-Judge (L-J) 60.89 (LLaMA) / 60.40 (Qwen) 56.44 (CoN) / 44.06 (CoN) +4.45 / +16.34
ALFWorld-Seen (具身交互) Success Rate (SR) 77.14% (LLaMA) / 85.71% (Qwen) 75.00% (CoN) / 77.14% (CoN) +2.14 / +8.57
ALFWorld-Unseen (具身交互) Success Rate (SR) 83.58% (LLaMA) / 76.87% (Qwen) 80.60% (CoN) / 70.90% (CoN) +2.98 / +5.97
ALFWorld (无示范) Avg. SR 57.71% (LLaMA) / 63.83% (Qwen) 45.99% (LightMem) / 54.76% (Expel) +11.72 / +9.07
AppWorld (工具使用) Avg. PR 26.71 (LLaMA) / 34.23 (Qwen) 25.42 (AWM) / 31.29 (Mem0) +1.29 / +2.94
LoCoMo 成本分析 LLM Calls 215 (SS=512) 1288 (MemoryOS) -83.3%

局限与改进

MemSkill 存在若干局限性需要读者注意。首先,从作者在附录中承认的角度,论文聚焦于基准研究环境下的技能条件记忆构建,实际部署还需要额外的隐私保护、用户同意、访问控制和数据保留机制,这些与核心算法贡献正交但对实际应用至关重要。其次,设计师的技能演化依赖 LLM 来分析困难案例和提出新技能,这意味着技能库的质量受限于 LLM 的推理能力和分析质量,且每次演化都需要额外的 LLM 调用成本。第三,控制器的训练需要在每个交互轨迹上构建记忆库并在训练查询上评估,这个过程本身需要大量计算,训练成本不可忽视。第四,技能库的规模增长缺乏理论分析——随着训练进行,技能数量可能不断增加,这可能影响控制器的选择效率和技能间的冲突管理。第五,论文的评估主要在相对较小的数据集上进行(LoCoMo 仅 10 个长交互样本),在更大规模、更多样化的实际场景中的表现尚待验证。第六,当前的困难案例缓冲区使用滑动窗口策略,可能遗漏早期训练阶段的重要失败模式。

独立分析的弱点

从独立分析的角度,MemSkill 存在几个值得改进的弱点。第一,技能库的初始化过于简单——仅从 INSERT、UPDATE、DELETE、SKIP 四个基本原语开始,这在复杂场景中可能导致早期训练阶段的学习效率低下。可以考虑使用预训练的大模型来生成一组更丰富的初始技能种子,或者从已有成功的记忆系统中蒸馏初始技能。第二,设计师的技能演化是离散的、低频的(每 100 步触发一次,每轮最多 3 次修改),这种设计在训练初期可能导致技能库的增长速度跟不上学习需求。可以探索更自适应的演化频率,例如根据控制器性能的变化率动态调整。第三,控制器的 Top-K 选择虽然支持组合多个技能,但 K 值需要手动设定(LoCoMo 用 K=7,ALFWorld 用 K=5),缺乏自动调节机制。可以引入自适应的 K 值选择,例如根据当前上下文的复杂度动态决定使用多少个技能。第四,记忆检索使用固定的嵌入相似度方法,而没有和技能选择进行联合优化,可能导致检索到的记忆与选定的技能不匹配。第五,在跨模型迁移实验中,技能直接从 LLaMA 迁移到 Qwen 而不进行微调,虽然结果不错,但缺乏对迁移失败案例的分析和针对性的迁移策略。

未来方向

基于 MemSkill 的成果,未来研究可以从多个方向延伸。首先,作者提出的三个设计原则(最小化人类先验、支持更大提取粒度、技能条件组合式构建)可以扩展到其他智能体能力的自进化,例如推理技能、规划技能或工具使用技能。其次,技能库的演化可以引入更丰富的反馈信号,不仅限于任务性能,还可以包括用户满意度、记忆一致性、知识覆盖率等多维度指标。第三,当前的技能结构(Purpose/When to use/How to apply/Constraints)是固定的,未来可以探索技能结构本身的演化——例如允许技能包含子技能或条件分支。第四,跨任务和跨领域的技能迁移是一个重要的开放问题,可以研究如何建立通用的记忆技能基座,在特定领域进行快速适应。第五,将 MemSkill 与检索增强生成(RAG)系统结合,探索技能条件记忆构建对下游问答和推理任务的影响。第六,探索技能库的压缩和蒸馏方法,使技能库可以在资源受限的环境中高效运行。

复现评估

从复现评估的角度,MemSkill 的复现条件相对明确但有一定门槛。代码方面,作者已在 GitHub 开源(https://github.com/ViktorAxelsen/MemSkill),提供了完整的实现。数据方面,论文使用了四个公开基准(LoCoMo、LongMemEval、HotpotQA、ALFWorld),数据获取相对容易。算力方面,训练需要 NVIDIA A6000 GPU,使用 LLaMA-3.3-70B 和 Qwen3-Next-80B 作为基础 LLM(通过 API 访问),嵌入模型使用 Qwen3-Embedding-0.6B。主要的复现难点在于:(1)API 调用成本——训练过程中需要大量 LLM 调用来执行记忆构建和技能演化,LoCoMo 上的推理阶段就需要 215-1288 次 LLM 调用;(2)训练稳定性——虽然论文介绍了快照回滚和探索激励等机制,但 RL 训练本身的超参数敏感性可能影响复现效果;(3)LLM Judge 的复现——评估使用 openai/gpt-oss-120b 作为评判模型,不同评判模型可能产生不同分数。总体而言,具备中等算力资源(单卡 A6000 + API 访问)的研究者应该可以在 1-2 周内完成主要实验的复现。