
前段时间,Andrej Karpathy 在 X 上分享了自己使用大模型搭建个人知识库的方法。
没有发布新模型,也没有推出新产品,只是讲了讲如何让 AI 整理和维护本地资料,这条帖子却获得了超过 2100 万次浏览。

随后,他又把这套方法整理成一份名为 LLM Wiki 的 Markdown 文档,并在 GitHub 上公开。截至我查看时,这份文档已经获得了约 4.2 万个 Star。

这套方法最吸引我的地方是:它不再让 AI 每次提问时都从头翻找资料,而是让 AI 持续整理、连接和更新你的知识,最终形成一个会自己生长的“第二大脑”。
这一次,我用 Codex+Obsidian,把它完整搭了出来。
Obsidian 是一款本地 Markdown 知识管理工具,目前拥有数百万用户。它最大的特点是数据完全保存在本地,并通过双向链接和知识图谱,把零散笔记连接成个人知识网络。
Codex 是 OpenAI 推出的 AI Agent 工具,已经拥有大几百万周活跃用户。它正在从代码助手逐渐扩展为通用 Agent,不仅可以编写代码,还能读取、修改本地文件,并完成复杂任务。
两者的分工非常清楚:
Obsidian:负责保存和展示知识
Codex:负责理解、整理和维护知识
Obsidian 中的所有笔记,本质上都是本地 Markdown 文件。
一个知识库就是电脑里的普通文件夹,其他编辑器、脚本和 AI Agent 都可以直接读取这些内容。即使文件被外部修改,Obsidian 也能同步展示最新结果。
而 Codex 可以在这个目录中读取文件、修改内容、运行脚本,并完成多个步骤的任务。
它还会读取项目中的 AGENTS.md 文件,因此我们可以提前定义知识库的目录结构、命名规则、引用方式和维护流程,让 Codex 每次操作都遵循同一套规范。
所以,这套系统可以这样理解:
Obsidian 是知识库后台,Codex 是 AI 知识管理员,Markdown 文件才是真正属于你的数据资产。

我先在电脑中创建一个名为 Knowledge 的文件夹,然后分别使用 Obsidian 和 Codex 打开它。
接着,把 Karpathy 的 LLM Wiki 方法文档交给 Codex,让它根据这套理念搭建知识库。

最终,Knowledge 中生成了类似下面的结构:

这个目录就是一个由 AI 协助管理的本地知识库:
raw/:保存原始资料,例如 PDF、文章、网页和笔记
wiki/:保存 AI 阅读资料后提炼出的摘要、主题、概念和结论
AGENTS.md:规定 AI 应该按照什么规则整理知识
scripts/:用于搜索知识、检查遗漏、发现失效链接
README.md:记录知识库的使用方式
搭建完成后,日常使用主要分为三个动作:摄取资料、基于知识库提问,以及定期做 Lint 审查。
看到一篇有价值的文章后,我会直接把链接或文件交给 Codex,让它收入知识库。
Codex 的操作比较克制。
第一次收到资料时,它通常会先询问是否需要保存、放到哪个目录,以及是否要进一步提炼。
如果你希望以后发送资料后直接整理,可以告诉它:以后我发给你的学习资料,默认直接保存到知识库。
它会把这项要求写进规则或记住当前项目中的操作习惯。

接下来,我又给了它两篇文章。
这里有一个细节让我有些意外。
其中一篇文章写作时提到某个开源项目包含 36 个 Skill,但 Codex 在处理文章时,又主动查看了文章中的开源地址,发现项目里的 Skill 数量已经发生变化。
也就是说,它不只是机械地保存文章内容,还会继续检查文章引用的外部资料。
对于可能发生变化的信息,它能够结合当前页面进行补充,从而提升整理结果的时效性。

整理完成后,AI 不再只是生成一篇长摘要,而是把文章拆解成多个独立知识点,并与知识库中已有的内容建立关联。

知识不再按照“收藏了多少篇文章”增长,而是围绕真正重要的问题不断变厚。
以后提问,AI 不需要重新通读所有原文,就可以先定位已经提炼过的关键知识,再结合后来加入的资料生成回答。
这种方式既能保留原始资料,又能提炼长文、连接同类内容,并随着新资料不断补充和修正,最终把零散收藏沉淀成自己的知识体系。
完成资料摄取后,就可以直接围绕知识库提问。
例如,基于刚才处理过的文章,我问:如何判断一个产品点子是否真的有用户?

Codex 没有一上来输出一篇很长的通用分析,而是先根据知识库里的内容,给出了相对简洁的判断框架。
同时,它还列出了对应的知识页面。
如果只想快速得到结论,看当前回答就够了。
如果需要进一步研究,再打开相关 Markdown 文件查看更完整的背景、来源和推导过程。
这也是我觉得这种知识库更实用的地方:
回答可以简洁,但背后的证据和详细内容依然可以追溯。
知识库使用时间越长,越容易出现重复页面、失效链接、过时结论和相互矛盾的观点。
所以,我会定期让 Codex 对整个知识库做一次 Lint 审查。
可以直接输入:
对整个知识库进行一次 Lint 审查。
检查重复页面、孤立页面、失效链接、过时信息、缺少来源的结论和相互矛盾的观点。
格式和链接问题可以直接修复。
涉及删除、合并和观点修改的内容,先生成报告,不要直接执行。真正好的知识库,不只是不断增加内容,还要敢于删除、合并和修正旧知识。
否则,AI 只是帮你更快地制造了一堆新的信息垃圾。

我之前专门写过 NotebookLM。
NotebookLM 是我非常喜欢的一款 AI 知识库工具。
它可以直接导入 PDF、网页、YouTube、音频和 Google 文档,围绕指定资料进行带引用的问答,还可以生成音频概览、思维导图和学习资料。
但 NotebookLM 和本地 LLM Wiki 解决的并不是同一个问题。
我会这样区分:
NotebookLM 是一个优秀的 AI 阅览室,本地知识库是一套可以编程的个人知识操作系统。
NotebookLM
适合快速阅读一批资料、针对原文进行问答、生成摘要、音频和思维导图、临时研究一个新主题、不想配置任何本地环境的人。
Codex + Obsidian
适合长期研究同一个领域、持续更新自己的判断、让 AI 直接修改知识结构、自定义目录、规则和处理流程、对知识进行二次开发。
NotebookLM 导入的通常是资料副本或同步内容。
它会围绕这些来源回答问题,但不会直接修改原始文件,也不会按照你的规则重新组织整个文件结构。
本地知识库则不同,Markdown 文件是完全开放的。
Codex 不仅能够读取,还可以更新、合并和重构这些文件,甚至可以基于知识库继续写代码、生成网页和开发工具。
所以,两者并不是替代关系。
我的使用方式是:
用 NotebookLM 快速阅读资料,用 Codex+Obsidian 沉淀真正值得长期维护的知识。
我认为不是所有看过的东西都值得进入第二大脑。

大多数人搭建完 Obsidian 知识库后,最后会停留在关系图谱。
图谱看起来很复杂,也很有科技感,但实际使用效率不一定高。
我更感兴趣的是:
既然这些笔记都是结构化的 Markdown 文件,为什么不能让 Codex 根据它们,生成一个真正属于自己的知识网站?
于是,我让 Codex 读取整个本地知识库,生成一个可以直接在浏览器中打开的 HTML 数据看板。
我给它的要求是:
请读取当前知识库中的 Markdown 文件,生成一个可以在浏览器中直接打开的本地 HTML 知识看板。
需要包含:
1. 全局搜索。
2. 知识主题词云。
3. 按标签统计的主题分布。
4. 知识新增和修改时间线。
5. 最近更新的页面。
6. 孤立页面和失效链接提醒。
7. 高频出现的人物、产品和概念。
8. 可点击的知识关系图。
9. 每个页面可以跳转回对应的 Markdown 文件。
10. 数据直接读取本地文件,不依赖远程数据库。
这样一来,Obsidian 就不再是唯一的查看方式。
它更像知识库的后台,而 HTML 是根据具体场景设计的前端。
同一个知识库,甚至可以生成多个不同的前端。
自己使用时看完整后台,给团队看项目看板,给用户看经过筛选的公开网页。
这也是我在实践之后形成的第二个判断:
知识库不应该只是一个等待被提问的仓库,它应该是一套能够持续生成界面、报告和产品的数据底座。

过去,我们搭建知识库,主要是在解决一个问题:我的资料放在哪里?
到了 AI 时代,真正值得解决的问题变成了:我的知识能不能被持续更新、重新组合,并转化成新的成果?
Karpathy 的 LLM Wiki 给出了一个很好的起点。
但我认为,它真正有价值的地方,不只是用 AI 自动整理 Obsidian,而是把个人知识变成一种可以被编程、被计算、被展示的数据。
在这套系统中:Obsidian 是数据后台,Codex 是知识管理员和开发者,Markdown 是可以长期保存的知识资产,HTML、报告、图表和工具是知识的不同前端,人负责选择资料、提出问题并做最终判断 。
AI 第二大脑不是一个更高级的收藏夹。
它应该是一套会随着你的工作持续生长,并且能够反过来帮助你思考、判断和创造的个人知识系统。
不要只让 AI 帮你保存更多资料。
更重要的是,让过去积累的知识继续参与今天的工作。
感谢你读到文末。
AI 时代,工具会不断变化,但持续学习和思考的能力永远重要。
如果这篇文章对你有帮助,欢迎点赞、在看,转发给身边的朋友。
记得星标我 ⭐,后续继续分享更多 AI 产品实践、工具探索和创业思考。
很高兴与你相遇,我们下期见。