LLM Wiki
LLM Wiki는 대형 언어 모델(LLM) 에이전트가 사람 대신 지식을 작성하고 유지 관리하는 지식 베이스 패턴이다. 파일을 폴더에 쌓아두고 질문이 들어올 때마다 검색하는 기존 방식과 달리, LLM 에이전트가 소스를 읽는 즉시 핵심 내용을 추출하고 상호 연결된 Markdown 페이지 모음을 점진적으로 구축·유지한다. 2026년 Andrej Karpathy가 GitHub gist(llm-wiki.md)로 공개하며 대중화한 이 패턴은, 1945년 Vannevar Bush의 Memex에서 영감을 받아 그 비전을 현실로 구현한 것으로 평가받는다. llm-wiki.en.md
핵심 아이디어: 작업 시점의 전환
LLM Wiki의 가장 근본적인 혁신은 언제 작업이 일어나는가에 대한 전환이다. 대부분의 LLM-over-documents 방식, 특히 RAG(Retrieval-Augmented Generation)는 *쿼리 시점*에 작업한다. 사용자가 질문하면 그때서야 벡터 데이터베이스에서 관련 청크를 검색하고, 모델이 매번 처음부터 답변을 재구성한다. 지식은 축적되지 않고, 매 질의마다 원본 문서로부터 새로 재도출된다.
LLM Wiki는 반대로 *수집 시점(ingest time)*에 작업한다. 새로운 소스가 도착하는 즉시 에이전트가 위키를 업데이트하고, 관련 엔티티·개념 페이지를 갱신하며, 모순을 표면화하고, 교차 참조를 강화한다. 그 결과 지식 누적(Knowledge Compounding)이 일어난다. 교차 참조는 이미 만들어져 있고, 모순은 이미 발견되어 있으며, 새로운 소스와 좋은 질문이 쌓일수록 위키는 점점 더 풍부하고 깊어진다. 이것이 단순한 메모 더미와 살아 있는 백과사전의 차이다. llm-wiki.en.md
기원: Karpathy와 Memex
Andrej Karpathy는 OpenAI의 공동 창립자이자 Tesla 전 AI 디렉터로, llm-wiki.md라는 GitHub gist를 공개해 이 패턴을 세상에 알렸다. 이 gist는 특정 구현체를 제시하기보다 *아이디어 자체*를 기술하며, Claude Code 같은 LLM 에이전트에 복사·붙여넣기하여 각자가 자신만의 버전을 만들도록 권장한다.
Karpathy는 이 패턴의 정신적 선조로 Vannevar Bush의 Memex(1945)를 꼽는다. Memex는 문서 간 연상적 경로(associative trails)를 가진 개인 맞춤형 지식 저장소로, 링크 자체가 문서만큼 가치 있다는 비전을 담고 있었다. 그러나 Bush의 Memex에는 미해결 과제가 있었다. *유지 관리를 누가 하는가*라는 문제였다. 연결을 만들고 최신 상태를 유지하는 일은 결국 사람의 몫이었다. LLM이 바로 이 문제를 해결한다. LLM은 지루함을 느끼지 않고, 교차 참조 업데이트를 잊지 않으며, 단일 패스에서 수십 개의 페이지를 동시에 처리할 수 있다. llm-wiki.en.md
Karpathy의 핵심 비유는 이렇다: "Obsidian이 IDE라면, LLM은 프로그래머이고, 위키는 코드베이스다." 사용자는 소스를 큐레이션하고 질문을 던지는 역할에 집중하고, 요약·상호 참조·정리·유지보수는 LLM 에이전트가 전담한다.
구조: 세 가지 레이어
LLM Wiki 세 가지 레이어: Raw Sources · Wiki · Schema는 이 패턴의 구조적 토대를 이룬다.
| 레이어 | 소유자 | 역할 |
|---|---|---|
| Raw Sources | 사람(큐레이터) | 논문, 기사, PDF, 이미지, 트랜스크립트 등 불변(immutable) 원본 자료. LLM은 읽기만 하고 수정하지 않는다. 위키 전체의 진실의 원천. |
| Wiki | LLM | LLM이 생성·유지하는 Markdown 페이지 디렉터리. 요약, 엔티티 페이지, 개념 페이지, 비교, 개요, 인덱스 등. wikilinks로 페이지 간 상호 참조를 유지. |
| Schema | 사람(설계자) | LLM에게 위키 구조와 워크플로를 알려주는 설정 문서(CLAUDE.md, AGENTS.md 등). 스키마가 있어야 범용 챗봇이 *규율 있는 위키 관리자*로 변환된다. |
위키 레이어의 두 핵심 파일은 index.md와 log.md다. index.md는 모든 페이지를 카테고리별로 한 줄 요약과 함께 정리한 콘텐츠 카탈로그로, 에이전트가 쿼리를 라우팅할 때 가장 먼저 읽는다. 수백 페이지 규모에서는 임베딩이나 벡터 데이터베이스 없이도 효과적으로 작동한다. log.md는 수집·질의·점검 패스를 시간 순서로 기록하는 추가 전용 로그로, 위키가 어떻게 진화해왔는지 타임라인을 제공한다. llm-wiki.en.md
세 가지 운영 작업: Ingest · Query · Lint
LLM Wiki 세 가지 운영 작업: Ingest · Query · Lint가 위키를 살아 있게 만드는 엔진이다.
Ingest(수집)는 새 소스를 위키에 통합하는 작업이다. 사용자가 Raw Sources 폴더에 소스를 추가하면, 에이전트가 소스를 읽고 요약 페이지를 작성하며 위키 전반의 관련 엔티티·개념 페이지를 업데이트하고 index.md와 log.md를 갱신한다. 소스 하나가 10~15개 페이지에 동시에 영향을 줄 수 있다는 점이 이 작업의 파급력을 보여준다.
Query(질의)는 위키에 질문을 던지고 답을 얻는 작업이다. 에이전트는 index.md를 먼저 읽어 쿼리를 라우팅한 뒤 관련 페이지를 상세히 읽고, 인용 출처와 함께 답변을 합성한다. 특히 중요한 점은 좋은 답변이 새로운 페이지로 위키에 다시 저장될 수 있다는 것이다. 탐색 행위 자체가 지식 누적(Knowledge Compounding)으로 이어지는 구조다.
Lint(점검)는 주기적으로 위키의 품질과 일관성을 점검하는 작업이다. 에이전트는 페이지 간 모순, 새로운 소스가 이미 대체한 오래된 주장, 인바운드 링크가 없는 고아 페이지, 연결되어야 하나 연결되지 않은 페이지 관계, 그리고 아직 다루어지지 않은 주제의 공백을 탐지한다. 이 세 작업이 반복될수록 지식 누적(Knowledge Compounding)이 이루어져 위키는 단순한 요약 모음이 아닌 살아 있는 백과사전으로 성장한다. llm-wiki.en.md
LLM Wiki vs RAG: 핵심 차이
LLM Wiki vs RAG 비교는 이 패턴을 이해하는 데 가장 중요한 대조점을 제공한다.
| 항목 | LLM Wiki | RAG |
|---|---|---|
| 작업 발생 시점 | 수집 시점 (한 번 컴파일) | 쿼리 시점 (매번 검색) |
| 지식의 성격 | 누적됨 — 페이지가 점점 풍부해짐 | 정적 — 매 쿼리마다 재조합 |
| 결과물 | 사람이 읽을 수 있는 상호 링크된 페이지 | 쿼리별로 재조합되는 불투명한 청크 |
| 모순 처리 | 수집 중 발견·조정 | 조용히 나란히 검색됨 |
| 규모 한계 | 수백~약 1,000페이지 | 수백만 문서 |
2026년 기준 기업용 AI 애플리케이션의 약 85%가 RAG를 사용하지만, RAG 구현의 40~60%가 프로덕션에 도달하지 못한다는 분석이 있다. LLM Wiki는 단일하고 큐레이션된 상호 참조 아티팩트를 유지함으로써 RAG의 대표적 실패 모드인 "부실한 소스에서 비롯된 자신감 있는 오답" 문제를 근본에서 공략한다. 그러나 두 패턴은 상호 배타적이지 않으며, 대규모 코퍼스에서는 컴파일된 위키 + RAG 레이어의 하이브리드 설계가 현실적인 선택이 될 수 있다. llm-wiki.en.md
지식 누적: 왜 위키는 점점 강해지는가
지식 누적(Knowledge Compounding)은 세 가지 속성이 함께 작동하면서 가능해진다. 첫째, 출처 추적(Provenance)이다. 모든 주장은 불변 원본 소스와 연결되어 위키가 시간이 지나도 검증 가능한 상태를 유지하며 환각으로 변질되지 않는다. 둘째, 교차 링크(Cross-links)다. wikilinks로 페이지들이 서로를 참조하고, 역방향 링크와 그래프는 자동으로 계산되어 구조가 항상 일관성을 유지한다. 셋째, 축적되는 합성(Synthesis that accumulates)이다. 특정 주제에 대해 50편의 논문을 소화한 위키는 5편만 소화한 위키보다 훨씬 깊이 있는 답변을 제공한다. 논지는 진화하며, 매번 처음부터 재구성되지 않는다. llm-wiki.en.md
생태계 도구
LLM Wiki 패턴을 중심으로 형성된 도구 생태계는 크게 네 가지로 구성된다.
Obsidian은 사람이 직접 읽고 탐색하는 프런트엔드 역할을 담당한다. Markdown 렌더링, wikilinks 지원, 백링크 보기, 그래프 뷰, Web Clipper 등을 제공하며 Karpathy의 비유에서 "IDE"에 해당한다. 그래프 뷰는 지식 누적 효과를 시각적으로 확인하는 수단이 된다.
Claude Code, Codex, OpenCode 등의 LLM 에이전트가 Ingest · Query · Lint 작업을 실제로 수행하는 "프로그래머" 역할을 맡는다.
qmd (Markdown 검색 엔진)는 Shopify CEO Tobi Lütke가 만든 온디바이스 하이브리드 검색 엔진으로, BM25 + 로컬 벡터 임베딩 + LLM 재순위 정렬을 결합한다. 위키가 약 1,000개 파일을 넘어 성장했을 때 index.md만으로 부족한 검색 라우팅을 보완하는 메모리·검색 백엔드로 활용된다.
Cairni는 이 모든 패턴을 호스팅 서비스로 구현한 관리형 LLM Wiki 플랫폼이다. 사용자가 직접 에이전트, 스키마 파일, 검색 도구, 백업을 구성할 필요 없이 소스를 제공하면 AI가 자동으로 살아 있는 인터링크 위키를 컴파일한다. 팀 워크스페이스, 접근 제어, 승인 큐, 모순 감지, 공개 퍼블리싱 등 자가 호스팅 방식의 한계를 보완하는 기능을 제공한다. llm-wiki.en.md
한계
관련 페이지
- llm-wiki.en.md — 이 패턴을 소개하는 Karpathy의 원문 초안
- Andrej Karpathy — LLM Wiki 패턴을 대중화한 인물
- Vannevar Bush와 Memex — 패턴의 정신적 선조
- LLM Wiki 세 가지 레이어: Raw Sources · Wiki · Schema — 구조적 토대
- LLM Wiki 세 가지 운영 작업: Ingest · Query · Lint — 위키를 살아 있게 만드는 워크플로
- LLM Wiki vs RAG 비교 — 핵심 대안 패턴과의 비교
- 지식 누적(Knowledge Compounding) — 위키가 시간이 지날수록 강해지는 원리
- Obsidian — 사람이 읽는 프런트엔드 도구
- qmd (Markdown 검색 엔진) — 대규모 검색 백엔드
- Cairni — 관리형 LLM Wiki 플랫폼