源 — Karpathy: LLM Wiki

原始源:raw/articles/2026-04-04_karpathy-llm-wiki.md(不可變)
原發布:2026-04-04,作者 Andrej Karpathy。這是一份「想法文件 (idea file)」,設計來複製貼上給你自己的 LLM Agent,傳達高層概念,具體實作由 Agent 與你合作建立。

一句話摘要

用 LLM 增量建立並維護一個持久化、互鏈的個人知識庫 wiki,介於你與原始源之間——而非每次查詢都重新做 RAG。

核心論點

  • RAG 的問題:查詢時才從 raw 抓片段,每次從頭重新發現知識,沒有累積;問一個需要綜合五份文件的好問題,LLM 每次都得重新找、重新拼。
  • wiki 的替代方案:LLM 持續編譯並保持 wiki 最新。交叉引用已經在、矛盾已經標出、綜合已反映一切已讀內容。這是 compounding artifact(會複利的產物)
  • 人機分工:你幾乎不自己寫 wiki——你負責找源、探究、問對問題;LLM 做所有苦工(摘要、交叉引用、歸檔、記帳)。實踐上:LLM Agent 開一邊、Obsidian 開另一邊,即時瀏覽結果。Obsidian 是 IDE、LLM 是程式設計師、wiki 是 codebase。

適用場景(舉例)

  • 個人:目標、健康、心理、自我改進;歸檔日記、文章、podcast 筆記。
  • 研究:數週到數月深攻一個主題,增量建立帶演化論點的綜合 wiki。
  • 讀書:逐章歸檔,建角色/主題/情節線頁,像 Tolkien Gateway 那類 fan wiki。
  • 商務/團隊:Slack 討論、會議逐字稿、專案文件、客戶通話餵出的內部 wiki。
  • 競品分析、盡職調查、行程規劃、課堂筆記、嗜好深究——任何長期累積知識並想組織而非散落之處。

三層架構(見 three-layer-architecture

  1. Raw sources — 不可變源文件,定論來源。
  2. The wiki — LLM 生成的 markdown 目錄,LLM 全權擁有。
  3. The schema — 告訴 LLM 結構/慣例/流程的契約檔(本 wiki 的 AGENTS)。

三個操作(見 three-operations

  • ingest — 丟源進 raw,LLM 讀、討論重點、寫摘要頁、更新 index、更新相關頁、append log。建議一次一個源、保持參與;也可批次少監督。
  • query — 對 wiki 發問,LLM 搜相關頁、讀、綜合回答附引用(markdown 頁/比較表/Marp 投影片/matplotlib 圖/canvas)。好答案可存回 wiki 成新頁,讓探究複利。
  • lint — 定期健康檢查:矛盾、過時主張、孤兒頁、缺頁概念、缺失交叉引用、可 web 補的缺口。

索引與日誌(見 index-and-log

  • index.md — 內容導向目錄,每頁一鏈、一行摘要、可選 metadata;LLM 每次 ingest 更新,回答前先讀它定位。中等規模(~100 源、數百頁)效果很好,免 embedding RAG。
  • log.md — 時序、append-only,記 ingest/query/lint。建議條目用一致前綴(如 ## [2026-04-02] ingest | Article Title)以便 grep "^## \[" log.md | tail -5 解析。

選配 CLI 工具

  • qmd — 本地 markdown 搜尋引擎,混合 BM25/向量 + LLM re-ranking,全 on-device;有 CLI 與 MCP server。小規模用 index 就夠,長大後需要。

Tips & tricks

  • Obsidian Web Clipper — 瀏覽器擴充,把網頁文章轉 markdown,快速進 raw。
  • 圖片下載到本地 — Obsidian 設 Attachment folder path(如 raw/assets/),綁「Download attachments」熱鍵;LLM 讀文字後可再單獨看圖。
  • graph view — 看 wiki 形狀(誰連誰、誰是 hub、誰是 orphan)最佳方式。
  • Marp — markdown 投影片格式,Obsidian 有插件。
  • Dataview — 對 page frontmatter 跑查詢,動態表格/清單。
  • wiki 就是 git repo — 版本歷史、分支、協作免費得。

為什麼有效(見 knowledge-compounding

維護知識庫最煩的是記帳不是讀或想;人因維護負擔超越價值而放棄。LLM 不膩、不忘更新交叉引用、一輪動 15 檔。維護成本近零,wiki 才留得住。

備註

文件刻意抽象,只傳達 pattern,不給具體實作;目錄結構、schema 慣例、頁面格式、工具都依領域/偏好/LLM 而定,全部可選可模組化。正確用法是把它交給你的 LLM Agent,合作實例化出適合你的版本。

延伸討論(取自 gist 評論,非原始文件正文)

  • schema 即契約 (schema-as-contract):有評論指出 CLAUDE.md 是散文=指令,Agent 未必遵守、違反也無人抓。應把 schema 層做成 typed + validated(如 SIGN spec 的 @doc/@vocab/@def),而非敘事。見 schema-as-contract
  • lint 的盲點:筆記描述會自行變動的系統時,lint 只對筆記查筆記不夠;關於程式碼的 claim 應帶檔案與行號,程式碼變動時標記失效。