cover

Karpathy LLM Wiki:用 AI 建一个会自动生长的第二大脑

你问 AI 一百个问题,知识归零一百次。Karpathy 说:换个玩法——让 AI 替你持续编译一本百科全书,问得越多,它越聪明,知识永远不归零。

这不是又一个「Obsidian 搭建教程」

先说清楚:这篇文章不是教你怎么用 Obsidian 做笔记、怎么整理 PARA、怎么挑插件。那些话题网上已经写得够多了。

我要讲的是一种完全不同的知识生产方式——

让 LLM 当「编译器」,把你的原始资料增量编译成一本结构化、互相链接的 Markdown 百科全书。

这个想法来自 Andrej Karpathy。2025 年 4 月,他在 GitHub Gist 上发了一篇不到 500 字的短文,标题叫 LLM Wiki。没有代码,没有工具推荐,只是一个思路:

与其每次提问都让 AI 从原始文档里重新检索、重新拼答案(RAG 的老路子),不如让 AI 把知识预先编译成一本 wiki。交叉引用已经建好,矛盾已经标注,综合结论已经反映了所有已读过的资料。

这条 gist 拿到了 55K 点赞,30 多个开源实现紧随其后。

为什么一个「让 AI 写 wiki」的想法能引爆全网?因为它戳中了一个每个人都在忍受的痛点——

你剪藏了 500 篇文章,一篇也没看过。你问 AI 同一个问题,它每次给你不同答案。你的知识从来没有在「积累」,只是在「循环」。

LLM Wiki 要解决的就是这件事。


一、为什么不是 RAG?——「增量编译」vs「每次重做」

RAG 的问题

大多数人用 AI 处理知识的方式,本质上都是 RAG(Retrieval-Augmented Generation,检索增强生成):

  1. 上传文件 / 丢链接
  2. AI 把文档切成碎片(chunks)
  3. 你提问时,AI 从碎片里检索出相关的几段
  4. 拼成一个答案给你
  5. 结束。下次再问,从头来。

NotebookLM 是这样,ChatGPT 的文件上传是这样,绝大多数「AI 知识库」产品都是这样。

问题在哪?没有积累。

你问了一个好问题,AI 花了一堆 token 检索、推理、综合,给出了一个精彩的回答——然后这个回答就消失了。下次你或者别人问类似的问题,同样的检索、同样的推理、同样的 token 消耗,一切从零开始。

这就像每次做菜都从买菜开始。

LLM Wiki 的核心差异

Karpathy 的方案完全不同:

知识被编译一次,然后持续维护,不是每次查询重新推导。

打个比方:你有一个助手,不只是帮你做菜——他会帮你备菜、切好、分装、贴标签。下次做菜的时候,直接打开冰箱拿就行。如果来了新食材,他会更新冰箱里的分类,而不是把所有菜都倒掉重来。

这就是「增量编译」:

  • 新资料进来 → LLM 读取
  • LLM 对比已有的 wiki 页面
  • 更新已有页面(加入新信息、补充细节)
  • 创建新页面(如果有全新概念)
  • 建立交叉引用(双向链接)
  • 标注矛盾(A 页面说 X,B 页面说 Y,但两者冲突)
  • 更新索引和日志

知识是编译进去的,不是检索出来的。

这两者的区别,用一个表格说清楚:

维度RAG(每次重做)LLM Wiki(增量编译)
知识处理时机查询时实时检索摄入时预先编译
知识形态原始文档碎片结构化 wiki 页面
交叉引用每次查询重新发现已预先建立
矛盾处理可能返回冲突信息已标注并待审核
更新方式追加文档到向量库增量更新已有页面
人工介入较少(自动索引)较多(审核编译结果)
知识积累无(每次从零开始)有(雪球越滚越大)

一句话总结:RAG 是「每次现查现答」,LLM Wiki 是「持续编译、越用越厚」。


二、Karpathy 的三层架构

Karpathy 在 gist 里描述了一个简洁的三层结构。理解这三层,就理解了 LLM Wiki 的全部骨架:

┌─────────────────────────────────┐
│  Schema 层(规则)               │  ← CLAUDE.md / SYSTEM.md
│  告诉 LLM 怎么组织 wiki          │
├─────────────────────────────────┤
│  Wiki 层(编译产物)              │  ← 你的「第二大脑」
│  概念文章、实体页面、索引、链接    │
├─────────────────────────────────┤
│  Raw 层(原始资料)               │  ← 等待编译的原料
│  文章、论文、播客笔记、网页剪藏    │
└─────────────────────────────────┘

Schema 层:规则书

一个 Markdown 文件(通常叫 CLAUDE.mdSCHEMA.md),告诉 LLM:

  • 目录结构怎么组织
  • 文件怎么命名
  • 链接格式是什么
  • 什么时候创建新页面、什么时候更新已有页面
  • 遇到矛盾信息怎么处理

这是整个系统的「宪法」。 LLM 每次操作前都会读它,确保编译出来的一致性。

Wiki 层:你的百科全书

这是 LLM 编译出来的产物——一堆结构化的 Markdown 文件:

  • concepts/ — 概念页面(如「AI Agent」「个人知识管理」)
  • entities/ — 实体页面(如「Obsidian」「Claude Code」)
  • comparisons/ — 对比页面(如「RAG vs LLM Wiki」)
  • index.md — 目录索引
  • log.md — 操作日志

每个页面都有 YAML frontmatter(标题、创建日期、更新日期、来源、置信度等),页面之间用 [[wikilinks]] 互相链接。

Raw 层:等待编译的原料

你收集的所有原始资料放在这里:

  • raw/articles/ — 文章、博客
  • raw/papers/ — 论文 PDF
  • raw/notes/ — 播客笔记、会议记录
  • raw/bookmarks/ — 网页剪藏

Raw 层的东西不是知识,是知识的原料。 只有经过 LLM 编译进入 Wiki 层,才算真正变成了你的知识资产。

Karpathy 自己说:「Obsidian 是 IDE;LLM 是程序员;Wiki 是代码库。」


三、30 分钟搭起来:环境准备与最小复刻

你需要什么

  • Obsidian(任意版本,免费)—— 用来浏览和可视化 wiki
  • Claude Code CLI(或其他能操作本地文件的 LLM agent)—— 用来编译知识
  • 终端(macOS Terminal / iTerm / Windows Terminal)
⚠️ 重要区分: 这里用 Obsidian 不是因为它有什么「AI 功能」,而是因为它是一个纯粹的 Markdown 文件浏览器。LLM 写入文件,Obsidian 实时显示。不需要插件,不需要配置,不需要向量数据库。这和普通 Obsidian 知识库搭建完全不同——那篇文章讲的是「人怎么整理笔记」,这篇讲的是「AI 怎么编译知识」。

步骤 1:创建 Vault 目录

mkdir -p ~/llm-wiki
cd ~/llm-wiki

# 创建三层结构
mkdir -p raw/articles raw/papers raw/notes
mkdir -p wiki/concepts wiki/entities wiki/comparisons wiki/queries

步骤 2:写 Schema 文件

在 vault 根目录创建 SCHEMA.md

# Wiki Schema

## Domain
[你的知识库主题,比如:AI 技术与个人知识管理]

## Conventions
- 文件名:小写、连字符、无空格(如 ai-agent.md)
- 每个 wiki 页面以 YAML frontmatter 开头
- 使用 [[wikilinks]] 链接页面(每页至少 2 个外链)
- 更新页面时,必须更新 frontmatter 中的 updated 日期
- 新页面必须加入 index.md
- 每次操作必须追加到 log.md
- 来源标注:在段落末尾添加 ^[raw/articles/文件名.md]

## Frontmatter 模板
---
title: 页面标题
created: YYYY-MM-DD
updated: YYYY-MM-DD
type: entity | concept | comparison | query
tags: [标签1, 标签2]
sources: [raw/articles/来源文件.md]
confidence: high | medium | low
---

## 页面规则
- 一个概念在 2+ 来源中出现 → 创建独立页面
- 一个来源提到了已有概念 → 更新已有页面
- 只是顺带提到 → 不创建页面
- 页面超过 200 行 → 考虑拆分

## 矛盾处理
当新信息与已有内容冲突时:
1. 检查日期——新来源通常优先
2. 如果确实矛盾,在两个页面都标注两种观点
3. 在 frontmatter 中标记:contradictions: [页面名]
4. 在日志中标注待审核

步骤 3:初始化索引和日志

创建 index.md

# Wiki Index

> Last updated: [今天日期] | Total pages: 0

## Entities
(暂无)

## Concepts
(暂无)

## Comparisons
(暂无)

## Queries
(暂无)

创建 log.md

# Wiki Log

> 所有操作的 chronological 记录。仅追加。

## [今天日期] create | Wiki initialized
- Structure created with SCHEMA.md, index.md, log.md
- Ready for first ingestion

步骤 4:在 Obsidian 中打开

  1. 打开 Obsidian
  2. 选择「Open folder as vault」
  3. 选择 ~/llm-wiki 目录
  4. 你会看到左侧文件树
**
Last modification:June 30, 2026
如果觉得我的文章对你有用,请随意赞赏