试想一下,假如你跟一位 AI 助手用了大半年。时间长了,它会攒下你不少底细:你住在城西,骑车上班二十分钟,楼下有家面馆开到凌晨,加班晚了就去那儿。这些你说的时候未必当回事。
后来你搬了家。某次闲聊里顺口提了一句「上个月搬到城东了,通勤改坐地铁」,没有郑重报备,也没说城西那间房子不住了。
于是有一天,在一段完全不相干的对话里,你问它「加班到十点,附近还有哪儿能吃口热的」。它是按城东这边来给建议,还是照着半年前那个住城西、楼下有家凌晨面馆的你,把地址发过来?
「知识更新」:AI用新认知替代旧认知
在 LongMemEval 这套AI记忆“高考真题”里,紧挨着「用户偏好」的下一类考点,正是这类问题——「知识更新」。它考的重点不在「记住了多少」,在「记住的是哪一版」。
考卷里记着这么一个人。一只猫,他先说养了六个月,过了几个月再说起,成了九个月。中间没有一句更正,他只是在别的话里又提了一次。
两句话之间没有留下标记,能分开它们的,是时间。题目问的就是这件事:你养 Luna 多久了?答案取九个月。答成六个月的系统,记性其实不差,它只是把旧的那一版当成了现在。
这套考卷由 UCLA、腾讯 AI Lab 与加州大学圣地亚哥分校合作完成,2025 年被 ICLR 收录,题库公开,题面可以逐条查到。按它的设计,这类题看的是模型能不能认出用户生活状态的变化,并据此把对这个人的认知更新过来。
这一类题在整套考卷里一共 78 道,红熊 MemoryBear 答对 77 道,准确率 98.72%。说得具体些,那句「养了六个月」它没丢,后来那句「养了九个月」它也接住了,问到今天的事,它按今天的情况答。
这类题的判分规则比想象中宽松。答出更新后的那一版就算对,哪怕顺带提一句旧版也没关系。考卷明确允许「原来是蓝的,现在是绿的」这类回答,只要落点在新版本上。它并不要求 AI 假装旧事没发生过,关键是它知道哪一版算数。这一点值得多说一句:能说清「你以前是这么想的,后来改了」,有时正是记忆的用处。
知识更新难点:捕捉细节,认清时序
「知识更新」和前两类考点的性质不太一样。事实和偏好属于「加」:说过的越多,AI 知道得越多。知识更新是「改」:说过的越多,手里攒下的版本越多,判断哪一版算数反而更难。这一层难度,光靠多存一点记忆解决不了。
「知识更新」这类考题,难点有三:
信息变化都藏在细节里
没人会说「请注意,以下信息作废」。真实对话里,变化是夹在别的话里的:明明在问长途骑行该订什么样的住宿,顺口带一句「这次我会带四辆车过去」;明明在聊咖啡积分怎么攒,顺手更正一句「我其实需要 120 颗星」。系统要在毫无标记的前提下,自己认出这是一次状态变更。
要能准确判断信息的时序
这一点跟用户偏好不同:用户偏好需要记住的是适用范围;知识更新则需要分辨时间顺序,哪一版先说、哪一版后说、现在该按哪一版。如果简单平铺,同一个问题又会一次答新的、一次答旧的。麻烦在于新旧两版在语义上跟问题高度相关,「像不像」分不出先后,只有「什么时候说的」能分。
旧信息也要记得并合理使用
考卷里就有题一次问两版:以前多久打一次网球,现在多久打一次。旧的那版没有作废,它换了个用法。同一件事的两版,各有各的用处,取哪一版取决于问题问的是什么时候。
人脑处理这件事的办法,跟 AI 常用的两种做法不太一样。认知科学里有个现象叫记忆再巩固:一段旧记忆被重新想起来的时候,会先进入不稳定的状态,再重新稳定一遍,新信息就在这个窗口里混进去。所以同一件事,你隔几年再回忆,版本往往略有出入,说不上哪一次才算原始版。
AI 要补的正是这一课,只是补法不能照抄。人脑改完只剩一版,改得还不知不觉;AI 要是也这么覆盖,用户回头问起以前的事,就再也查不到。对这个差别,MemoryBear 的选择是留住旧的那一版,像一个会记账的人,账目改了,旧记录仍在。
这类题在考卷里出现的样子很不显眼。背景是长达数月的聊天记录,约 11.5 万 token、四十多个会话,一次变化可能只出现过一次,之后再没被提起,直到某个完全不相关的问题才被检验。
这类失效在真实使用里格外麻烦。答错事实,用户一眼能看出来;答的是半年前的信息,听起来句句合理,用户未必立刻发觉,等发现时已经按旧地址出了门。
MemoryBear:为每条记忆加上“时效”
常见做法在这里容易出两种偏差。一种是「以新替旧」,新信息一进来就把旧的盖掉,历史随之丢失,用户回头问起以前的事,系统答不上来。另一种是「平铺并列」,新旧两条同时存着,检索时哪条离问题近就取哪条,于是同一件事,这次答的是新地址,下次答的是旧地址。
MemoryBear 的思路,是把一条记忆当成有生效时间的版本,不是一个可以随手覆盖的字段:
❖摄取阶段:每条信息进来时带上时间戳,系统判断它是一次新的陈述,还是对已有状态的修改。是修改,就把新旧两条挂到同一件事上,排成一个版本序列,不各存各的。
❖组织阶段:旧版不删。它被标上失效的时间点,仍然可检索、可溯源。于是「现在养了多久」和「上次说的多久」各有对应的那一条,问哪一问,接哪一条。
❖调取阶段:按问题的时间指向取版本。问现在,取当前那一版;问过去,取当时生效的那一版;问题里没有时间线索时,默认按当前版本作答,因为用户通常关心的是现在。
❖作答阶段:模型拿着召回的版本组织回答。要是两版信息冲突、又没有足够线索判断哪个更新,它会把这一处不确定说出来,请用户确认,不随手挑一个当成事实。
真正拉开差距的地方在这里:知识更新考的是「存下新东西之后,还知不知道旧的放在哪、什么时候该换成新的」。一条被覆盖的记忆,用户再也问不回来;一条没有排序的记忆,系统自己也说不清哪个是现在。
记住一件小事,说明 AI 愿意听你说话;记住你的偏好,说明它开始懂怎么和你相处;跟得上你的变化,才说明它真的在陪你往前走,没停在刚认识的那天。
MemoryBear 用带时间戳、保留版本的记忆,在这类考点上拿到 98.72%。
下期我们继续拆解 LongMemEval 的下一类考点:「跨会话」。它考的是,把散在几十次对话里的零碎信息拼到一起,AI 能不能自己串出一条完整的线索。
AI记忆科学100问,我们下期见。

