---
type: concept
title: 知识编译
created: 2026-04-26
updated: 2026-04-26
tags: [llm, knowledge-management, compilation, ai-workflow, metaphor]
---

## 定义

**知识编译（Knowledge Compilation）**是 [[wiki/entities/andrej-karpathy|Andrej Karpathy]] 在 [[wiki/concepts/llm-wiki|LLM Wiki]] 模式中提出的核心类比与操作哲学。它将 LLM 处理原始资料的过程类比为软件工程中的**编译**：

> 就像编译器将人类可读的源代码一次性转换为高效可执行的二进制文件，LLM 将人类投入的原始资料（文章、论文、笔记）一次性"编译"为结构化的、可检索的知识页面。

编译完成后，查询时不再重新读取原始资料，而是直接使用"已编译的知识制品（compiled artifact）"——这使得每次查询都比重新推导更快、更准确、更具综合能力。

## 核心要点

### 编译 vs. 实时推导

| 维度 | 实时推导（RAG 范式） | 知识编译（LLM Wiki 范式） |
|------|---------------------|--------------------------|
| 知识生成时机 | 查询时，按需召回并生成 | 摄入时，一次性编译并持久化 |
| 计算成本分布 | 每次查询都耗费大量计算 | 编译时一次性付出，查询时极低 |
| 跨资料综合 | 受制于召回质量，综合能力弱 | 编译时已完成综合，天然支持 |
| 知识积累效应 | 无，每次从零开始 | 强，随来源增加线性复利 |
| 一致性 | 同一问题不同查询可能产生不同答案 | 知识页是稳定的真值来源 |

### 编译的四个阶段

1. **读取（Read）**：LLM 读取原始资料（sources/）
2. **理解（Understand）**：提取实体、概念、关系、矛盾
3. **综合（Synthesize）**：将新内容与已有 wiki 知识融合
4. **写入（Write）**：更新 library/、entities/、concepts/、synthesis/

### 增量编译

LLM Wiki 支持增量编译：每次新资料进入 sources/，只需重新编译受影响的页面，而不是重新处理整个知识库。这类似于现代编译器的增量编译（incremental compilation），大幅降低每次 ingest 的成本。

### 编译的产物分层

- **library/** = 源文件的直接映射（类比：.o 对象文件）
- **entities/ + concepts/** = 提取出的模块化知识单元（类比：符号表 / 类库）
- **synthesis/** = 跨资料融合的深度报告（类比：最终可执行文件 / 优化产物）

### 为什么"编译"优于"检索"

知识编译的本质优势在于**计算的时间迁移**：将高成本的知识综合工作从"查询时"前移到"摄入时"。对于需要反复查询同一知识域的场景（如个人研究、团队知识管理），这种时间迁移会随查询次数增加而产生指数级的效率收益——这正是 Karpathy 所说的"知识复利"。

## 不同来源的说法

| 来源 | 观点 |
|------|------|
| [[wiki/library/llm-wiki|Karpathy Gist]] | 编译类比是核心哲学：原始资料不直接执行，而是被编译成知识制品后再使用；编译一次，无限次复用 |
| 社区分析（VentureBeat 等） | 该思路被解读为"绕过 RAG"——不是改进检索，而是根本性地将知识生产前移 |

## 相关实体

- [[wiki/entities/andrej-karpathy|Andrej Karpathy]]

## 相关概念

- [[wiki/concepts/llm-wiki|LLM Wiki]]
- [[wiki/concepts/rag|RAG（检索增强生成）]]

## 参考来源

- [[wiki/library/llm-wiki|llm-wiki（Karpathy Gist）]]
