我有一个具体的时间节点,可以告诉你我的知识库是什么时候死的。
是在一个周二的下午,我打开 Obsidian,准备查一个我半年前研究过的问题。我找到了那个文件夹,里面有三十多个页面,结构整齐,链接密布,Graph view 里还能看到漂亮的网状结构。
我点开第一个页面,读了两段,然后我停下来了。
因为我发现,这个页面引用的那篇论文,我三个月前已经读到有人指出其中一个核心数据有严重问题。但这个页面不知道。它还在用那个数据,还在把从那个数据推导出的结论,当成确定的事实,继续链接到另外五个页面。
我又点开那五个页面。
它们都不知道。
那一刻,我有一种很具体的感觉,像是走进一栋看起来灯火通明的房子,然后发现里面所有人都已经停止了呼吸。表面上一切正常,但这个知识库,早就死了。
我花了两周搭起来的东西,在我不知道的时候坏掉了
让我倒回去,讲一下这个知识库是怎么建起来的。
六个月前,我下定决心要把这个领域研究清楚。我找了大概四十篇文章、十几篇论文、七八本书的笔记,建了一个我自认为非常严谨的结构:有概念页、有实体页、有对比表、有索引。每个页面之间有链接,Graph view 里能清晰地看到知识的脉络。
我用了将近两周,把这个架子搭起来。搭完那天晚上,我截了一张 Graph view 的图,发给一个朋友说,你看,这就是我三年积累下来的认知地图。
朋友说,好厉害。
我确实很得意。
然后我开始往里面加新东西。读到一篇好文章,ingest 进去。遇到一个新概念,开一个新页面。有新的对比,加一张对比表。这个过程持续了大概两个月,知识库越来越大,Graph view 越来越茂密。
然后有一段时间我很忙,三个月没有打开它。
再打开,就是那个周二的下午。
它不是死于被遗弃,它死于我不知道它的内部在腐烂
这是我当时最难接受的事。
我以为知识库死亡的方式,是被遗弃——你不更新它,它就停在那里,慢慢老去,直到你把它彻底关闭。就像一个你不再联系的朋友,不是决裂,只是慢慢没有了音讯。
但那个周二我发现,我的知识库死得更诡异。它不是停在那里的,它看起来还是活的:链接还在,结构还在,我还偶尔往里面加东西。但它的内部,在我没有注意的时候,已经开始腐烂了。
那个被推翻的数据,只是我找到的第一个问题。
我花了接下来的两个小时,仔细翻了一遍那个知识库。我发现:
- 有四个页面,引用的来源已经失效,但没有任何标记。
- 有两对页面,对同一个概念给出了互相矛盾的定义,链接到了不同的来源,但因为它们在 Graph view 里属于不同的聚类,我从来没有把它们放在一起看过。
- 有七个页面,没有任何其他页面链接到它们。它们存在,但对整个知识库没有任何贡献,也没有任何影响,就像悬浮在真空里的碎片。
- 有三个概念,在我的知识库里出现了至少两次,用了不同的名字,但指向同一件事,彼此毫不相知。
这些问题,没有一个是在某一天突然出现的。它们都是慢慢发生的,每一次微小的腐烂都悄无声息,直到腐烂累积到一定程度,整个结构开始从内部失去可信度。
我开始意识到,知识库的死亡,不是一个事件,是一个过程。
为什么维护比建立难一百倍
建立,是有终点的。你把框架搭好,把已有的内容整理进去,有一天你可以说:完成了。这个终点给你一种掌控感,一种成就感,一种可以截图发朋友圈的形状。
维护,没有终点。
维护意味着:每当有新信息进来,你要判断它是否推翻了旧的结论。每当你更新了一个页面,你要想到哪些链接到这个页面的其他页面,也需要被更新。每当一个来源失效,你要追溯所有依赖这个来源的页面,评估它们是否还可信。每当两个概念开始趋于同义,你要决定合并、重定向、还是保留区分。
这件事需要的不是智识上的深度,而是一种持续的、全局性的、不知疲倦的注意力。
你要同时记住三十个页面的状态,随时追踪它们之间的关系,并且在任何一个角落发生变化时,知道哪些其他角落需要跟着变化。
人类不擅长这件事。不是某些人不擅长,是所有人都不擅长。这不是能力问题,这是人脑的工作方式决定的。我们擅长深度,不擅长宽度;擅长当下,不擅长追踪;擅长发现新东西,不擅长记住旧东西哪里变了。
所以我们的知识库会腐烂。不是因为我们懒,是因为我们是人。
于是我开始理解一个词:lint
如果你有工程背景,你可能知道这个词在代码世界里的意思。
Lint,是一种自动检查工具。它不是告诉你代码如何运行,而是告诉你代码哪里有潜在的问题:哪里有命名不一致,哪里有未使用的变量,哪里有可能在边缘情况下崩溃的逻辑。
Lint 不是一次性的清理,是持续的体检。
Karpathy 在他写的那个框架里,把 lint 引入了知识管理。他说,lint 是对知识库做健康检查:找矛盾,找过时,找孤岛,找那些应该存在但还没有被写出来的页面,找那些被提到了很多次但从来没有被认真定义过的概念,找数据的空洞。
我第一次读到这段话的时候,我的第一反应不是“这个技术很有趣”。
我的第一反应是:原来知识库需要的不是整理,是体检。
这两件事,差得很远。
整理,是把已有的东西摆整齐。体检,是找出哪里已经生病了、哪里正在恶化、哪里表面正常但内部有问题。
我过去花了大量的时间整理知识库:改格式,重新分类,统一命名,让 Graph view 看起来更漂亮。但我从来没有做过一次真正的体检:系统性地去问,这个知识库里,有什么是我不能再信任的?
我第一次做 lint 时,发现了什么
我决定认真地给那个已经腐烂的知识库做一次体检。
我没有用任何自动化的工具,就是坐在那里,用一个清单,一个页面一个页面地过。这个过程花了我将近四个小时。
结果让我非常不舒服,但也非常清醒。
我发现,我那个看起来有三十多个页面、链接密布的知识库,真正可信的页面,只有十一个。
剩下的页面,要么依赖有问题的来源,要么包含和其他页面矛盾的结论,要么是孤岛,要么是重复,要么太久没有更新,已经脱离了这个领域当前的讨论。
这个发现让我难受了一会儿。那两周搭建的努力,那两个月的积累,最后可信的是三分之一。
但我后来想,如果我不做这次体检,我还会继续把那个知识库当成可靠的资产,继续站在一个腐烂的地基上做判断,继续引用那些我不知道已经有问题的结论。
无知不是幸福,是风险。
让我告诉你,腐烂是如何从一个点扩散开去的
我想把那个数据问题的传播链,讲得更清楚一点,因为我觉得很多人不知道这件事有多快。
最开始是一篇 2023 年的论文,里面有一个关于效果的数据,我当时觉得很有说服力,就引用了,建了一个概念页,把这个数据作为核心论据之一。
然后,因为这个概念页是我知识库里一个重要的节点,有六个其他页面链接到它,把它当成背景知识。
后来我 ingest 了一批新文章,AI 帮我更新了一些页面,在更新的过程中,它顺手引用了那个概念页里的数据,因为那是当时知识库里关于这个问题最权威的来源。
等到那个数据被指出有问题的时候,我没有去更新知识库,因为我只是随手读到了那条质疑,没有意识到它对我的知识库意味着什么。
结果就是:一个有问题的数据,经过四五个月,安静地渗透进了知识库里七个不同的页面,每一个页面都站在它上面,继续往外链接,继续往外传播。
这不是罕见的意外,这是知识库的正常死法。
知识库需要的不是更多内容,是可信度
我现在维护知识库的方式,彻底改了。
不是从工具层面改,是从认知层面改。
我过去评价一个知识库好不好的标准,是:够不够大、够不够全、结构够不够漂亮。
现在我只用一个标准:我能信任多少。
一个有两百个页面但我只信任三十个的知识库,是一个坏的知识库。一个只有四十个页面但每一个我都可以放心地拿来用的知识库,是一个好的知识库。
大不是好。可信才是好。
而可信,需要维护。维护,需要体检。体检,需要你愿意面对那些你不知道已经坏掉的东西。
这是知识管理里最难的部分,不是建立,是持续地对自己的知识保持怀疑,并且有一套机制,让这种怀疑变成可操作的改善。这就像维护一份高质量的 技术文档,核心不在于页数,而在于信息的准确性和一致性。
五个问题,每隔一段时间问自己一次
这是我自己在用的体检清单,不是工具,不是流程,就是五个问题。你也可以把它看作一份简单的 知识库 健康自查指南。
第一个问题:我的知识库里,有没有页面依赖的来源,是我后来已经对它产生怀疑的?
不是要求你每一条结论都有无懈可击的证据,而是:你知不知道哪些地方的地基是软的?已知的软,比不知道的软,要安全得多。
第二个问题:有没有两个页面,在讲同一件事,但互相不认识?
同义词是知识库的隐形杀手。同一个概念被叫了两个名字,分别发展出了各自的链接网络,慢慢变成两个平行的岛屿,互相矛盾但你看不到,因为你每次只打开其中一个。
第三个问题:有没有页面,是完全没有其他页面链接到它的?
孤岛页面不是中立的,它们是问题的信号。要么这个内容和你的知识体系没有真正的关系,只是被你收进来放着;要么这个内容应该和很多东西相关,但你还没有梳理清楚那些关系。不管是哪种情况,孤岛都值得被检查一次。
第四个问题:有没有结论,是我三个月前就建立的,但我最近再也没有回去确认过它还成立?
时间是知识的天敌,尤其是在变化快的领域。不是每一个结论都会过时,但你应该知道哪些是你敢说“现在还成立”的,哪些只是“我上次看的时候是这样的”。
第五个问题:有没有问题,是我的知识库显然应该能回答,但当我去问它的时候,它给不出我一个整合过的答案?
这是最实用的一个测试。不是理论上的完整性,是实际使用时的有效性。如果你的知识库在你最需要它的时候帮不上忙,那无论它看起来多漂亮,对你而言它都是死的。
把这五个问题存下来。不是现在去做,是下一次你打开你的知识库,感觉“好像有哪里不太对”的时候,拿出来对一遍。
那种“好像哪里不太对”的感觉,你可能有过。你以为是错觉,是你太挑剔,是你应该信任自己过去的努力。
但很可能,那不是错觉。
那是你的知识库,在用它唯一的方式,跟你说话。
你每一次和 AI 聊完之后,那个“想清楚了”的感觉为什么会消失,以及我是如何让这种感觉留下来的,我们下一篇见。