초급
LLM을 활용한 개인 지식 베이스 구축 패턴
LLM 위키
LLM을 활용한 개인 지식 베이스 구축 패턴입니다.
이것은 아이디어 파일로, 자신의 LLM 에이전트(예: OpenAI Codex, Claude Code, OpenCode/Pi 등)에 복사하여 붙여넣기 위해 설계되었습니다. 목표는 높은 수준의 아이디어를 전달하는 것이지만, 에이전트가 여러분과 협력하여 구체적인 내용을 구축해 나갈 것입니다.
핵심 아이디어#
대부분의 사람들이 LLM과 문서를 사용하는 경험은 RAG와 같습니다: 파일 모음을 업로드하면, LLM이 쿼리 시점에 관련 청크를 검색하여 답변을 생성합니다. 이 방식은 작동하지만, LLM은 매 질문마다 처음부터 지식을 다시 발견합니다. 축적이 없습니다. 다섯 개의 문서를 종합해야 하는 미묘한 질문을 하면, LLM은 매번 관련 조각을 찾아서 조합해야 합니다. 아무것도 구축되지 않습니다. NotebookLM, ChatGPT 파일 업로드, 그리고 대부분의 RAG 시스템이 이렇게 작동합니다.
여기서 제안하는 아이디어는 다릅니다. 쿼리 시점에 원시 문서에서 검색하는 대신, LLM은 지속적으로 구조화된 위키를 구축하고 유지 관리합니다. 이 위키는 여러분과 원시 소스 사이에 위치하는, 상호 연결된 마크다운 파일 모음입니다. 새 소스를 추가하면, LLM은 단순히 나중에 검색하기 위해 인덱싱하지 않습니다. 소스를 읽고, 핵심 정보를 추출하여 기존 위키에 통합합니다. 엔티티 페이지를 업데이트하고, 주제 요약을 수정하며, 새 데이터가 기존 주장과 모순되는 지점을 기록하고, 진화하는 종합을 강화하거나 도전합니다. 지식은 한 번 컴파일된 후 최신 상태로 유지되며, 매 쿼리마다 다시 파생되지 않습니다.
이것이 핵심 차이점입니다: 위키는 지속적이고 누적되는 결과물입니다. 상호 참조는 이미 존재합니다. 모순은 이미 표시되었습니다. 종합은 이미 읽은 모든 것을 반영합니다. 소스를 추가하고 질문을 할 때마다 위키는 점점 더 풍부해집니다.
여러분은 위키를 직접 작성하지 않거나 거의 작성하지 않습니다. LLM이 모든 것을 작성하고 유지 관리합니다. 여러분은 소싱, 탐색, 그리고 올바른 질문을 하는 역할을 담당합니다. LLM은 요약, 상호 참조, 정리, 기록 유지 등 지식 베이스를 시간이 지남에 따라 실제로 유용하게 만드는 모든 잡일을 수행합니다. 실제로는 한쪽에 LLM 에이전트를 열고 다른 쪽에 Obsidian을 열어 둡니다. LLM은 대화를 기반으로 편집하고, 여러분은 실시간으로 결과를 탐색합니다. 링크를 따라가고, 그래프 뷰를 확인하고, 업데이트된 페이지를 읽습니다. Obsidian은 IDE이고, LLM은 프로그래머이며, 위키는 코드베이스입니다.
이 패턴은 다양한 맥락에 적용될 수 있습니다. 몇 가지 예시입니다:
- 개인: 자신의 목표, 건강, 심리, 자기 계발을 추적합니다. 일기 항목, 기사, 팟캐스트 노트를 정리하고 시간이 지남에 따라 자신에 대한 구조화된 그림을 구축합니다.
- 연구: 몇 주 또는 몇 달에 걸쳐 주제를 깊이 파고듭니다. 논문, 기사, 보고서를 읽고 진화하는 논제를 가진 포괄적인 위키를 점진적으로 구축합니다.
- 책 읽기: 각 장을 진행하면서 정리하고, 등장인물, 주제, 줄거리, 그리고 그 연결 방식에 대한 페이지를 구축합니다. 끝날 무렵에는 풍부한 동반 위키를 갖게 됩니다. Tolkien Gateway와 같은 팬 위키를 생각해 보세요. 수년간 자원봉사자 커뮤니티가 구축한 수천 개의 상호 연결된 페이지로 등장인물, 장소, 사건, 언어를 다룹니다. LLM이 모든 상호 참조와 유지 관리를 수행하면서, 읽는 동안 개인적으로 비슷한 것을 구축할 수 있습니다.
- 비즈니스/팀: LLM이 유지 관리하는 내부 위키로, Slack 스레드, 회의 기록, 프로젝트 문서, 고객 통화를 통해 공급됩니다. 업데이트를 검토하는 인간이 루프에 있을 수도 있습니다. 팀에서 아무도 하고 싶어하지 않는 유지 관리를 LLM이 수행하기 때문에 위키는 최신 상태를 유지합니다.
- 경쟁 분석, 실사, 여행 계획, 강의 노트, 취미 심층 탐구 — 시간이 지남에 따라 지식을 축적하고, 흩어지지 않고 정리되기를 원하는 모든 것에 적용됩니다.
아키텍처#
세 가지 계층이 있습니다:
원시 소스 — 여러분이 선별한 소스 문서 모음입니다. 기사, 논문, 이미지, 데이터 파일 등이 포함됩니다. 이들은 변경 불가능합니다. LLM이 읽기만 하고 수정하지 않습니다. 이것이 진실의 원천(source of truth)입니다.
위키 — LLM이 생성한 마크다운 파일 디렉토리입니다. 요약, 엔티티 페이지, 개념 페이지, 비교, 개요, 종합 등이 포함됩니다. LLM이 이 계층을 완전히 소유합니다. 페이지를 만들고, 새 소스가 도착하면 업데이트하며, 상호 참조를 유지하고, 모든 것을 일관되게 유지합니다. 여러분은 읽기만 하고, LLM이 작성합니다.
스키마 — LLM에게 위키가 어떻게 구조화되어 있는지, 규칙은 무엇인지, 소스를 수집하거나 질문에 답하거나 위키를 유지 관리할 때 어떤 워크플로를 따라야 하는지 알려주는 문서(예: Claude Code의 CLAUDE.md 또는 Codex의 AGENTS.md)입니다. 이것이 핵심 구성 파일입니다. LLM을 일반 챗봇이 아닌 규율 있는 위키 관리자로 만드는 요소입니다. 여러분과 LLM은 도메인에 맞는 방식을 찾으면서 시간이 지남에 따라 이 파일을 함께 발전시킵니다.
작업#
수집. 새 소스를 원시 컬렉션에 넣고 LLM에게 처리하도록 지시합니다. 예시 흐름: LLM이 소스를 읽고, 주요 내용에 대해 여러분과 논의하고, 위키에 요약 페이지를 작성하고, 인덱스를 업데이트하고, 위키 전체의 관련 엔티티 및 개념 페이지를 업데이트하고, 로그에 항목을 추가합니다. 단일 소스가 10-15개의 위키 페이지에 영향을 미칠 수 있습니다. 개인적으로는 소스를 한 번에 하나씩 수집하고 계속 참여하는 것을 선호합니다. 요약을 읽고, 업데이트를 확인하고, 강조할 내용을 LLM에 안내합니다. 하지만 감독을 덜 하면서 한 번에 여러 소스를 일괄 수집할 수도 있습니다. 자신의 스타일에 맞는 워크플로를 개발하고, 향후 세션을 위해 스키마에 문서화하는 것은 여러분의 몫입니다.
질의. 위키에 대해 질문합니다. LLM이 관련 페이지를 검색하고, 읽고, 인용과 함께 답변을 종합합니다. 답변은 질문에 따라 다양한 형태를 취할 수 있습니다. 마크다운 페이지, 비교 표, 슬라이드 데크(Marp), 차트(matplotlib), 캔버스 등이 있습니다. 중요한 통찰: 좋은 답변은 새 페이지로 위키에 다시归档될 수 있습니다. 여러분이 요청한 비교, 분석, 발견한 연결고리 등은 가치가 있으며 채팅 기록 속으로 사라져서는 안 됩니다. 이렇게 하면 탐색 결과가 수집된 소스처럼 지식 베이스에 축적됩니다.
린트. 주기적으로 LLM에게 위키의 상태를 점검하도록 요청합니다. 다음을 확인합니다: 페이지 간 모순, 최신 소스로 대체된 오래된 주장, 인바운드 링크가 없는 고립된 페이지, 자체 페이지가 없지만 언급된 중요한 개념, 누락된 상호 참조, 웹 검색으로 채울 수 있는 데이터 격차. LLM은 조사할 새로운 질문과 찾아볼 새로운 소스를 제안하는 데 능숙합니다. 이는 위키가 성장함에 따라 건강한 상태를 유지하도록 합니다.
인덱싱 및 로깅#
두 개의 특별한 파일이 LLM(그리고 사용자)이 위키가 성장함에 따라 탐색하는 데 도움을 줍니다. 각각 다른 목적을 가지고 있습니다.
index.md는 콘텐츠 중심입니다. 위키에 있는 모든 항목의 카탈로그로, 각 페이지는 링크, 한 줄 요약, 그리고 선택적으로 날짜나 소스 개수와 같은 메타데이터와 함께 나열됩니다. 카테고리(엔티티, 개념, 소스 등)별로 정리됩니다. LLM은 수집할 때마다 이를 업데이트합니다. 쿼리에 응답할 때 LLM은 먼저 인덱스를 읽어 관련 페이지를 찾은 후, 해당 페이지로 들어가 자세히 살펴봅니다. 이 방식은 중간 규모(약 100개 소스, 수백 페이지)에서 놀랍도록 잘 작동하며, 임베딩 기반 RAG 인프라가 필요하지 않습니다.
log.md는 시간순입니다. 수집, 쿼리, 린트 검사 등 발생한 일과 그 시점을 기록하는 추가 전용 로그입니다. 유용한 팁: 각 항목이 일관된 접두사(예:
## [2026-04-02] 수집 | 기사 제목)로 시작하면, 로그는 간단한 유닉스 도구로 파싱 가능해집니다. grep "^## \[" log.md | tail -5 명령어로 최근 5개 항목을 확인할 수 있습니다. 로그는 위키 진화의 타임라인을 제공하며, LLM이 최근에 수행된 작업을 이해하는 데 도움을 줍니다.선택 사항: CLI 도구#
어느 시점이 되면 LLM이 위키를 더 효율적으로 운영할 수 있도록 돕는 작은 도구를 만들고 싶을 수 있습니다. 위키 페이지를 검색하는 검색 엔진이 가장 명확한 예입니다. 소규모에서는 인덱스 파일로 충분하지만, 위키가 성장함에 따라 적절한 검색이 필요해집니다. qmd는 좋은 선택입니다. 마크다운 파일을 위한 로컬 검색 엔진으로, 하이브리드 BM25/벡터 검색과 LLM 재순위화를 모두 온디바이스에서 지원합니다. CLI(LLM이 셸 명령으로 실행 가능)와 MCP 서버(LLM이 네이티브 도구로 사용 가능)를 모두 제공합니다. 필요에 따라 직접 더 간단한 것을 만들 수도 있습니다. LLM은 필요할 때 간단한 검색 스크립트를 빠르게 코딩하는 데 도움을 줄 수 있습니다.
팁과 요령#
- Obsidian Web Clipper는 웹 기사를 마크다운으로 변환하는 브라우저 확장 프로그램입니다. 원시 자료를 빠르게 수집하는 데 매우 유용합니다.
- 이미지를 로컬로 다운로드하세요. Obsidian 설정파일 및 링크에서 "첨부 파일 폴더 경로"를 고정 디렉토리(예:
raw/assets/)로 설정합니다. 그런 다음 설정 → 단축키에서 "다운로드"를 검색하여 "현재 파일의 첨부 파일 다운로드"를 찾고 단축키(예: Ctrl+Shift+D)를 지정합니다. 기사를 클립한 후 단축키를 누르면 모든 이미지가 로컬 디스크에 다운로드됩니다. 선택 사항이지만 유용합니다. LLM이 깨질 수 있는 URL에 의존하지 않고 이미지를 직접 보고 참조할 수 있게 해줍니다. 참고로 LLM은 인라인 이미지가 포함된 마크다운을 한 번에 읽을 수 없습니다. 해결 방법은 LLM이 먼저 텍스트를 읽고, 그런 다음 참조된 이미지 중 일부 또는 전체를 별도로 보면서 추가 컨텍스트를 얻는 것입니다. 다소 번거롭지만 충분히 작동합니다. - Obsidian의 그래프 뷰는 위키의 구조(무엇이 무엇과 연결되어 있는지, 어떤 페이지가 허브이고 어떤 페이지가 고립되었는지)를 확인하는 가장 좋은 방법입니다.
- Marp는 마크다운 기반 슬라이드 데크 형식입니다. Obsidian에 플러그인이 있습니다. 위키 콘텐츠에서 직접 프레젠테이션을 생성하는 데 유용합니다.
- Dataview는 페이지 프론트매터에 대해 쿼리를 실행하는 Obsidian 플러그인입니다. LLM이 위키 페이지에 YAML 프론트매터(태그, 날짜, 소스 개수)를 추가하면 Dataview가 동적 테이블과 목록을 생성할 수 있습니다.
- 위키는 마크다운 파일의 git 저장소일 뿐입니다. 버전 기록, 브랜칭, 협업을 무료로 이용할 수 있습니다.
이것이 작동하는 이유#
지식 베이스를 유지 관리하는 데 지루한 부분은 읽거나 생각하는 것이 아니라, 기록 관리입니다. 상호 참조 업데이트, 요약 최신 상태 유지, 새 데이터가 기존 주장과 모순될 때 기록, 수십 페이지에 걸친 일관성 유지 등입니다. 인간은 유지 관리 부담이 가치보다 빠르게 증가하기 때문에 위키를 포기합니다. LLM은 지루해하지 않고, 상호 참조 업데이트를 잊지 않으며, 한 번에 15개의 파일을 처리할 수 있습니다. 유지 관리 비용이 거의 0에 가깝기 때문에 위키는 계속 유지됩니다.
인간의 역할은 소스를 선별하고, 분석을 지시하며, 좋은 질문을 하고, 그것이 무엇을 의미하는지 생각하는 것입니다. LLM의 역할은 그 외의 모든 것입니다.
이 아이디어는 정신적으로 Vannevar Bush의 Memex(1945)와 관련이 있습니다. 문서 간 연관 경로가 있는 개인적이고 선별된 지식 저장소입니다. Bush의 비전은 웹이 된 것보다 이것에 더 가까웠습니다. 즉, 비공개이고, 적극적으로 선별되며, 문서 간의 연결이 문서 자체만큼 가치 있는 것입니다. 그가 해결하지 못한 부분은 누가 유지 관리를 담당할 것인가였습니다. LLM이 그 역할을 처리합니다.
참고 사항#
이 문서는 의도적으로 추상적입니다. 특정 구현이 아닌 아이디어를 설명합니다. 정확한 디렉토리 구조, 스키마 규칙, 페이지 형식, 도구 등은 모두 사용자의 도메인, 선호도 및 선택한 LLM에 따라 달라집니다. 위에서 언급된 모든 것은 선택 사항이며 모듈식입니다. 유용한 것을 선택하고, 그렇지 않은 것은 무시하세요. 예를 들어, 소스가 텍스트 전용이라면 이미지 처리가 전혀 필요하지 않을 수 있습니다. 위키가 충분히 작아서 인덱스 파일만으로 충분하고 검색 엔진이 필요하지 않을 수 있습니다. 슬라이드 데크에 관심이 없고 마크다운 페이지만 원할 수도 있습니다. 완전히 다른 출력 형식 세트를 원할 수도 있습니다. 이를 올바르게 사용하는 방법은 LLM 에이전트와 공유하고 함께 작업하여 사용자의 필요에 맞는 버전을 구체화하는 것입니다. 이 문서의 유일한 역할은 패턴을 전달하는 것입니다. LLM이 나머지를 알아낼 수 있습니다.