W
AI-Wiki
ENTITY

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.mdAGENTS.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.mdlog.mdAGENTS.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,缺少 usesdepends_oncontradictssupersedes 这类有明确语义的关系边;
  • 索引页在更大规模下会成为瓶颈;
  • 自动维护更依赖人工触发,缺少事件驱动机制;
  • 对多 Agent 协作、权限边界、治理和可逆操作考虑较少。

文章用一张对照表来概括这一差异:在“知识变旧、搜索扩展、结构关系、自动维护、多 Agent、治理”这些问题上,原版的处理要么更轻,要么只是略提,并没有展开成生产级方案。

因此,Karpathy 原版的边界不是“方向不对”,而是“故意只做到最小可运行、最小可复利”。

与 Rohit V2 的关系

本文对 Rohit 基于 Karparthy 的 gist 更新LLM Wiki V2 - 今日头条 摘要 的全部讨论,都是把它视为在 Karpathy 原版框架上的增强,而不是另起炉灶。

文章认为,V2 没有推翻原版,而是把原版运行一段时间后会遇到的问题显式化,包括:

  • 用 working memory、episodic memory、semantic memory、procedural memory 区分记忆生命周期;
  • 引入 confidence、supersession、forgetting 等概念,但同时警惕数值 confidence 的伪权威;
  • 从普通 wikilink 升级到 类型化知识图谱
  • 用 BM25、向量搜索、图遍历加 RRF 组成 混合检索
  • 从人工触发 ingest/lint 扩展到 hooks 和事件驱动;
  • 补充 privacy filter、audit、reversible bulk ops 等治理能力。