每次打开一个新的 AI 会话,我们似乎都在面对同一个聪明却失忆的合作者。
它会写代码、查资料、分析问题,也知道大量通用知识。但它不知道我为什么不喜欢某种做法,不知道这个项目曾经踩过哪些坑,不知道一句看似普通的要求背后已经经历过多少次讨论,更不知道哪些结论是我亲自确认的,哪些只是上一次 AI 留下的推测。
于是,大量交流并没有用来解决眼前的问题,而是在重新介绍「我是谁」「这个项目是什么」「我们以前为什么这样决定」。如果这些背景没有说全,AI 就只能用训练中最常见的模式填补空白,再交出一个合理、完整,却未必属于我的答案。
问题并不只是 Context 太短。更根本的问题是:我们没有与 AI 共同保管一套可以跨越会话的先验知识。
真正高效的交流,本来就不从零开始
熟悉的同事之间,一句「照旧部署」就可能触发一整套流程。乐队指挥的一个手势、球场上的一声口哨,也可以让许多人立刻执行复杂动作。
这些短信号本身没有装下全部信息。它们只是引用了双方已经知道的内容:共同训练过的动作、过去验证过的流程、熟悉的术语,以及对当前情境的共同理解。
交流之所以高效,不只是因为表达简短,而是因为接收者可以用已有先验把它展开。
这里的「先验」不是严格的哲学或统计学术语,而是泛指当前这句话出现之前,双方已经能够调用的知识、约定、经验和判断。
人和 AI 的沟通也遵循同样的规律。自然语言、编程语言、数学公式和项目术语之所以有用,都不仅因为它们自身表达力强,还因为模型已经在训练中学会了大量相关规则。我们不必每次解释 Python 的函数是什么、Markdown 的标题如何表示、Git diff 意味着什么,这些现成的共同基础替双方省下了巨大的沟通成本。
但通用模型拥有的主要是人类社会的平均先验。它可以知道「通常怎样做」,却不会天然知道「我为什么要这样做」。越私人、越罕见、越依赖具体历史的部分,越不能指望模型从通用知识中准确猜出。
从零开始,就是重新缴纳上下文税
新会话的冷启动表面上很干净,实际代价很高。
第一次讨论一个问题时,我们可能花很久解释目标、背景、边界和偏好。AI 经过几轮追问,终于理解了问题,也在纠错中知道哪些常见方案不适用。可一旦这些内容只留在聊天窗口里,下次换一个会话、模型或工具,双方就要重新走一遍相同的路。
这是一种反复缴纳的上下文税:过去已经完成的对齐没有成为未来协作的基础。
更麻烦的是,人通常不会完整复述过去。我们只会凭记忆讲出当下觉得重要的部分,遗漏当时的反例、犹豫、来源和适用条件。AI 再基于这份二手摘要继续补全,新的结论就可能建立在已经失真的旧结论上。
我在《LLM 与信息熵》里把这种二级结论称为缓存:它可以降低认知负担,却也会失效。如果源事实已经变化,摘要仍被当作现在的真实,AI 不一定会胡乱编造;它可能只是非常稳定地调用了一段过期记忆。
所以,长期协作需要保存的不只是「最后答案」,还要保存答案为什么形成、来自哪里、在什么条件下成立,以及什么时候应该重新检查。
聊天记录还不等于长期记忆
保留全部聊天记录当然比什么都不留好,但聊天记录本身并不是一套理想的共享先验。
一段长对话通常同时包含:原始事实、临时猜测、已经否决的方案、用户纠错、AI 的总结、后来被推翻的结论,以及与当前问题无关的闲谈。把整段历史重新塞进 Context,会增加噪音;只保存自动摘要,又会丢失细节和来源。
真正可用的长期记忆,需要在原始材料和当前上下文之间多一层知识管理:
- 原始材料保留事实、现场和最初表达,作为可以回看的源头;
- 用户确认的概念、偏好和决定单独记录,明确哪些内容真正代表本人;
- AI 生成的总结与推断另行存放,不让它们悄悄冒充用户观点;
- 总览和索引负责压缩当前状态,同时链接回对应的源笔记;
- 规则文件说明 AI 进入知识库后应该怎样读取、引用、更新和处理冲突;
- 过期、被推翻或只在特定条件下成立的结论保留版本与边界。
这套结构不需要一开始就是复杂的知识图谱。一个由 Markdown 文件、目录、链接和 Git 组成的本地知识库,已经可以承担相当一部分工作。
重要的不是文件格式本身,而是知识的地位能够被看见:什么是原始证据,什么是我的判断,什么只是 AI 的解释,什么已经过期,什么仍然未知。
知识库是冻结模型之外的共同记忆
今天的大多数 AI 不会因为一次日常对话,就永久修改底层模型。会话内表现出来的适应,主要依赖当前 Context;Context 消失后,这段关系也失去了直接载体。
本地知识库没有把记忆真正烧进模型权重。它做的是另一件更朴素、也更可控的事:在下一次工作开始时,把过去积累的相关经验重新带回 Context。
这形成了一个跨会话的循环。每次对话不再是一座孤岛,而是对共同状态的一次局部更新。
长期来看,真正复利的不是聊天次数,而是被保留下来的纠错。第一次我需要解释「为什么这个方案不合适」;如果原因被记录下来,下一次 AI 就不必只记住一个孤立禁令,而可以在相似问题中主动识别同一种边界。
术语也会因此变成语义上的宏。一个概念第一次需要长篇定义,之后只要引用它的名字,就能展开一整套含义、反例和来源。共享先验越稳定,新的消息就越接近只传递「相对于过去发生了什么变化」。
这才是人机协作从一次问答走向长期关系的分界线。
不要把所有记忆都塞进每一次 Context
拥有知识库,不代表每次都要把全部文件交给 AI。
Context 仍然是有限资源。信息太少,模型只能大量猜测;信息太多且彼此无关,真正重要的约束又会淹没在噪音中。长期记忆的价值不在于无限堆积,而在于可以按需展开。
比较合理的结构应该像一张可下钻的地图:先加载稳定规则、当前目标和索引;遇到具体问题,再进入对应项目、概念、决定和原始材料。总览负责提供高阶方向,源笔记负责在细节有争议时校准。
换句话说,长期记忆不是一条越来越长的超级 Prompt,而是一套检索、展开、验证和回写机制。
它也要求 AI 承认自己没有读到什么。没有加载相关源头时,模型不应把模糊印象说成已有共识;聚合页与源笔记冲突时,也不应静默挑选一个更顺口的版本。一个可靠的共同记忆系统不仅要帮助 AI 想起,还要帮助它发现自己的记忆可能不完整。
共享先验必须由人掌握
共享先验越强,AI 越容易沿着既有框架继续思考。这既是效率来源,也是风险来源。
如果知识库里的长期结论主要由 AI 自动生成、自动归纳、自动更新,人可能以为自己在训练 AI 理解自己,实际保存下来的却是 AI 对自己的解释。下一次模型再读取这些解释,就会把自己的旧推断当成新的前提,不断强化同一套框架。
这与我在《当 AI 越来越像你,你也在越来越像 AI》里讨论的风险相连:长期协作不只让 AI 适应人,也可能让人逐渐习惯 AI 的概念和表达方式。
因此,外部记忆最好保持用户主权:
- 文件可以直接阅读和修改,而不是只存在于不可见的画像中;
- AI 的总结与用户原话分开,重要结论需要人的确认;
- 每条关键判断都能回到来源,而不是在多轮摘要后失去根;
- 记忆可以导出、迁移、删除和回滚,不被某个模型或平台锁住;
- 新证据出现时,可以保留推翻过程,而不是悄悄改写过去。
本地 Markdown、普通文件和 Git 的价值正在这里。它们并不聪明,却足够透明。模型可以更换,工具可以更换,知识库仍然由人持有。被积累下来的不是某个平台对用户的黑箱了解,而是一份用户自己也能审查的共同历史。
AI 的长期价值,来自共同历史
单次比较模型时,我们很容易只看谁回答得更快、推理更强、代码写得更好。但在长期协作中,另一个变量会越来越重要:它能否接上过去。
一个稍强却每次失忆的模型,可能不断重建问题;一个能够可靠读取共同历史、理解既有术语、尊重已经确认的边界,并在新证据出现后正确更新记忆的系统,才更像真正的长期合作者。
这不意味着我们要把全部人生交给 AI,也不意味着所有经历都值得保存。需要建立的不是一个无所不记的监控系统,而是一套由人决定什么值得留下、什么只能暂存、什么必须遗忘的外部记忆。
AI 可以帮助压缩、检索、建立链接和发现矛盾,但记忆的所有权、来源和最终解释权仍应留在人手里。
从零开始看似没有包袱,却也是共享先验的天敌。每次对话都归零,过去的纠错无法复利,形成的术语无法复用,AI 也只能一次次回到通用模型的平均答案。
真正高效的人机协作,不是把每一条 Prompt 写得越来越长,而是让双方拥有一段可以检查、修正和继续生长的共同历史。
下一次开始时,我们不必重新认识。
评论