Compiled Context Brain · 卡帕西的知识库构想 — AI 研究工具门户
IDEA · COMPILED CONTEXT BRAIN · 2025

Stop coding.
Start compiling your knowledge.

Andrej Karpathy 在 LLM Wiki Gist 中提出一个反直觉的命题:与其让大模型为你 写代码,不如让它为你 编译知识——把零散的信息流,编译成一座属于你自己的、带 schema 的、可复利的 个人知识库

"
Stop using LLMs just to write code. Use them to build and maintain a personal knowledge base instead — a knowledge base of concepts, decisions, pitfalls and people, indexed by you, compiled by the model.
Andrej Karpathy Tesla AI · OpenAI
Stanford CS231n
— LLM Wiki Gist, 2025
Personal Knowledge Base Second Brain LLM as Editor Compiled Context Schema-Driven Anti-RAG
I.

四根支柱,撑起一个反直觉的命题

代码会过期,但 schema 会复利。这一节回答四个问题——为什么是知识库、为什么是现在、为什么是由 LLM 编译,以及为什么这是一场新型护城河之争。

01 / 04

// Compounding · 复利效应

知识 O(N²)、代码 O(N)

每写一行代码,你只是多了一行。每记一个概念,它会与既有节点形成 N×(N-1)/2 条潜在关联——只要 schema 一致,时间越久回报越大。这是 Karpathy 论点的定量内核

02 / 04

// Portability · 迁移性

模型会换代,schema 不换

GPT-3 → 4 → 5、Claude 1 → 4,模型每年迭代两次。但你为「论文」「项目」「踩过的坑」定义的字段——一次写好,跨模型零迁移成本

03 / 04

// Moat · 数据护城河

schema = 个人护城河

你分享的不是源代码、也不是 Wiki 内容——你分享的是这套 schema。它编码了你的提问方式、决策框架、踩坑模板。复制内容容易,复制思考结构难。

04 / 04

// Anti-RAG · 反向量召回

编译式,而非检索式

朴素 RAG 给 LLM 的是切碎的文本片段,模型只能拼凑回答。Karpathy 主张反过来:让 LLM 充当编辑器,把信息编译为节点 + 关系,下次直接读结构、不读切片。

II.

RAG vs 编译式知识库 — 一句话讲清楚

同样是「把资料丢给 AI」,两边在做的事完全不一样。一种是把文件剁成几百块小碎片,问的时候靠相似度抓 5–20 段塞回模型——这就是大家常说的 RAG;另一种是让 AI 读完整篇之后顺手把它整理进你的知识库,下次直接查结构、不再翻原文。前 3 个月你看不出区别,半年后两边的效率会差出一个量级——这一节就把两条路讲清楚。

/// SAME INPUT A · NAÏVE RAG 检索式 — 切片 · 召回 · 拼贴 paper.pdf split() chunk_001 chunk_002 chunk_003 chunk_004 … × N embed() Vector DB cosine sim top-k LLM SEES "…attention is all…" [chunk #042 · 0.83] "…O(n²) scaling…" [chunk #018 · 0.79] "…softmax(QKᵀ)…" [chunk #007 · 0.74] "…residual connect…" [chunk #099 · 0.71] "…layer norm before…" [chunk #061 · 0.69] ⚠ 5 段碎片 · 无结构 · 无关系 · 无去重 B · COMPILED CONTEXT 编译式 — 节点 · 关系 · 复用 paper.pdf edit() LLM as editor read · diff link · merge paper #new Concept Person Project Pitfall your knowledge base LLM SEES ▸ Attention Is All You Need type:paper authors:Vaswani et al. claim:self-attn ≫ RNN cost:O(n²) memory links:[[transformer]] opens:flash-attn, MoE… added:2026-04-22 DIFF · KB + 1 node + 4 edges + 2 schema fields linked to: [[transformer]] [[Vaswani 2017]] ✓ 1 个结构化节点 + 4 条新边
FIG. 01 同一份 PDF,两种用法。 左边(A)把整篇文章切成几百小块塞进向量库,问的时候靠相似度抓 5 段回来给模型——每次都是临时拼贴。 右边(B)让 AI 读完之后当场写一张「读书笔记节点」连进你的知识库,把作者、主张、成本和关联记好——下次再问相关问题,模型直接读这张结构化笔记,不用回原文。 // concept: Karpathy 2025
// design: portal

A · RAG 这条路 的 3 个痛点

「找到」≠ 「想清楚」

  • 信息很吵:一次往模型嘴里塞 5–20 段碎片,思考预算全被它们占掉。
  • 同一句话重复 N 次:同一观点被切到好几个 chunk 里,模型容易自打嘴巴(self-conflict)。
  • 啥关系都没有:相邻 chunk 之间互不知情,模型没法跨段推理
vs

B · 编译这条路 的 3 个收益

「整理过」 ≠ 「检索回来」

  • 干净:每个观点在知识库里只出现一次、用一致字段描述,重复和噪音消失。
  • 有关系:节点之间的引用 [[link]] 让模型能跨页面推理。
  • 越用越值:今天定的字段半年后还在帮你省时间——这是你的护城河
III.

IDE Trinity — 三位一体的工程类比

如果说软件工程的核心三件套是 编辑器程序员代码库——那么知识工作里完全对得上号的三件套,就是 笔记编辑器LLM知识库。Karpathy 的工程类比不是修辞,而是同构——同一套协议,换了一套对象。

≅ ISOMORPHIC TO Software Engineering type Knowledge = Codebase<Concept, Edge> // THE EDITOR 笔记编辑器 role = "the editor" 你看见的界面 · 写入与编辑 // THE PROGRAMMER LLM async fn(ctx) LLM role = "the programmer" 理解 · 编译 · 重构 // THE CODEBASE 知识库 role = "the codebase" 概念节点 · 关系边 · 长期沉淀 ① 你提问 ② AI 编译 ③ 知识呈现 $ editor.open(kb) $ llm.compile(input) → kb.commit() $ kb.query("what did I learn from X?")
FIG. 02 三位一体——同一套协议,换了一套对象。 软件工程里:你在 IDE 里写代码,程序员(也就是你)改代码,代码库存着所有改动;知识工作里:你在笔记编辑器里看笔记,LLM 改笔记,知识库存着所有节点和关系。三者之间的回路一致——提问 → 编译 → 呈现 // concept: Karpathy
// design: portal
笔记编辑器
role = "the editor" · 你看见的界面
本地 Markdown · 双链 · 插件生态——你和 AI 共同的视图层,不是数据本体。换编辑器,不换知识库。
LLM
role = "the programmer" · 改写者
模型不再是终端用户,而是合作开发者——它读知识库、写知识库、refactor 知识库,按你的 schema 提交 PR。
知识库
role = "the codebase" · 真正的资产
节点 + 边 + 元数据是真正的知识资产——可以 git 追踪、可以分叉、可以跨工具迁移。
IV.

复利曲线 — 为什么临界点在 3–6 个月

代码线性增长,知识平方增长。前 60–120 天看不出区别,过了临界点之后差距以指数方式拉开——这就是 Karpathy 主张越早开始越好的数学理由。

RETURN ON EFFORT → TIME → (MONTHS OF CONSISTENT USE) 0 M1 M3 M6 M9 M12 M18 TIPPING POINT ~ Month 4 d/dt knowledge ≫ d/dt code knowledge · O(N²) value ≈ k · N² code · O(N) value ≈ c · N // 前 3 个月 —— 两条曲线纠缠, 大多数人在这里放弃。
FIG. 03 O(N) vs O(N²)。 橙线 = 「让 LLM 写代码」每写一函数 = +1;青线 = 「让 LLM 编译知识」每加一节点能与既有 N 个节点形成新关联,总价值 ≈ k·N²。约 4 个月达到临界点。 // model: simple compounding
// design: portal
// CODE PATH
线性 · O(N)
每行代码独立交付,时间一过价值衰减。
// KNOWLEDGE
平方 · O(N²)
每个新节点 × N 既有节点 = 新关联池。
// TIPPING POINT
~ 4 mo
k·N² > c·N 临界点,撑过去就赢了。
V.

二脑光谱 — 从 MemexCompiled Context

「让外部系统帮你思考」从来不是新点子。Karpathy 是把它放在 LLM 时代再讲一次——但工具、媒介、协议都已经换过两代。

1945 — 2010s · Era I

Memex / Zettelkasten

Vannevar Bush · Niklas Luhmann · 个人卡片盒

"As We May Think"(1945)描绘了一台带索引的桌面机械——Memex。Luhmann 把同样的思路落到 9 万张卡片盒,靠纯人工编织出一个可互联的知识结构。

核心洞察:知识的价值在边、不在节点。但媒介是人手 + 卡片,扩展性受限于体力。

analogmanualcards
2017 — 2024 · Era II

PARA / Building a Second Brain

Tiago Forte · Notion · Obsidian · Roam

Tiago Forte 把 Zettelkasten 思路标准化为 PARA(Projects / Areas / Resources / Archives)+ CODE(Capture / Organize / Distill / Express)。Notion、Obsidian、Roam 让数字双链落地。

核心进展:结构标准化 + 双链可视化。但 capture / organize / distill 仍由人手完成;LLM 只是被动搜索引擎。

digitalPARAbacklinks
2025 — present · Era III

Compiled Context Brain

Andrej Karpathy · LLM as editor

2025 年 Karpathy 在 LLM Wiki Gist 中提出反转:不是你录入、模型搜索,而是模型 capture / distill、你审稿合并。LLM 从「搜索引擎」变成「合作编辑」。

核心进展:从静态知识库 → 编译式认知系统。Schema 是合作协议,知识库是 commit 历史,IDE 是会话界面。

llm-nativeschema-drivencompiled
VI.

idea动手

读到这里,下一步只剩一个:选一个能跑的载体把这套思路落地。我们在门户里准备了 Karpathy 这一脉最直接对应的开源工具——Open Notebook

// next · open the notebook

Open Notebook —— 你本地的编译式知识库工作台

开源、隐私优先、Docker Compose 一键起。支持 18+ 模型 Provider(含通义 DashScope),多模态 Source 收纳,节点式 Notebook 结构,原生支持「让模型把 source 编译成 note」——和 Karpathy 思路最近的可部署项目。

Deploy Now

References & Further Reading

  1. Andrej Karpathy. "LLM Wiki" Gist · 关于个人知识库与 LLM 编辑器化的核心立论。gist.github.com/karpathy · 2025
  2. Vannevar Bush. "As We May Think" · Memex 原始设想,二脑思想的祖先。The Atlantic · July 1945
  3. Niklas Luhmann. Zettelkasten Method · 9 万张卡片盒构成的非正式百科全书。Universität Bielefeld archive
  4. Tiago Forte. Building a Second Brain · PARA + CODE 知识管理框架。Atria Books · 2022
  5. Maggie Appleton. "The Expanding Dark Forest and Generative AI" · 关于 LLM 时代知识工作伦理。maggieappleton.com · 2023
  6. lfnovo et al. Open Notebook · 与上述思路最贴近的开源实现,门户工具页见 open-notebookgithub.com/lfnovo/open-notebook · MIT