Command Palette
Search for a command to run...
Metis:记忆基础模型
Metis:记忆基础模型
摘要
近年来,AI 智能体的进展日益将原生能力内化至其底层基础模型,催生了多模态基础模型和大推理模型。然而,智能体记忆仍主要通过外部模块实现,原生记忆能力在很大程度上尚未被探索。本文朝这一方向迈出第一步,提出记忆基础模型,赋予基础模型原生记忆能力。我们从两个角度形式化原生记忆:骨干网络内持久且动态演化的记忆状态,以及通过模型计算自主存储和利用信息的原生记忆过程。我们表明,原生记忆在架构、端到端优化和效率方面具有优势。基于此形式化定义,我们提出 Metis,首个记忆基础模型原型。Metis 引入一种新架构,为基础模型配备原生记忆状态,使历史信息能够被压缩进模型并通过记忆注意力进行访问。我们构建了大规模记忆专用训练数据,并引入多个优化目标,通过中期训练习得这些原生记忆过程。Metis 的在线记忆维护无需梯度,记忆更新仅需一次前向传播。推理时,所有已学习的模型权重保持冻结,而原生记忆状态通过标准前向计算自主变换。通过大量实验,我们展示了 Metis 具备原生记忆能力,并进一步对其优势、局限和行为进行了详细分析。为促进记忆基础模型的未来研究,我们公开了项目与模型检查点。
一句话总结
来自MemTensor(上海)科技有限公司、中国人民大学和新加坡国立大学等机构的研究人员提出Metis,首个记忆基础模型,为基础模型赋予原生持久记忆状态和自主记忆流程,支持通过冻结推理权重的前向传播实现无梯度的在线记忆更新,并展示出原生记忆能力。
核心贡献
- 引入了原生记忆的形式化定义,由骨干网络内部持久且不断演化的记忆状态,以及通过模型计算自主存储和利用信息的原生记忆流程组成。
- 提出Metis作为首个原型,通过局部和超记忆模块为基础模型配备原生记忆状态,支持在推理时保持学习权重冻结的情况下,通过单次前向传播实现无梯度的在线记忆更新。
- 构建了大规模记忆特定训练数据和中段训练框架,包含记忆重建、记忆操作和正则化目标,以获取原生记忆流程,并通过大量实验展示了Metis的原生记忆能力以及详细的行为分析。
引言
随着基础模型驱动能力日益增强的AI Agent,记忆对于跨交互保留过往信息至关重要。此前的记忆方法通常依赖外部模块,如检索增强生成,这些模块与骨干模型解耦,难以端到端优化,且会增加推理延迟。作者引入了记忆基础模型,将记忆内化为一种原生机制,将外部记忆转化为动态内部状态和计算。他们提出了Metis,一个通过新颖的记忆模块和专用的中段训练框架来学习自主记忆操作的原型,免除了单独进行记忆工程的需要。
数据集
作者通过从27个公开基准中合成样本,构建了一个用于记忆流程的中段训练数据集。该数据集包含两个互补的子集,每个子集具有不同的组成和处理方式。
数据集组成与来源
- 主数据:357,137个样本,约4.06亿个token,取自27个跨越小说、科学、新闻和逻辑推理等领域的基准。
- 辅助数据:609,443个样本,由相同的源事实加上普通对话池构建而成。
- 两个子集都依赖一个通用的合成流程,该流程从基准中提取结构化种子,并将其重写为交互序列。
主数据子集(核心记忆操作)
- 覆盖四种记忆操作:记忆、遗忘、更新和反思。
- 每个样本是一个时间有序的对话轮次序列,其中状态一致的答案依赖于先前的记忆状态。
- 沿两个额外维度变化:
- 指令的显著性:显式记忆命令与隐式叙事描述。
- 噪声水平:干净序列与在参考轮次和查询轮次之间插入干扰轮次的序列。
- 过滤:语言模型验证器丢弃未通过一致性检查(答案必须反映预期的记忆状态)、正交性检查(干扰项不得泄露核心事实)和捷径检查(查询必须不能在无参考信息的情况下回答)的样本。同时还监控语义多样性,以避免模板坍塌。
- token分布由富含干扰项的记忆样本主导,强制要求长程记忆。
辅助数据子集(鲁棒性与泛化)
- 四种子类型,各自针对特定的失败模式:
- 多实体绑定(76,153个样本):存储两个易混淆的事实并查询两者,训练模型正确绑定值。
- 选择性遗忘(76,153个样本):撤销一个事实而保留另一个,防止连带遗忘。
- 记忆后对话(357,137个样本):在记忆查询后追加一轮普通对话,使模型不会泄露存储的值。
- 无关记忆对话(100,000个样本):询问一个即使存在记忆状态也不需要记忆的问题,教会模型何时忽略记忆。
- 构建方式:
- 配对事实合成:对于每个源事实,语言模型通过变换(改变主语/关系、模仿值格式,或保持语义邻近)生成一个易混淆的对应项。验证器丢弃矛盾、重述或存在依赖关系的样本。
- 普通对话池:由日常助手对话、开放域对话和无需记忆即可回答的实体相关对话组合而成,并过滤掉记忆线索、实时事实和不安全内容。
- 子类型制定:将上述成分组合成四种交互模式。
论文如何使用数据
- 主数据通过优化,为训练原生记忆流程(记忆、遗忘、更新、反思)提供显式监督。
- 辅助数据用于提升复杂场景下的泛化能力:多事实推理、混合对话和抗污染能力。
- 未报告明确的训练集划分或混合比例;假设两个子集在中段训练期间被合并使用。
- 合成流程本身即是主要处理方式:从源基准提取种子,通过干扰项插入静态重写为显式/隐式风格,以及自动质量验证。
方法
作者提出Metis,一个用于记忆基础模型的原型架构,将记忆内化到骨干计算中。与依赖模型外部显式存储和检索过程的外部记忆系统不同,Metis维持一个原生记忆状态,并在前向计算过程中自主执行记忆流程。
如下图所示,Metis架构将Metis模块集成到标准因果语言模型中。每个Metis模块由两个核心组件构成:一个局部记忆模块和一个超记忆模块。局部记忆模块负责维护先前信息的稠密表示。它在第l层定义了一个稠密记忆网络M(l)∈Rdk×dv和一个查询-键归一化向量S(l)∈Rdk。这些动态参数在不同的交互步骤中更新,并初始化为零。超记忆模块构建用于原生记忆流程的参数化函数空间。它包含在中段训练期间优化的静态参数,包括用于自适应聚合的可学习重要性向量w~agg(l),以及将隐藏状态映射为记忆键、值和查询的投影矩阵W~K(l)、W~V(l)和W~Q(l)。
Metis中的原生记忆流程分为存储和利用两个阶段,两者都与前向计算紧密耦合。在原生记忆存储流程中,超记忆模块根据中间激活更新局部记忆模块。模型首先对隐藏状态进行预归一化,并使用重要性向量对每个token进行评分,以获得重要性分布。根据阈值选取一部分位置,并收集对应的隐藏状态。这些选中的状态随后被投影为记忆键K~t(l)和值V~t(l)。稠密记忆网络和归一化向量通过折扣累积策略进行更新,有效地将历史信息压缩为一个固定大小的矩阵。
在原生记忆利用流程中,局部记忆模块将当前记忆状态纳入前向计算中。作者定义了一种记忆注意力机制,计算记忆查询状态与已存储记忆网络之间的交互,并通过查询-键归一化向量进行归一化。该记忆注意力随后被集成到主注意力分支中。一个平衡参数控制原始因果自注意力和记忆注意力的融合,使模型能够利用先前步骤中存储的信息,而无需显式的上下文预填充。
为了赋予Metis这些原生记忆能力,作者在中段训练期间设计了一种多目标优化策略。训练目标包括记忆重建、记忆操作和正则化。记忆重建目标驱动模型以最小的损失存储和恢复参考段落,为无损存储奠定基础。记忆操作目标教会模型根据输入指令执行语义操作,如记忆、遗忘、更新和反思,同时利用显式命令和隐式叙事。最后,正则化目标通过在复杂场景(如多实体绑定和选择性遗忘)上进行训练来减轻干扰和记忆污染,确保模型将值绑定到正确的键,并避免将存储的信息泄露到无关的回复中。训练过程采用带有线性退火的任务加权采样器,逐步将重点从面向存储的数据转移到更具挑战性的长程和正则化任务。
实验
Metis在记忆操作和基于记忆的问答任务上进行评估,将原生记忆状态(无上下文回放)与全上下文、部分上下文和参数化记忆基线进行比较。实验表明,Metis无需回放原始证据即可有效存储和检索信息,在记忆操作和问答任务上均取得了最佳平均性能,并能泛化到分布外基准。消融研究揭示,自适应聚合、辅助训练数据和独立的记忆查询对于稳健的记忆形成至关重要,而容量研究表明,长序列和大量更新步骤会逐渐降低记忆保持能力。当记忆为空时,该方法在很大程度上保留了骨干网络的一般能力,但存储的无关信息可能会干扰后续任务,并且对记忆状态的低秩分解表明,大多数有用信息集中在一个低维子空间中。
主数据涵盖四种记忆操作——记忆、遗忘、更新和反思——每种操作都使用不同的多轮框架,其中最终的查询答案与先前的记忆步骤保持一致。样本从27个跨越不同领域的公开基准中合成,通过优化为学习原生记忆流程提供显式监督。每种记忆操作遵循一个固定的交互模式:记忆陈述一个事实然后查询它;更新在查询前修改一个事实;遗忘在查询前撤销一个事实;反思引入多个单跳事实并查询它们的多跳组合。源基准包括小说、科学、新闻和逻辑推理数据集,这些数据集提供经过验证的事实,减少幻觉,同时丰富上下文和可追溯性。
主数据集包含357k个样本,涵盖记忆、遗忘、更新和反思操作,总计4.061亿个token。记忆操作在token预算中占主导地位,占所有token的89%,但样本数少于遗忘操作,这表明其交互序列要长得多。显式指令是总体上最常见的风格,但隐式和干扰风格也得到充分体现,尤其是在记忆和反思操作中。记忆操作消耗了总token的89%,尽管其仅占所有样本的16%。干扰风格样本(记忆指令嵌入在无关对话中)占整个数据集的一半。遗忘和更新操作严重偏向显式记忆命令,而记忆和反思则在显式和隐式风格之间保持平衡。
辅助数据分为四个子类型,通过将事实和对话组合成复杂的交互模式,以解决干扰和记忆污染问题。多实体绑定和选择性遗忘训练模型处理多个易混淆的事实而不产生串扰,而记忆后对话和无关记忆对话则防止存储的值泄露到无关的对话轮次中。多实体绑定存储两个相似的事实,然后查询两者,迫使模型将每个值绑定到其对应的事实。选择性遗忘撤销一个事实而保留另一个,教会模型有选择地遗忘而不造成连带损失。
辅助数据集包含609,443个经过质量验证的样本,分布在四个针对干扰和记忆污染的子类型中。记忆污染场景在该集合中占主导地位,仅记忆后对话就占所有样本的一半以上。多事实场景在多实体绑定和选择性遗忘之间平均分配,但合计仅占总数的约四分之一。记忆后对话是最大的子类型,贡献了超过一半的辅助样本。记忆污染场景的数量大约是多重事实场景的三倍。
全上下文Qwen3.5模型在记忆操作任务上取得了很高的综合得分,但移除上下文会导致性能急剧下降。部分上下文在Metis测试集上比在MemOps (Gold)上保留了更多信息,在后者中,不完整的历史无法可靠地支持操作。在无上下文条件下,Metis在两个基准上均取得了最佳平均结果,恢复了部分丢失的性能。全上下文Qwen3.5模型在MemOps (Gold)上平均得分超过84,在Metis测试集上平均得分超过73,而部分上下文导致平均得分分别降至22-30和60-65。在Metis测试集上,部分上下文下的记忆和反思得分维持在60以上,但在MemOps (Gold)上,所有操作的得分都降至40以下,表明不完整的历史对于该基准尤其不可靠。Metis在无上下文设置下取得了最佳平均性能,优于其他方法,并且将模型规模增大到27B为记忆、更新、反思和总体得分带来了明显的提升。在MemOps (Gold)上,所有上下文设置中的遗忘操作得分始终低于其他操作,并且即使对于Metis-27B,它仍然是最困难的操作。
评估设置涉及多轮记忆操作(记忆、遗忘、更新、反思),这些操作基于来自不同基准的合成数据训练,并辅以解决干扰和记忆污染问题的辅助数据。实验验证了完整的对话上下文对于可靠的记忆性能至关重要,因为部分上下文会导致性能急剧下降,尤其是在MemOps (Gold)测试集上。Metis模型在无上下文条件下恢复了最多的性能,而遗忘操作在所有设置中始终被证明是最困难的操作。