个人记忆更新要分两步看:MemShift 把“没察觉”和“修错了”拆开计分
核心概要
AI 助手保存的“重要联系人”这类值由语言模型从个人记录中推导,输入一变就可能失效。MemShift 用只在某一种变化上分叉的合成世界,把“是否察觉变化”和“修复是否正确”分开计分,并以文本生成前就固定的金标准替代模型裁判。在四个开放权重模型上,检测只有在修复可靠时才带来提升:重定义后,键与精确重算的交互为 +38.8 个百分点。
深度剖析
个人记忆的更新被拆成两步:察觉输入变了,以及算出正确的新值。MemShift 对每个发生变化的条目分别记录记忆是否作废了它、重新推导的值是否正确,以及未作废时实际返回了什么。 此前 LoCoMo、LongMemEval、MemoryAgentBench 这类基准只给新信息到达后的最终答案打分,因此察觉失败和修复失败看起来一样;而且它们把每种变化都写成新文本,但重定义、换写入模型和导出这三类变化并不增加文本。 在重定义分支上,一个从不察觉变化的记忆在变化条目上答对 7.5%,一个几乎察觉每次变化、再让写入模型重新推导的记忆答对 6.7%,两者得分接近,失败却发生在不同步骤。
检测的价值取决于修复能到什么程度。带键的记忆会作废输入已变的条目并重新推导,但只有当重新推导本身可靠时,作废才转化为准确率。 以 Qwen3.5-9B 为写入模型时,重定义后加键只把 Update 提高 +0.2 个百分点;换成写入模型自己写的程序重新推导时提高 +25.4 个百分点,换成精确重算时提高 +26.9 个百分点。 四个开放权重模型都呈现同一模式:每个模型在重定义和删除后的键与修复交互项都为正且区间不含零;重定义后交互为 +14.4 到 +28.5 个百分点,删除后为 +5.0 到 +26.4 个百分点。
修复的短板集中在按个人定义聚合多个记录的条目上。这类条目要求按一句话规则跨日历、联系人、任务等字段做计数或取集合,语言模型重新推导时容易算错。 每个开放权重写入模型在每次变化后正确重新推导的变化定义条目不超过 25%,而精确重算至少达到 91%;写入模型自己写的程序在类型化记录上运行,补上了大部分差距。 以 Qwen3.5-9B 为例,源修订后它只把 16.3% 的变化定义条目重新推导正确,精确重算则为 99.7%;在带键的变化定义条目上,程序把 Update 相对写入模型自身重新推导提高 +57.4 个百分点,精确重算为 +82.9 个百分点。
启示与展望
测量对象是十二个月的合成人物世界,每个世界有六类来源、48 个条目,其中 6 个是按一句话定义聚合记录的条目;定义写在结构化字段上,金标准由确定性评估器计算。这些世界是合成评测数据,结果描述合成世界和所测模型,而不是系统如何对待真实人物的数据。
世界是合成的、由模板渲染,定义是结构化字段上的一句话规则,真实记录更杂乱、真实定义更含糊;主研究的区间只基于 20 个世界,且服务同一份存储时换成 JSON 记录会改变 Update,因此效应的方向比绝对水平更可推广。
