MemSkill: Learning and Evolving Memory Skills for Self-Evolving Agents
基本信息
- 标题: MemSkill: Learning and Evolving Memory Skills for Self-Evolving Agents
- 第一作者: Haozhen Zhang (Nanyang Technological University)
- 研究团队: nanyang_technological_university, tsinghua_university, university_of_illinois_urbana_champaign
- 会议/期刊: arXiv Preprint, 2026
- 代码: https://github.com/ViktorAxelsen/MemSkill
- PDF 文件: [MemSkill Paper](file:///C:/Users/admin/.openclaw/workspace/attachment/papers/20260419_memskill_learning_evolving_memory_skills.pdf)
1. 研究摘要
随着大型语言模型(Large Language Model, LLM)Agent被部署到越来越长的开放式交互场景中,一个根本性的矛盾日益尖锐:交互历史(interaction history)既是完成任务所必需的信息来源,又因其持续增长而成为难以驾驭的负担。现有的Agent记忆系统大多采用一种相对简单粗暴的策略——它们预先定义好一小套固定的记忆操作原语,例如添加(INSERT)、更新(UPDATE)、删除(DELETE)和跳过(SKIP),然后让LLM在每个交互回合(turn)中按部就班地执行这些操作。这种范式实际上是将人类对"什么值得记住"和"如何修订记忆"的先验假设硬编码进了系统 pipeline。其结果是,当面对不同领域、不同风格的多样化交互模式时,这些固定流程显得僵化而脆弱;而当交互历史拉长到数千甚至数万 token 时,逐回合处理的效率也变得难以承受。
MemSkill 的核心洞见在于,它从根本上质疑了"记忆操作应该是固定原语"这一前提,转而提出一个更具延展性的视角:将记忆提取和修订的行为本身提升为可学习的抽象。具体而言,MemSkill 把记忆构建(memory construction)视为应用一组通用的、可复用的"记忆技能"(memory skills)的结果。这里的记忆技能并非简单的标签,而是结构化的行为规范(structured behavioral routines),它们明确定义了在何种情境下(when)、以何种方式(how)将交互轨迹中的信息转化为记忆,以及如何在后续交互中对这些记忆进行修订和精简。这种视角揭示了先前工作的一个关键瓶颈:它们将记忆行为硬编码进固定的程序性工作流中,把启发式规则与LLM中介的提取和修订步骤交织在一起,导致系统在分布偏移(distribution shift)面前异常脆弱。
沿着这一思路,MemSkill 进一步提出了一个理想的Agent记忆系统应当满足的三条性质。第一,对人类先验的依赖应当最小化。记忆行为不应由人类手动为某个领域编码(如 Zhong et al., 2024 的做法),而应由交互数据塑造,并随着任务需求的变化而更新。第二,应当支持更大的提取粒度(extraction granularity)。许多现有方法被调优到固定的处理单元(例如逐回合处理,Fang et al., 2025),当应用于更长跨度时性能会显著下降;一个实用的系统应当能够在需要时以更大的粒度进行操作。第三,记忆构建应当是技能条件化的、可组合的(skill-conditioned and compositional)。现有系统往往将记忆构建分解为一系列顺序执行的固定步骤,而 MemSkill 则倾向于为当前上下文选择并组合一小套相关技能,并在一个生成步骤中完成应用,从而实现记忆行为的灵活复用和进化。
基于上述观察,MemSkill 提出了三项具体贡献。首先,它将记忆操作重新构想为一个可进化的共享技能库(shared skill bank),每个技能都以结构化的自然语言模板描述其用途、适用条件和执行规范;给定当前上下文,一个轻量级的控制器(controller)学习选择一小套最相关的技能,然后一个基于LLM的执行器(executor)在这些技能的指导下一次性地生成记忆更新,而非逐回合反复调用LLM。其次,MemSkill 引入了一个闭环进化(closed-loop evolution)机制:控制器通过强化学习(Reinforcement Learning, RL)优化其技能选择策略,以下游任务性能作为反馈信号;与此同时,一个基于LLM的设计者(designer)定期审视训练过程中产生的困难案例(hard cases),从中提炼出具有代表性的失败模式,并据此对现有技能进行精细化修订或提出全新的技能。这种交替进行的"学习使用技能"与"进化技能本身"的过程,使得系统能够持续提升技能选择策略和技能库本身的质量。最后,作者在 LoCoMo、LongMemEval、HotpotQA 和 ALFWorld 四个基准上进行了系统评估,结果显示 MemSkill 不仅在各项任务上稳定超越强基线,还展现出优秀的跨模型和跨数据集泛化能力,为构建更具适应性、自我进化的Agent记忆系统提供了实证基础和有价值的洞察。
2. 理论框架
MemSkill 的理论根基深植于近年来Agent记忆系统与自进化Agent两个研究方向的交叉地带。从知识谱系来看,早期工作如 MemoryBank(Zhong et al., 2024)、MemGPT(Packer et al., 2023)和 A-MEM(Xu et al., 2025)奠定了"从交互历史中提取外部记忆并用于后续推理"的基本范式。这些方法通常采用周期性的信息提取,将关键内容存入记忆库,在收到新查询时检索相关条目,并通过整合或剪枝来维护记忆存储。然而,它们的核心局限在于记忆管理流程 largely 由静态的、手工设计的规则所支配——何时提取、如何修订、何时删除,这些关键决策被固化在预先编写的启发式逻辑中,无法根据实际交互数据动态调整。
近期的一些学习型方法开始尝试突破这一局限。Memory-R1(Yan et al., 2025)和 Mem-α(Wang et al., 2025a)引入强化学习来优化记忆管理,使用下游任务信号作为反馈,这是一个重要的进步。但这些方法仍然是在一个固定的操作空间内优化策略,并未触及操作空间本身的定义问题。与此同时,自进化Agent领域的研究(如 ExpeL, Zhao et al., 2024; EvolveR, Wu et al., 2025; SkillWeaver, Zheng et al., 2025)表明,Agent能够从交互经验中发现和提炼可复用的技能,并在最小人工监督下持续改进。MemSkill 将这一思想 specifically 引入记忆管理领域——它关心的不是Agent如何浏览网页或解决数学问题,而是Agent如何构建和维护自身记忆这一元认知(meta-cognitive)能力。
在这一理论脉络下,MemSkill 提出了几个核心概念。第一个也是最根本的概念是"记忆技能"(memory skill)。与静态的操作原语不同,一个记忆技能是一个完整的结构化指南,它包含两个层次:一个简短的描述(description)用于技能的表征和选择,以及一个详细的内容规范(content specification)用于指导执行器如何进行记忆提取或修订。这种双层结构的设计极具深意——描述层提供了一个聚焦的语义信号,比嵌入完整技能内容更加稳定,有利于在技能库进化过程中保持选择策略的连续性;而内容规范层则保留了充分的指导性,确保LLM执行器能够准确理解技能意图。
第二个核心概念是"状态-技能兼容性"(state-skill compatibility)。由于 MemSkill 的技能库会随着训练不断进化,技能的数量和组成都在动态变化,传统的固定输出维度的动作头(action head)无法适用。为此,MemSkill 采用了一种基于语义相似度的评分机制。控制器首先将当前状态编码为一个状态嵌入(state embedding),同时将每个技能描述编码为技能嵌入(skill embedding),然后通过内积运算来衡量它们之间的匹配程度。形式化地,设当前文本跨度为
这里
有了状态嵌入和技能嵌入,控制器计算它们之间的语义对齐分数:
这个公式的精妙之处在于
第三个关键概念是"闭环优化"(closed-loop optimization)。MemSkill 并不将技能库视为一个预先给定、一成不变的先验,而是将其纳入一个交替迭代的学习循环。这个循环的一端是策略学习:控制器通过强化学习学会在何种状态下选择哪些技能;另一端是结构学习:设计者分析控制器在使用当前技能库时遇到的困难案例,从中诊断出技能缺失或技能描述不当的问题,并生成对技能库的修订。这两个过程相互依赖、相互促进——更好的技能库为控制器提供了更丰富的选择空间,而更精准的控制器又能更有效地利用新引入的技能,从而形成一个自我强化的学习动态。
在强化学习的数学框架下,MemSkill 需要处理一个特殊的技术细节:控制器的动作不是一个单一离散动作,而是一个有序的 Top-K 无放回集合。为此,论文推导了该选择过程的联合概率。设
这个公式直观地反映了一个逐步缩小选择池的过程:在每一步
这个联合对数概率被直接用于 PPO(Proximal Policy Optimization, Schulman et al., 2017)风格的策略梯度优化中。通过重要性采样和裁剪机制,控制器能够在稳定的训练动态中学会选择能够最大化下游任务奖励的技能组合。
整个理论框架的边界也值得我们审视。MemSkill 假设存在一个可靠的外部评估信号(如F1分数或任务成功率)来提供奖励,这意味着它最适合那些目标明确、可自动评估的任务场景。此外,技能库的进化依赖于LLM设计者的分析能力,虽然设计者本身是固定 prompt 的(非学习型),但其有效性仍然受限于底层LLM的推理和归纳能力。在假设层面,MemSkill 预设了记忆行为可以被有效分解为一组离散、可命名的技能,这对于某些高度连续或隐式的记忆过程(例如情感基调的微妙累积)可能并不总是适用。
3. 技术架构
MemSkill 的技术架构可以用两个交织运行的过程来概括:一个过程学习如何使用给定的技能库来构建记忆,另一个过程则持续改进技能库本身。这两个过程共享一个核心的数据结构——技能库(skill bank),但各自拥有独立的操作机制和优化目标,最终形成一个交替上升的自增强系统。
从系统概览来看,MemSkill 处理交互轨迹(例如一段长对话或一条专家演示轨迹)时采用"跨度级"(span-level)而非"回合级"(turn-level)的处理策略。作者首先将一条完整的交互轨迹切分为连续的文本跨度(contiguous text spans),然后逐个处理这些跨度。对于每个文本跨度,系统执行一个标准的三阶段流程:感知、选择、执行。在感知阶段,控制器将当前文本跨度
数据在这个系统中的流动轨迹清晰地反映了其设计哲学。原始交互文本首先经过分段器(segmenter)被切分成跨度,这一步骤将线性增长的交互历史转化为可控的处理单元。随后,检索器(retriever,论文中使用的是 Contriever, Izacard et al., 2021)从当前轨迹的记忆库中召回最多20条相关记忆,这些记忆与当前跨度共同构成控制器的输入状态。控制器的输出——一组有序的技能——被编码成自然语言提示,注入到执行器的 prompt 中。执行器本质上是一个被精心 prompt 的LLM(论文使用 LLaMA-3.3-70B-Instruct 或 Qwen3-Next-80B-A3B-Instruct),它根据被选中的技能指南,自主决定应该插入哪些新记忆、更新哪些已有记忆、或删除哪些过时记忆。执行器的输出是格式化的动作块(action blocks),经过解析后修改记忆库。这种将"选择什么技能"与"如何执行技能"解耦的架构,使得轻量级的控制器可以高效地进行策略探索,而强大的LLM执行器则负责复杂的自然语言理解和生成。
在组件交互层面,控制器被实现为一个轻量级的多层感知机(MLP),使用 Qwen3-Embedding-0.6B 作为共享编码器。这种轻量级设计是有意为之的——由于控制器需要在训练过程中进行大量的前向传播和梯度更新,将其与庞大的执行器LLM分离可以显著降低计算开销。控制器与执行器之间通过技能描述进行间接通信:控制器看到的是技能的"名片"(description),而执行器看到的是技能的"完整说明书"(content specification)。这种信息分层既保证了控制器选择的效率,又确保了执行器操作的精确性。
技术架构中的一项关键创新是"技能条件化生成"(skill-conditioned generation)。与先前工作在每个回合反复调用LLM、逐次执行固定操作不同,MemSkill 将多个相关技能同时提供给LLM,让LLM在一个统一的上下文中自主决定如何综合应用这些技能。这类似于人类专家在面对复杂情境时,会同时激活多个专业知识领域,并在它们之间进行协调和整合,而不是机械地按顺序执行一条条孤立的操作规程。这种设计不仅减少了LLM调用次数(从而提升长历史处理的效率),更重要的是它赋予了执行器更大的灵活性——同一个技能组合在不同上下文中可以产生完全不同的记忆更新策略。
技能库的进化机制是整个架构中最具特色的部分,它由设计者(designer)模块驱动。设计者并非连续运行,而是周期性地(论文中每100个训练步)被触发。在两次触发之间,系统维护一个滑动窗口式的困难案例缓冲区(hard-case buffer)。每当控制器在训练查询上失败时,对应的案例(包括查询、检索到的记忆、模型预测、正确答案、任务奖励和失败计数)被记录到缓冲区中。缓冲区采用双重过期策略:过老的案例(超过最大训练步差距)会被移除,同时缓冲区也有容量上限,以确保只追踪最近的失败模式。
为了从原始失败记录中提炼出有价值的进化信号,设计者采用了一个聚类-筛选的两阶段策略。首先,系统使用 KMeans 等聚类算法按查询的语义相似度将困难案例分组,这能自然地将不同类型的错误分离开来——例如,一些失败可能源于时间信息提取不足,另一些则可能源于实体关系混淆。然后,在每个聚类簇内部,设计者使用一个难度分数(difficulty score)来优先选择代表性案例。该分数综合了任务奖励和失败频率:
其中
设计者基于这些代表性困难案例进行两阶段技能进化。第一阶段是分析:设计者利用LLM的推理能力,系统性地诊断每个失败案例的根因——是存储失败(重要信息从未被存入记忆,因为缺少相应的技能)、检索失败(相关记忆存在但未被召回,属于嵌入空间不匹配问题),还是记忆质量失败(记忆存在但过于模糊或不完整,无法支撑正确回答)?第二阶段是修订:基于分析结果,设计者提出具体的技能修改方案,包括精细化现有技能的自然语言模板(例如让"插入新记忆"技能更加关注时间细节),或者提出全新的技能来填补能力空白(例如增加一个专门捕获实体关系的技能)。这种从失败模式到技能修订的映射,本质上是一种由数据驱动的、LLM辅助的程序合成(program synthesis)。
值得注意的是,MemSkill 为技能库的进化设置了安全机制:系统会维护最佳性能快照,并在设计者更新导致性能退化时自动回滚(rollback)。此外,如果在连续多个进化周期中稳定化奖励(stabilized reward)都没有提升,训练会提前终止并返回历史上表现最好的技能库快照。这些机制防止了技能库在进化过程中失控漂移,确保整个闭环优化过程稳健收敛。
4. 实验评估
MemSkill 的实验设计体现了作者对"全面性"和"严谨性"的双重追求。他们不仅在多个不同类型的基准上验证了方法的有效性,还通过跨模型迁移和跨数据集迁移测试了技能库的泛化能力,并通过细致的消融实验剖析了各个组件的独立贡献。
实验覆盖了四类基准数据集。第一类是对话式记忆基准,包括 LoCoMo(Maharana et al., 2024)和 LongMemEval(Wu et al., 2024)。LoCoMo 包含10条长交互样本,每个样本平均配有约200个训练查询,测试Agent从长对话中构建记忆并回答相关问题的能力;LongMemEval-S 则提供约100K token 的超长对话,对记忆的长期保持和精确检索提出了更高要求。对于这类数据集,作者报告 F1 分数和一个LLM-based 评判分数(L-J)。第二类是具身交互任务基准 ALFWorld(Shridhar et al., 2020),这是一个文本驱动的虚拟环境,Agent需要执行多步骤操作来完成目标(如"把苹果放进微波炉")。作者使用 ALF-Seen 和 ALF-Unseen 两个标准子集,分别报告成功率(Success Rate, SR)和交互步数(#Steps),前者衡量任务完成能力,后者反映效率。第三类是 HotpotQA(Yang et al., 2018),用于研究分布偏移下的技能迁移——该数据集的输入是长文档式叙事而非多轮对话,与训练时的对话格式存在显著差异。第四类设置是跨基模型迁移,作者仅在 LLaMA 上训练 MemSkill,然后直接将学到的技能库应用到 Qwen 上,不进行任何重新训练。
基线的选择也经过了精心考量,涵盖了从简单到复杂、从静态到动态的多种代表性方法。No-Memory 直接回答问题而不使用外部记忆,提供了一个性能下限。Chain-of-Notes(CoN, Yu et al., 2024)和 ReadAgent(Lee et al., 2024)代表了基于阅读策略的记忆增强方法。MemoryBank(Zhong et al., 2024)、A-MEM(Xu et al., 2025)、Mem0(Chhikara et al., 2025)和 LangMem(LangChain, 2025)代表了不同的静态或半动态记忆系统设计理念。MemoryOS(Kang et al., 2025)则是当前最具竞争力的静态方法之一。这个基线阵容确保了 MemSkill 的优势不是相对于某个弱方法的偶然现象,而是在与多样化强对手的系统比较中仍然突出。
表1汇总了主要对比结果。在对话基准上,MemSkill 在每个基模型区块内都取得了最佳的 L-J 分数——在 LoCoMo 上,MemSkill(LLaMA)获得50.96,显著优于 MemoryOS 的44.59和 A-MEM 的46.34;在 LongMemEval 上,MemSkill(LLaMA)达到59.41,远超 MemoryOS 的36.50和 A-MEM 的38.12。F1 分数同样表现优异,MemSkill 在 LoCoMo 上获得38.78,与 MemoryOS 的38.68接近但略有优势,在 LongMemEval 上则以31.65领先于 MemoryOS 的14.19。在 ALFWorld 上,MemSkill 在 seen 和 unseen 两个分割上都达到了最高的成功率(47.86% 和 47.01%),同时保持了较低的交互步数,表明技能引导的记忆构建不仅能提高任务完成率,还能帮助Agent更直接地找到正确的行动序列。相比之下,MemoryOS 虽然在 seen 上有一定竞争力(15.71% SR),但在 unseen 上表现极差(14.18% SR),显示出静态记忆设计在新环境面前的脆弱性。
| Model | Method | LoCoMo F1 | LoCoMo L-J | LongMemEval F1 | LongMemEval L-J | ALF-Seen SR | ALF-Seen Steps | ALF-Unseen SR | ALF-Unseen Steps |
|---|---|---|---|---|---|---|---|---|---|
| LLaMA | No-Memory | - | - | - | - | 17.14 | 43.74 | 20.15 | 42.99 |
| LLaMA | CoN | 17.97 | 24.80 | 30.28 | 56.93 | 40.71 | 33.44 | 30.60 | 37.66 |
| LLaMA | ReadAgent | 26.34 | 35.17 | 23.52 | 41.58 | 32.86 | 37.09 | 38.06 | 34.78 |
| LLaMA | MemoryBank | 33.54 | 40.92 | 30.26 | 35.15 | 25.00 | 39.96 | 32.84 | 36.54 |
| LLaMA | A-MEM | 35.60 | 46.34 | 25.86 | 38.12 | 24.29 | 40.51 | 28.36 | 38.83 |
| LLaMA | Mem0 | 10.18 | 33.01 | 29.94 | 45.54 | 32.86 | 36.47 | 32.09 | 37.32 |
| LLaMA | LangMem | 25.97 | 29.14 | 15.79 | 21.00 | 37.86 | 34.39 | 35.07 | 35.70 |
| LLaMA | MemoryOS | 38.68 | 44.59 | 14.19 | 36.50 | 15.71 | 43.74 | 14.18 | 44.54 |
| LLaMA | MemSkill | 38.78 | 50.96 | 31.65 | 59.41 | 47.86 | 30.88 | 47.01 | 30.43 |
| Qwen | No-Memory | - | - | - | - | 18.57 | 42.48 | 26.12 | 39.35 |
| Qwen | CoN | 27.97 | 35.35 | 28.34 | 46.04 | 57.86 | 25.81 | 53.73 | 28.40 |
| Qwen | ReadAgent | 25.41 | 33.57 | 23.52 | 41.58 | 53.57 | 27.88 | 54.48 | 27.41 |
| Qwen | MemoryBank | 25.39 | 39.76 | 7.36 | 24.75 | 37.86 | 35.15 | 38.06 | 34.99 |
| Qwen | A-MEM | 34.83 | 48.41 | 12.46 | 34.65 | 25.00 | 40.28 | 29.10 | 39.04 |
| Qwen | Mem0 | 11.11 | 30.10 | 26.88 | 43.07 | 38.57 | 33.64 | 41.04 | 33.16 |
| Qwen | LangMem | 24.04 | 27.07 | 16.37 | 20.00 | 37.14 | 34.42 | 31.34 | 37.17 |
| Qwen | MemoryOS | 38.55 | 44.59 | 13.26 | 36.00 | 19.29 | 42.43 | 18.66 | 42.95 |
| Qwen | MemSkill | 39.28 | 52.07 | 23.75 | 59.90 | 60.00 | 24.54 | 64.18 | 23.57 |
跨模型泛化的结果尤为引人注目。MemSkill 仅在 LLaMA 上进行训练,然后直接将技能库转移到 Qwen 进行评估,没有任何重新训练。在这种严格的零样本迁移设置下,MemSkill 仍然保持了高度竞争力:在 LoCoMo 上,Qwen 版本的 MemSkill L-J 达到52.07,甚至超过了在 LLaMA 上训练的50.96;在 LongMemEval 上,迁移后的 L-J 为59.90,同样处于顶尖水平;在 ALFWorld 上,迁移后的成功率更是大幅跃升至60.00%(seen)和64.18%(unseen),显著高于 LLaMA 版本的表现。这一结果表明,MemSkill 学到的记忆技能捕捉的是可复用的记忆行为模式——例如"关注时间上下文"、"跟踪实体关系"、"记录动作约束"——这些模式是独立于底层LLM的通用知识,可以被不同的语言模型实例化。
跨数据集迁移的测试进一步验证了技能库的抽象程度。LongMemEval 完全通过迁移 LoCoMo 上训练的技能库来评估,而 MemSkill 仍然取得了最佳结果,说明学到的技能并未过拟合到单一数据集的特定表面特征上。更具挑战性的是 HotpotQA 迁移实验:这里输入从对话变成了文档式叙事,交互结构从多轮问答变成了单轮多文档推理,构成了显著的分布偏移。图3显示,在50/100/200个拼接文档三种上下文长度设置下,MemSkill 始终优于 MemoryOS 和 A-MEM,且随着上下文变长(200文档),优势愈发明显(MemSkill K=7 达到约66.80,而 MemoryOS 约为59.33)。这说明记忆技能所编码的提取和修订行为足够通用,能够在输入结构和检索需求都发生变化时仍然有效。
消融实验(表2)为我们提供了关于各组件贡献的定量洞察。在 LoCoMo 上,移除控制器(改为随机技能选择)后,LLaMA 上的 L-J 从50.96降至45.86,Qwen 上从52.07降至41.24,这表明学习选择相关技能而非任意提供技能对性能有实质性影响。移除设计者(固定为初始的四个原语技能)后,性能下降更为剧烈——LLaMA 上降至44.11,Qwen 上更是跌至34.71——这说明技能进化对于学习可泛化的记忆行为至关重要,特别是在不同的基模型上,静态技能集的局限性暴露得更为明显。仅允许精细化现有技能但不允许添加新技能的"refine-only"变体表现介于两者之间(LLaMA 44.90,Qwen 46.97),说明在初始原语基础上进行精细化已经有一定收益,但引入全新技能能带来额外的显著提升。
| 变体 | LLaMA L-J | Qwen L-J |
|---|---|---|
| MemSkill(默认) | 50.96 | 52.07 |
| w/o controller(随机技能) | 45.86 | 41.24 |
| w/o designer(静态技能) | 44.11 | 34.71 |
| Refine-only(不添加新技能) | 44.90 | 46.97 |
综合来看,实验结果形成了一个强有力的证据链条:MemSkill 在对话和具身两种截然不同的设置上都表现优异,学到的技能可以跨LLM模型和跨数据集迁移,且这种优势确实来源于其独特的技能选择和技能进化机制,而非仅仅是某个单一组件的功劳。
5. 案例研究
为了更深入地理解 MemSkill 的工作机制,作者对最终进化得到的技能库进行了定性分析,并展示了从 LoCoMo 和 ALFWorld 上学到的代表性技能。这些案例不仅揭示了 MemSkill 如何自动从交互数据中提炼出领域特定的记忆行为,也为我们理解"记忆技能"这一抽象概念提供了具体而生动的例证。
在 LoCoMo 上,进化后的技能库展现出对长对话记忆需求的深刻洞察。其中一个代表性技能是"Capture Activity Details"(捕获活动细节),其目的明确界定为捕获文本跨度中提到的活动的详细信息,包括活动类型、地点、参与者、时间细节以及相关上下文信息。该技能的触发条件是文本跨度提及了带有上下文细节的具体活动或事件,执行规范要求识别活动的关键要素并保持描述的具体性、可操作性和简洁性。另一个重要技能是"Capture Temporal Context"(捕获时间上下文),专门处理与时间相关的信息——开始时间、结束时间、持续时间和序列关系。这个技能的存在直接回应了长对话中一个常见的记忆需求:用户经常会在不同时间点提及相关事件,而准确记住"何时发生了什么"对于回答后续的时间敏感型查询至关重要。还有一个值得注意的技能是"Handle Entity Relationships"(处理实体关系),它捕获和管理文本跨度中实体之间复杂的交互、关联或关系。这反映了长对话中信息往往不是孤立存在的,而是以网络化的方式相互关联——某个人参与了某个活动,某个物品属于某个地点——这种关系型记忆对于回答需要跨实体推理的问题尤为关键。
这些 LoCoMo 技能共同揭示了一个重要模式:有效的对话记忆往往受益于轻量级的结构化组织,即"谁做了什么、在哪里、何时"这种叙事骨架。进化后的技能库反映的是数据所揭示的反复出现的信息需求,而不是某种单一的、预设的"什么应该被记住"的固定观念。换句话说,MemSkill 并没有被人为灌输"时间很重要"的先验,而是从训练失败中自动发现,如果不专门捕获时间上下文和实体关系,系统就会在大量查询上失败。
转向 ALFWorld,技能库的进化方向发生了明显的领域特化。这里最具代表性的技能包括"Capture Action Constraints"(捕获动作约束)和"Track Object Location"(跟踪物体位置)。前者的目的是捕获动作上的详细约束,包括物体状态和移动,这些对于完成任务是必需的;后者则显式跟踪完成任务所需的物体的位置和状态。这些技能的设计哲学与 LoCoMo 截然不同:在具身交互任务中,记忆不是用于回答关于过去对话的问题,而是用于支撑未来的行动决策。因此,Agent需要维护的是一个可操作的世界状态摘要,其中包括任务相关的前置条件(preconditions)——例如"要打开微波炉,必须先确保它是关闭的"、"要把苹果放进微波炉,必须先找到苹果并拿起它"——而不是宽泛的叙事摘要。
通过对比这两个领域的进化技能,我们可以看到一个深刻的见解:MemSkill 的技能进化过程实际上是在为每个领域自动发现其"记忆本体论"(memory ontology)——即该领域中哪些类别的信息对于后续任务最为关键。在对话领域,这个本体论围绕事件、时间、实体和关系展开;在具身领域,这个本体论围绕动作、约束、物体位置和状态变化展开。这种自动化的领域适配是传统静态记忆系统难以实现的,因为它们的设计者必须在系统部署前就预先定义好一套统一的记忆模式,而 MemSkill 则通过数据驱动的方式让记忆模式在训练过程中自然涌现和精炼。
附录中还展示了更多进化技能的细节,包括一些技能如何从初始原语演化而来。例如,初始的"Insert New Memory"技能在 LoCoMo 上被细化为更加关注"包含具体时间细节(如日期或时间范围)和详细活动信息";"Update Existing Memory"技能也被扩展为"包含实体特定细节"。这些精细化不是由人类手工完成的,而是设计者在分析困难案例后自动提出的——当系统反复因为遗漏时间细节或实体特定信息而失败时,设计者就会将这些要求注入到相应技能的执行规范中。这种由失败驱动的渐进式精细化,正是 MemSkill 闭环进化理念在微观层面的具体体现。
6. 综合价值与局限
MemSkill 的理论贡献在于它重新定义了我们思考Agent记忆系统的方式。传统上,记忆管理被视为一种工程问题——设计者需要手工编写规则来决定何时提取、如何总结、何时删除。MemSkill 则将记忆管理提升为一个学习问题,其核心抽象"记忆技能"为这一领域引入了新的概念工具。这种视角转变类似于计算机视觉领域从"手工设计特征"(如SIFT、HOG)到"学习特征表示"(如CNN)的范式迁移:前者在特定场景下可以工作,但后者具有更强的泛化能力和可扩展性。通过将记忆行为显式编码为可命名、可检查、可修改的技能,MemSkill 也为记忆系统的可解释性(interpretability)和可控性(controllability)开辟了新的可能性——研究者或开发者可以直接查看技能库的内容,理解系统记住了什么类型的信息,并在必要时手动干预或引导进化方向。
从实践角度看,MemSkill 的潜在应用场景十分广泛。任何需要维护长期上下文的多轮交互系统都可能从中受益:多会话个人助手需要在多次对话中记住用户的偏好、计划和历史交互;教育辅导系统需要跟踪学生的学习进度和常见错误;长流程客户支持需要维护跨会话的工单状态和客户背景;交互式研究工具需要管理日益增长的文献摘要和实验记录。在这些场景中,MemSkill 的自我进化能力尤其有价值,因为"什么信息值得记住"往往随着使用深入而变化,静态的记忆规则难以适应这种动态性。
然而,诚实地审视这项工作,我们也能发现若干局限。首先,MemSkill 的执行器仍然依赖底层LLM的推理能力来理解和应用技能。如果LLM本身无法正确解析复杂技能规范或长跨度文本,那么再好的技能选择也无济于事。这意味着 MemSkill 的性能上限受制于当前LLM的能力边界。其次,虽然设计者被 prompt 为固定的分析-修订模式(而非学习型),但其有效性仍然取决于LLM的归纳推理质量。在某些情况下,LLM可能错误诊断失败原因——例如将检索失败误判为存储失败——从而导致技能库的无效甚至有害修改。虽然回滚机制可以在一定程度上缓解这个问题,但频繁的回滚也会阻碍进化进程。
第三,MemSkill 的进化过程涉及若干需要调优的超参数:设计者触发周期(每100步)、每轮最大技能编辑数(最多3个)、困难案例缓冲区大小、探索阶段的持续时间和强度阈值等。这些参数的选择可能影响进化速度和最终性能,但论文对这些参数的敏感性分析相对有限。第四,虽然论文展示了技能库的规模在可控范围内(从4个初始原语进化到约十余个技能),但对于更复杂、更多样化的任务领域,技能库是否存在无限膨胀的风险?当技能数量增加到数十甚至上百个时,轻量级控制器的选择能力和训练稳定性是否会下降?这些问题尚未被充分探讨。
最后,MemSkill 目前仅在文本模态上验证,且主要针对可以自动评估的任务(QA成功率、任务完成率)。在开放性更强、评估更主观的场景(如创意写作助手、心理咨询对话)中,如何定义可靠的奖励信号来驱动技能选择和进化,仍然是一个开放挑战。
7. 延伸阅读与思考
MemSkill 的工作建立在多条研究线索的交汇之上。在Agent记忆系统方面,最直接的相关工作包括 MemoryBank(Zhong et al., 2024),它提出了将对话历史组织为事件-计划-观察的分层记忆结构;A-MEM(Xu et al., 2025)引入了主动记忆管理,让Agent自主决定何时读取、写入和反思记忆;MemoryOS(Kang et al., 2025)则将记忆系统比喻为操作系统,提供了统一的记忆抽象接口。MemSkill 与这些工作的根本区别在于,它将记忆管理的"操作原语"本身变为可学习对象,而非仅仅优化固定原语的使用策略。在RL优化记忆方面,Memory-R1(Yan et al., 2025)和 Mem-α(Wang et al., 2025a)与 MemSkill 分享了使用强化学习来优化记忆管理的思路,但它们通常将记忆操作视为原子动作,而 MemSkill 将这些动作提升为结构化的、可进化的技能。在自进化Agent的 broader 领域,ExpeL(Zhao et al., 2024)展示了如何从轨迹中蒸馏可编辑的自然语言洞察;EvolveR(Wu et al., 2025)将交互经验整合为可复用的原则;SkillWeaver(Zheng et al., 2025)证明了Agent可以在网页交互中自主发现和提炼技能。MemSkill 可以被视为这一思想在记忆管理子系统中的 specialized 应用。
对于同一问题——如何让Agent更好地管理长期记忆——也存在不同的哲学路径。一条路径是"检索增强"(retrieval-augmented)路线,强调改进检索器(如 ReadAgent 的分层阅读策略)或外部向量数据库的索引质量,认为记忆问题的核心是"如何更快更准地找到相关信息"。另一条路径是"总结压缩"(summarization-compression)路线,如 Chain-of-Notes,强调将长历史压缩为简洁的笔记式摘要。MemSkill 选择的则是"操作抽象"(operation abstraction)路线,它既不改变检索基础设施,也不单纯依赖总结,而是改变记忆构建过程本身的"语法"——从固定指令集进化为可扩展的技能语言。这三条路线并非互斥,未来可能会出现融合三者优势的混合架构。
MemSkill 为未来的研究开辟了多个激动人心的方向。一个自然的问题是:技能进化是否可以与Agent的其他子系统协同进行?例如,工具使用技能、规划策略和记忆技能能否在同一个闭环中共同进化,而不是各自独立优化?这种"协同进化"(co-evolution)可能会产生涌现的系统性智能。另一个方向是多模态记忆技能——当Agent需要处理的不只是文本,还包括图像、音频、视频时,记忆技能如何扩展以捕获跨模态的关联和时序关系?再一个值得探索的问题是技能的组合性(compositionality)与层次性(hierarchy):当前 MemSkill 选择一组扁平的技能来应用,是否可以引入技能的层次结构——高层技能编排低层技能,形成更复杂的记忆管理工作流?
在这一领域最深层的未解挑战或许是:什么是记忆的"正确"本体论?MemSkill 采取了一种实用主义立场——让数据来定义什么值得记住——但这引出了一个元问题:如果训练数据本身存在偏差或局限性,进化出的技能库是否会系统性地遗漏某些类型的信息?例如,如果用户很少询问情感相关的问题,系统是否会逐渐丧失对情感上下文的记忆能力?这种"用进废退"的动态是否会导致记忆的 impoverishment?此外,如何平衡记忆的"特异性"(记住细节)与"泛化性"(提取抽象模式)也是长期存在的张力。MemSkill 通过技能粒度在一定程度上调和了这一点——一个技能既可以要求捕获具体时间细节,也可以要求记录高层活动模式——但最优的平衡点可能随任务和领域而变化,甚至需要在运行时动态调整。
阅读这篇论文,最令人深思的或许是它提出的一个元认知命题:Agent不仅要学会使用记忆,还要学会改进记忆构建的方式本身。这种"学习如何学习"(learning to learn)的递归结构,正是通向更自主、更自适应的智能系统的关键阶梯。MemSkill 目前实现的只是这一愿景在记忆子系统中的初步落地,但它所打开的想象空间——一个能够持续自我审视、自我诊断、自我改进的Agent记忆系统——无疑是令人振奋的。
笔记创建时间: 2026-05-05
阅读方式: L2 深度阅读
Topics: