OpenAI 공동 창업자이자 Tesla 전 AI 리드인 Andrej Karpathy는 구조화된 Markdown을 이용해 로컬에서 LLM Wiki를 활용하여 데이터를 조회하는 방법을 제안하였는데, RAG/벡터DB없이도 로컬에 있는 다양한 데이터를 Graph로 조회할 수 있는 방법을 제공합니다.
원시 데이터 투입 → LLM이 위키 컴파일·유지 → 쿼리 → 출력물 다시 위키에 저장 → 지식 복리 축적
| 항목 | 내용 |
|---|---|
| 저장 형식 | 구조화된 Markdown 파일 (Obsidian) |
| 인프라 | RAG 파이프라인 없음, 벡터 DB 없음 |
| 자동 기능 | 인덱스, 요약, 토픽 간 백링크 자동 유지 |
| 린팅(Linting) | 불일치 감지, 새 아티클 필요 갭 자동 발굴 |
| 출력 형식 | Markdown 리포트, Marp 슬라이드, Matplotlib 차트 |
| 장기 비전 | 합성 데이터 생성 + 파인튜닝 → 모델 가중치에 코퍼스 내재화 |
| LLM Wiki가 유리한 경우 | RAG가 유리한 경우 |
|---|---|
| 여러 문서를 넘나드는 복잡한 질문 | 실시간으로 변하는 대규모 데이터 |
| 깊은 이해와 합성이 필요할 때 | 단순 사실 조회 |
| 전문가가 직접 큐레이션한 코퍼스 | 출처(provenance) 추적이 중요할 때 |
| 구조적 추론이 필요한 질문 | 빠른 배포가 필요할 때 |
💡 핵심 비유: RAG는 데이터베이스 쿼리, LLM Wiki는 제2의 두뇌 — 경쟁 관계가 아니라 상호 보완 관계!
코드, 문서, 논문, 이미지, 영상, YouTube 링크가 담긴 폴더를 /graphify 명령어 하나로 쿼리 가능한 지식 그래프로 변환하는 Skill입니다. graphify는 Karpathy의 /raw 폴더 아이디어를 실제로 구현한 도구이며, 어떤 폴더든 명령어 하나로 쿼리 가능한 지식 그래프로 만들어주는 강력한 오픈소스 프로젝트입니다.
graphify-out/
├── graph.html # 인터랙티브 그래프 (노드 클릭, 검색, 커뮤니티 필터)
├── GRAPH_REPORT.md # God Node, 놀라운 연결, 추천 질문
├── graph.json # 쿼리 가능한 영속 그래프
└── cache/ # SHA256 캐시 (변경된 파일만 재처리)
설치 방법은 아래와 같습니다.
pip install graphifyy && graphify install
/graphify . # 현재 폴더에 실행
전체 파이프라인은 아래와 같습니다.
detect() → extract() → build_graph() → cluster() → analyze() → report() → export()
- Code: .py, .ts, .js, .go, .rs, .java, .cpp, etc.
- Documents: .md, .txt, .docx, etc.
- Papers: .pdf
- Images: .png, .jpg, .webp (analyzed with vision)
- Video/Audio: .mp4, .mp3, .wav (transcribed with Whisper)
가장 기본적인 검색 방법입니다. 자연어로 질문하면 그래프를 탐색해서 답변해줍니다.
# 기본 BFS 탐색 (넓게 탐색 - "X는 무엇과 연결되어 있나?") /graphify query "RAG는 어떻게 동작하나요?" # DFS 탐색 (깊게 탐색 - "X에서 Y까지 어떻게 연결되나?") /graphify query "인증 모듈이 데이터베이스에 어떻게 연결되나?" --dfs # 토큰 예산 제한 (기본값 2000) /graphify query "트랜스포머 아키텍처란?" --budget 1500
| 모드 | 특징 | 적합한 질문 |
|---|---|---|
| BFS (기본) | 넓게 탐색, 가까운 노드부터 | "X는 무엇인가?", "X와 연결된 것은?" |
DFS (--dfs) |
깊게 탐색, 특정 경로 추적 | "X에서 Y까지 어떻게 연결되나?" |
두 노드 사이의 연결 경로를 찾아줍니다.
/graphify path "AuthModule" "Database" /graphify path "RAG" "LLM"
특정 노드(개념)에 대한 상세 설명과 연결 관계를 보여줍니다.
/graphify explain "SwinTransformer" /graphify explain "RAG"
/graphify /Documents/Docs --update
Graphify는 powerpoint 파일을 지원하지 않으므로 pdf로 변환하여 활용합니다. 이를 위해 아래와 같이 libreoffice를 설치합니다.
brew install --cask libreoffice
이후 대화창에 아래와 같이 폴더를 지정하고, pdf로 변환을 요청합니다.
/Downloads/Docs/AgenticAI의 ppt들을 pdf로 변환하세요. 이미 pdf가 있다면 skip 하세요.
소스를 다운로드 합니다.
git clone https://github.com/kyopark2014/agent-wiki
필요한 패키지를 설치합니다.
cd agent-wiki && pip install -r requirements.txt
Streamlit app을 실행합니다.
streamlit run application/app.py
아래와 같이 "/graphify contents/"를 하면 contents 폴더의 파일들을 가지고 graph를 생성합니다.
image이후 아래와 같이 "/graphify query RAG를 LLM Wiki로 전환하는 방법은?"라고 질문하면 아래와 같이 그래프를 조회합니다.
image최종적으로 아래와 같은 결과를 얻을 수 있습니다.
image생성된 graph는 아래와 같습니다.
imageRAG Is Not Enough. Karpathy Just Showed Us What Comes Next.
What Karpathy’s Second Brain Looks Like Inside a Real Business
Andrej Karpathy let an agent run overnight on his own model.