---
url: /blog/bvoxflrg/index.md
---
# LLM 驱动的个人知识库构建方法论

> \[!quote] 核心洞察
> 使用 LLM 为研究课题建立个人知识库，将 token 吞吐量从「操作代码」转向「操作知识」。知识库不是静态仓库，而是一个**活的、LLM 自治维护、持续增长的有机系统**。

## 核心理念

传统知识管理是人工整理归档，Karpathy 提出了一种范式转换：**让 LLM 成为知识库的编写者和维护者，人类只负责投喂素材和提出问题**。

这种方法的核心优势在于：

* **增量编译**：新素材进入后，LLM 自动摘要、分类、建立关联，而非人工整理
* **持续累加**：每次查询的输出都能归档回知识库，让探索成果不流失
* **自我维护**：LLM 定期检查一致性、补缺数据、发现新关联，类似代码 lint

## 工作流架构

```mermaid
graph LR
    A[数据摄取<br/>raw/] --> B[LLM 编译 Wiki<br/>wiki/]
    B --> C[问答查询]
    C --> D[输出渲染]
    D -->|归档回 wiki| B
    B --> E[健康检查<br/>Lint]
    E -->|修复/增强| B
    C -->|触发工具开发| F[扩展工具<br/>CLI/搜索引擎]
    F -->|工具赋能| C
```

### 六个阶段

### 1. 数据摄取 (Data Ingest)

将原始素材收集到 `raw/` 目录：

* 论文、文章、代码仓库、数据集、图片
* 推荐工具：Obsidian Web Clipper + 本地图片保存热键
* 关键原则：图片下载到本地，方便 LLM 引用

> \[!tip] 图片本地化操作：Download attachments for current file
> Obsidian Web Clipper 剪藏时默认只保留外部图片链接，不会自动下载图片。需要手动触发本地化：
>
> 1. 剪藏完成后，在 Obsidian 中打开刚保存的 `.md` 文件
> 2. `Ctrl+P`（Mac: `Cmd+P`）打开命令面板
> 3. 搜索并执行 **"Download attachments for current file"**
> 4. Obsidian 会自动下载所有外部图片并替换为本地 `![[image.png]]` 链接
>
> **建议绑定快捷键**：设置 → 快捷键 → 搜索 "Download attachments"，将其绑定到一个方便的按键（如 `Ctrl+Shift+I`），实现剪藏后一键本地化。
>
> 配合 **Custom Attachment Location** 插件，可将图片自动保存到指定子目录（如 `raw/images/`），保持目录整洁。

### 2. 编译 Wiki (Compile)

LLM 将原始数据「编译」成结构化 `.md` 文件：

* 源文件摘要 → `wiki/summaries/`
* 概念条目 → `wiki/concepts/`
* 专题文章 → `wiki/articles/`
* 总索引 → `wiki/index.md`
* 反向链接自动维护

> \[!important] 人类几乎不手动编辑 wiki，这是 LLM 的领地

### 3. 问答查询 (Q\&A)

Wiki 足够大后（~100 篇 / ~40 万字），直接对知识库提问：

* LLM 自行维护索引和摘要，无需复杂 RAG
* 在小规模下，LLM 能轻松读取所有相关数据

### 4. 输出渲染 (Output)

答案不只是文本，而是可消费的格式：

* Markdown 文件
* 幻灯片（Marp 格式）
* 数据可视化（matplotlib 图像）
* 其他格式取决于查询需求

### 5. 健康检查 (Linting)

定期让 LLM 审查知识库质量：

* 发现不一致或矛盾的数据
* 补充缺失信息（配合网络搜索）
* 发现有趣的关联，生成新文章候选
* LLM 还能建议「下一步该研究什么」

### 6. 扩展工具 (Extra Tools)

随需求增长开发辅助工具：

* 简易搜索引擎（Web UI + CLI）
* CLI 工具交给 LLM 调用，增强查询能力

## 技术栈

| 组件     | 推荐工具               | 用途                |
| ------ | ------------------ | ----------------- |
| IDE 前端 | Obsidian           | 查看 raw、wiki、可视化输出 |
| 知识格式   | Markdown           | 结构化、可链接、LLM 友好    |
| 图片保存   | Web Clipper + 热键   | 本地化，LLM 可引用       |
| 幻灯片    | Marp (Obsidian 插件) | 从 wiki 生成演示文稿     |
| 图表     | matplotlib         | 数据可视化             |

## 实践路径

### 阶段一：基础设施（1-2 天）

1. 安装 Obsidian + Web Clipper 插件
2. 建立目录结构：
   ```
   KnowledgeBase/
   ├── raw/           # 原始素材
   ├── wiki/          # LLM 编译的 wiki
   │   ├── index.md
   │   ├── concepts/
   │   ├── articles/
   │   └── summaries/
   └── output/        # 查询输出
   ```
3. 选择一个正在深入研究的主题作为试点

### 阶段二：摄取 + 编译循环（持续）

4. 建立摄取习惯：有价值的资料 → Clipper 保存到 `raw/` → 本地保存图片
5. 每次摄取后让 LLM 执行编译：
   * 读取 `raw/` 新文件
   * 生成摘要、提取概念、更新索引、添加反向链接
6. 形成闭环：**摄取 → 编译 → 浏览 → 提出新问题**

### 阶段三：知识驱动查询（Wiki ≥ 30 篇）

7. 从 wiki 内提问，而非从零开始
8. **查询结果归档回 wiki** — 这是增长飞轮的关键
9. 尝试多种输出格式

### 阶段四：维护与增强（Wiki ≥ 60 篇）

10. 定期运行健康检查
11. 让 LLM 建议下一步研究方向
12. 按需开发小工具

### 阶段五：进阶（可选）

13. 合成数据生成 — 从 wiki 提取 QA 对
14. 微调小模型 — 让模型在权重层面内化知识库
15. 全自动化 pipeline

## 关键原则

> \[!tip] 一句话总结
> 你是知识库的**消费者和决策者**，LLM 是**编写者和维护者**。

* **累加原则**：每次查询的输出都归档回去，探索成果永不流失
* **自治原则**：Wiki 由 LLM 编写和维护，人类不直接编辑
* **渐进原则**：从单个主题开始，小规模下不需要复杂 RAG
* **工具化原则**：随着知识库增长，开发工具让 LLM 能力扩展

## 未来方向

随着知识库规模增长，自然会走向：

* **合成数据 + 微调**：让 LLM 在权重层面「记住」知识，而不仅是上下文窗口
* **产品化**：Karpathy 认为这里有空间打造一个令人印象深刻的新产品，替代 hacky 的脚本集合
