
이 글은 OpenKB(Open LLM Knowledge Base)가 무엇인지, 기존 RAG 방식과 무엇이 다른지, 그리고 실제로 어떻게 지식 베이스를 구축하고 활용할 수 있는지를 정리한 IT 기술 소개 글입니다. 단순히 문서를 검색하는 도구가 아니라, 문서를 한 번 컴파일해 지속적으로 축적되는 지식 위키로 만든다는 점에서 OpenKB의 개념과 구조, 주요 기능, 사용 방법을 중심으로 설명합니다.
OpenKB란 무엇인가
OpenKB는 LLM을 활용해 원본 문서를 구조화된 위키 형태의 지식 베이스로 컴파일하는 오픈소스 CLI 시스템입니다. 문서를 질의할 때마다 다시 해석하는 방식이 아니라, 처음부터 지식을 정리·연결해 두고 그 결과를 지속적으로 유지·확장하는 접근을 취합니다.
이 개념은 Andrej Karpathy가 제안한 아이디어에서 출발했습니다. LLM이 문서를 읽고 요약, 개념 정리, 상호 참조를 자동으로 생성하면 지식은 매번 재생성되는 것이 아니라 시간이 지날수록 축적(compound)됩니다.
기존 RAG 방식과의 차이점
전통적인 RAG(Retrieval-Augmented Generation)는 질문이 들어올 때마다 문서를 다시 검색하고 추론합니다.
이 방식의 한계는 다음과 같습니다.
- 지식이 누적되지 않는다
- 매 쿼리마다 같은 내용을 반복적으로 재발견한다
- 문서 간 관계나 모순을 지속적으로 관리하기 어렵다
OpenKB는 이와 달리 지식을 한 번 컴파일해 영구적인 위키로 저장합니다.
이미 연결된 개념, 교차 참조, 요약이 존재하므로 LLM은 “이미 정리된 지식 위를 탐색”하며 답변하게 됩니다.
OpenKB의 핵심 특징
다양한 문서 포맷 지원
PDF, Word, Markdown, PowerPoint, HTML, Excel, 텍스트 등 다양한 포맷을 지원하며, 내부적으로 markitdown을 활용해 문서를 표준화합니다.
벡터 DB 없는 장문 문서 처리
OpenKB는 벡터 DB를 사용하지 않습니다.
대신 PageIndex 기반 트리 인덱싱을 통해 수십 페이지 이상의 장문 PDF도 안정적으로 처리합니다. LLM은 전체 문서를 직접 읽는 대신, 문서 구조와 요약으로 구성된 트리를 탐색합니다.
멀티모달 네이티브 지원
텍스트뿐 아니라 표, 이미지, 도표까지 함께 추출·이해합니다. 이는 단순 텍스트 검색 기반 시스템과의 큰 차별점입니다.
컴파일된 위키 구조
문서를 추가하면 LLM이 다음 작업을 자동으로 수행합니다.
- 문서 요약 페이지 생성
- 기존 개념 페이지 검토
- 개념 추가 또는 업데이트 및 교차 문서 합성
- 인덱스 및 변경 로그 갱신
하나의 문서가 여러 위키 페이지에 영향을 주며, 지식은 고립되지 않고 연결됩니다.
OpenKB 아키텍처 이해하기
OpenKB는 다음과 같은 흐름으로 동작합니다.
- raw/ : 원본 문서를 드롭하는 공간
- 짧은 문서 : markitdown → LLM이 전체 문서 읽기
- 긴 PDF : PageIndex → 트리 인덱스 + 요약
- 결과물 : wiki/ 디렉터리에 구조화된 지식 생성
wiki/에는 개요(index), 요약, 개념(concepts), 탐색 결과(explorations), 품질 리포트(reports) 등이 Markdown 파일로 저장됩니다.
지식 컴파일 방식의 의미
OpenKB의 핵심은 “검색”이 아니라 컴파일입니다.
문서를 추가할 때마다 기존 지식과 비교·합성되며, 다음과 같은 관리가 자동화됩니다.
- 개념 간 중복 제거
- 문서 간 모순 탐지
- 오래된 정보 식별
- 고아 페이지(연결되지 않은 지식) 발견
이로 인해 지식 베이스는 시간이 지날수록 더 정제되고 신뢰도가 높아집니다.
OpenKB 사용 방법 간단 예제
설치
pip install openkb
GitHub 최신 버전 설치
pip install git+https://github.com/VectifyAI/OpenKB.git
지식 베이스 초기화
mkdir my-kb && cd my-kb
openkb init
문서 추가
openkb add paper.pdf
openkb add ~/papers/
질의 및 대화
openkb query "What are the main findings?"
openkb chat
대화 모드는 세션이 유지되므로, 맥락을 반복 입력하지 않고도 심화 탐색이 가능합니다.
멀티 LLM 지원 구조
OpenKB는 LiteLLM을 통해 OpenAI, Claude, Gemini 등 다양한 LLM을 지원합니다.
모델은 초기 설정 또는 .openkb/config.yaml에서 지정하며, API 키는 .env 파일로 관리합니다.
Obsidian과의 연계
생성된 위키는 일반 Markdown 파일과 [[wikilinks]]로 구성되어 있어 Obsidian에서 바로 열 수 있습니다.
그래프 뷰를 활용하면 지식 간 연결 구조를 시각적으로 탐색할 수 있습니다.
OpenKB는 문서를 단순히 “질의 대상”으로 두지 않고, 지속적으로 성장하는 지식 자산으로 전환합니다.
특히 다음과 같은 경우에 강력한 효과를 기대할 수 있습니다.
- 논문, 기술 문서, 내부 자료가 지속적으로 쌓이는 환경
- 장문 문서 기반의 정확한 지식 관리가 필요한 조직
- RAG의 반복 비용과 비일관성에 피로를 느끼는 사용자
지식을 매번 다시 찾는 것이 아니라, 한 번 정리해 계속 사용하는 구조.
이 점이 OpenKB가 제시하는 가장 중요한 방향성입니다.
https://github.com/VectifyAI/OpenKB
GitHub - VectifyAI/OpenKB: OpenKB: Open LLM Knowledge Base
OpenKB: Open LLM Knowledge Base. Contribute to VectifyAI/OpenKB development by creating an account on GitHub.
github.com

'인공지능' 카테고리의 다른 글
| Open Design: Claude Design을 대체하는 로컬 퍼스트 오픈소스 디자인 엔진 정리 (0) | 2026.05.11 |
|---|---|
| 초고속 엔터프라이즈 AI 게이트웨이 Bifrost 핵심 정리와 활용 포인트 (0) | 2026.05.11 |
| 코딩 에이전트 시대, 진짜 병목은 코드가 아니라 조직이었다 (0) | 2026.05.08 |
| Toprank: Claude Code 기반 SEO·광고 자동화를 한 번에 관리하는 오픈소스 플러그인 (0) | 2026.05.08 |
| 금융 서비스를 위한 AI 에이전트 템플릿 정리: Claude 기반 자동화가 바꾸는 실무 환경 (0) | 2026.05.08 |