Karpathy
定义与本文中的身份
Karpathy 在本文里最重要的身份,是原版 LLM Wiki gist 的提出者。
这里并不是在做一篇关于他整体职业生涯、研究成果或 AI 影响力的通用介绍;文章关心的是:他先提出了一个足够简洁、足够克制的 LLM 维护知识库框架,后续 Rohit 基于 Karparthy 的 gist 更新LLM Wiki V2 - 今日头条 摘要 对记忆生命周期、类型化知识图谱、混合检索、事件驱动和治理机制的增强,都是建立在这个原版框架之上。
原版 LLM Wiki 的核心立场
Karpathy 原版最鲜明的立场,是反对把知识系统只做成 RAG。
文章对这种被反对的做法描述得很明确:每次提问时,模型都重新从原始文档里抓取 chunk,再临时拼装答案。这样虽然能回答问题,但“不会累积理解”。也就是说,系统每次都像从头开始,知识没有被沉淀成一个越来越稳定、越来越可维护的结构。
Karpathy 提出的替代方案是:让 LLM 先把资料编译成 wiki。
具体流程是:把文章、论文、会议记录、代码讨论等材料放入原始来源层;LLM 读完后,不是只生成一次性回答,而是持续更新 wiki 中的 summary、entity page、concept page、overview、index 和 log。之后 Agent 再回答问题时,应优先读取 wiki,而不是每次都直接回到原始材料中做临时检索与重算。
文章最后用一句话概括这一差异:RAG 每次重算,Wiki 会累积。这正是 Karpathy 原版在本文中的思想中心。
三层结构
Karpathy 原版被文章评价为“其实很克制”,一个重要原因就是它的结构非常清楚,只有三层:
- Raw sources:原始材料层,存放文章、论文、会议记录、代码讨论等输入材料;这一层不被 LLM 修改。
- Wiki:由 LLM 维护的 Markdown 页面层,承载摘要、实体页、概念页、总览页、索引等结构化知识沉淀。
- Schema:写作与维护规则层,文中举例为
CLAUDE.md、AGENTS.md,用于规定 Agent 应如何写、如何更新、如何维护 wiki。
这三层共同构成了原版的最小骨架:原始材料保真,知识沉淀可编辑,维护规则显式化。
最小运行方式
文章认为,Karpathy 的版本特别适合“启动”一个知识系统,因为它要求的最小运行组件并不多,核心是:
raw/:放原始材料;wiki/:放 LLM 维护的页面;index.md:索引页,用于导航和组织;log.md:记录更新与摄取痕迹;AGENTS.md:定义 Agent 的写作与维护规则;- ingest:把新来源读入并触发更新;
- query:基于 wiki 进行查询与回答;
- lint:检查 stale claim、孤儿页或结构问题等维护事项。
文中把这些组件总结为:raw、wiki、schema、index、log、ingest、query、lint。这就是 Karpathy 原版“用最少的东西跑起来”的方式。
按照文章给出的落地理解,最朴素的 MVP 是:保留 raw/、wiki/、index.md、log.md、AGENTS.md,每次 ingest 都让 Agent 更新相关页面,然后人工查看 Git diff。其验收标准也很具体,不是抽象地说“好用”,而是一次 source 输入后,系统能稳定更新 summary、entity、concept、index、log,而且人能看懂每个改动。
人与 LLM 的分工
Karpathy 原版还有一个文章非常喜欢的类比:Obsidian 是 IDE,LLM 是 programmer,wiki 是 codebase。
这个类比说明,原版不是把 LLM 当成一次性问答器,而是当成一个持续维护知识代码库的“程序员”。在这个框架里:
- 人负责选题和判断;
- LLM 负责整理、交叉引用、补 index、查孤儿页等维护工作。
这也解释了为什么原版强调 Schema 的作用:如果 LLM 是维护者,那么维护规则就必须像代码仓库规范一样可被显式执行。
文章对原版的评价
本文对 Karpathy 原版整体是正面评价,但这种正面评价带有明确边界。
正面之处在于,它抓住了“让知识开始复利”这个关键问题。文章认为,Karpathy 的版本非常适合启动:
- 个人研究库;
- 读书库;
- 项目知识库。
它的优点不在于功能繁多,而在于能以最小系统让知识从“文档堆积”变成“结构化累积”。对个人或小规模场景来说,先把这个循环跑起来,比一开始就设计完整生产系统更重要。
文章还指出,原版的 index.md 在中等规模下“很好用”,即使到几百页时“仍然能撑一阵”。这说明作者并不把原版看成无效雏形,而是看成在一定规模内完全成立的工作方法。
原版的边界与不足
不过,本文同样明确指出了 Karpathy 原版的边界。
原版关注的是“让知识开始复利”,但没有系统处理“复利系统变大以后别烂掉”的问题。文章认为,当 wiki 规模扩大后,原版会暴露出多个局限:
- 默认把页面视为差不多可信,缺少记忆生命周期区分;
- 主要依赖 wikilinks,缺少
uses、depends_on、contradicts、supersedes这类有明确语义的关系边; - 索引页在更大规模下会成为瓶颈;
- 自动维护更依赖人工触发,缺少事件驱动机制;
- 对多 Agent 协作、权限边界、治理和可逆操作考虑较少。
文章用一张对照表来概括这一差异:在“知识变旧、搜索扩展、结构关系、自动维护、多 Agent、治理”这些问题上,原版的处理要么更轻,要么只是略提,并没有展开成生产级方案。
因此,Karpathy 原版的边界不是“方向不对”,而是“故意只做到最小可运行、最小可复利”。
与 Rohit V2 的关系
本文对 Rohit 基于 Karparthy 的 gist 更新LLM Wiki V2 - 今日头条 摘要 的全部讨论,都是把它视为在 Karpathy 原版框架上的增强,而不是另起炉灶。
文章认为,V2 没有推翻原版,而是把原版运行一段时间后会遇到的问题显式化,包括: