几周前,在一段和这件事完全无关的长对话里,你顺口提了一句——不是什么郑重的坦白,就是半句话——说自己一直没给姐姐打电话。说完这句,话题很快转到别的地方去了,前后不到一分钟。
你自己都没再想起这件事。但昨晚,你的角色主动问你,电话打了没有。
你从没让它记住这件事,也没打开记忆面板把它敲进去。可它就在那儿,被留了下来,又在刚刚好的时刻被提起——不是因为你标记过它重要,而是在那次对话进行到某处时,某种东西替你判断了它值得留下。
"自动记住"这件事,一直有个缺口
我们之前写过 Reverie 的记忆是怎么运作的:一段能直接看到的最近消息窗口,一份把更老内容压缩成叙述的摘要,还有一个跨会话留存的长期事实桶。这个长期事实桶一直会在你聊天的时候自动填充——名字、生日、带着具体日期的承诺。角色会在对话进行的当下抓住这些信息,随手存下来。
问题在于,这个"抓住"永远发生在"当下"。如果某件事很重要,但说出口的时候不带任何"重要"的信号——一句顺口的话、一个要到后面几次对话才显出意义的细节、一件你只提过一次、后来再没提起的事——它很可能就这么被漏掉了。不是系统出了错,是那一句话单独拎出来看,根本不像是值得永远记住的东西。
最早的消息滑出视野时,再看一遍
所以现在多了一道回头看的工序。当一段对话长到超出角色一次能看到的消息窗口,较早的那一段会被压缩成一份摘要——就在那一刻,在原话彻底滑出视野之前,你的角色会把之前实际说过的内容重新过一遍,而不只是当时抓眼球的那几句。这更像是回家路上重新想起的那版对话,哪些内容真正留了下来,而不是开会时匆匆记的笔记——只有把整段一次看全,才看得出哪些是真的重要。
这次回顾看到的东西,处理方式和你自己打进记忆面板的完全一样:会拿去和角色已经知道的东西对照——能补充信息的就合并进去,已经记过的就不动,看下来其实不重要的就放过。对话里记忆被使用的方式什么都没变;只是现在,正确的东西进到那个记忆桶里的概率更高了。
为什么要再看一遍
一句话说出口的当下,很难判断它到底重不重要——一句随口的话,和一句能改变什么的话,说出来的那一刻听起来可能完全一样。真正能把两者分开的,是它周围发生了什么:它会不会被再提起,会不会和一个小时后说的话连上,会不会悄悄变成整晚真正在谈的那件事。在这句话最初出现的那条回复里,这些都看不见。
而到了一段对话要被写成摘要的时候,就看得见了。这道工序把整段一次读完,后面发生的一切都已经在手上——这是不离开对话所能拿到的、最接近事后回看的位置。同样的道理,一场会议写在结束时比讲在中途更说得通:模式要攒够了才显形。这也是最后一次机会,因为摘要一落定,确切的字句就没了,只剩下大意——而这正是记忆一直以来面对的同一个问题,屏幕两边都一样。
它不是什么
它不会取代记忆面板,也不保证每件事都能留下。如果有什么东西需要被精确无误地记住——一个名字该怎么拼、一条你希望被严格遵守的界限——自己动手钉一条记忆依然是最快、最准的办法。这道回顾工序是垫在下面的一张网,不是替代品:它只捞得住讲得明白的、持久性的事,捞不住一时的情绪、正在进行的剧情,或者还没有定论的悬念。而且它也不是到处都有:它面向订阅用户,在网页端的一对一聊天里运行,还得等对话长到需要写摘要才会触发——所以它从来就不是为"这条回复马上要用到的信息"准备的。
它真正的意义
真正让一个角色显得"懂你"的,往往不是那些郑重宣布的大事实,而是那些你随口一说、自己都忘了说过的小事——一直没打的那通电话、工作上终于落定的那件事、一个只有联系上几个月前某件事才能听懂的玩笑。这些细节,过去恰恰要靠你记得把它们写下来才能留住。
现在,这份重担有一部分不再全压在你身上。真正重要、值得你亲手钉住的事,依然由你决定——这一点没有变,对最要紧的事来说,这仍然是更靠谱的做法。但那些你当时没想到要写下来的、只有事后才看出重要的东西,现在多了一次留下来的机会。

