
트리 구조 대화를 활용한 AI 독서 동반자 구축기
요약
RAG의 한계를 극복하기 위해 에이전트 기반의 트리 구조 대화 방식인 Pi-tree를 소개합니다. 단순 벡터 검색 대신 도구(tools)를 활용해 도서, 뉴스, 논문 등 다양한 소스에 정밀하게 접근하여 맥락을 유지합니다.
핵심 포인트
- RAG의 근사치 검색 한계를 에이전트 방식의 정밀한 도구 활용으로 해결
- 도서, 뉴스, 논문, YouTube 등 소스별 맞춤형 도구(tools) 제공
- 마크다운 지침을 통한 AI의 읽기 기술(skills) 정의
- 구조적이고 정확한 맥락 유지를 위한 트리 탐색 방식 채택
AI는 당신이 이미 이해하고 있는 부분에서는 생산성을 높여주지만, 이해하지 못하는 부분에서는 당신을 혼란스럽게 만듭니다.
저는 한동안 AI 어시스턴트와 함께 비소설(non-fiction)을 읽어왔는데, 계속해서 똑같은 벽에 부딪혔습니다. 밀도 높은 책의 한 장(chapter)에 대해 대화를 30번 정도 주고받다 보면, AI가 맥락을 놓치기 시작하는 것입니다. 제가
RAG가 아닌 에이전트 방식 (Agentic, Not RAG)
대부분의 "문서와 대화하기" 도구들은 RAG (Retrieval-Augmented Generation)를 사용합니다. 즉, 콘텐츠를 임베딩 (embeddings)으로 청킹 (chunk)한 다음, 관련 있어 보이는 내용을 검색하는 방식입니다. 문제는 검색이 근사치(approximate)라는 점입니다. AI는 의미론적으로 유사한 청크를 가져올 뿐, 반드시 정확한 맥락을 가져오는 것은 아닙니다.
Pi-tree는 에이전트 방식 (agentic approach)을 취합니다. AI는 콘텐츠에 대해 정밀하고 필요할 때마다 즉각적으로 접근할 수 있는 **도구 (tools)**를 가집니다. 이는 벡터 검색 (vector search)보다는 grep에 더 가깝습니다. 특정 장(chapter)을 찾아보거나, 논문의 방법론(methodology) 섹션을 가져오거나, 오늘의 RSS 피드를 스캔할 수 있습니다. 맥락은 미리 계산되어 요행을 바라는 것이 아니라, 정확하고 구조적이며 필요할 때 요청됩니다.
각 소스 유형별로 목적에 맞게 제작된 도구가 제공됩니다:
- 도서 (Books) →
process_book이 EPUB/MOBI/PDF를 파싱 (parse)하고, 장 구조를 추출하며, 탐색 가능한 개요를 구축합니다. - 뉴스 피드 (News feeds) →
get_latest_rss,search_rss가 피드를 크롤링 (crawl)하여 여러 소스에 걸친 트렌드를 찾아냅니다. - 논문 (Papers) →
search_papers,get_paper_info가 arXiv를 쿼리 (query)하고, 연구 내용을 가져와 맥락화합니다. - YouTube →
get_youtube_transcript가 세그먼트(segment) 단위의 토론을 위해 스크립트를 추출합니다.
그 후 AI의 행동은 **기술 (skills)**에 의해 형성됩니다. 이는 단순히 무엇을 검색할지가 아니라, 어떻게 읽을지를 정의하는 마크다운 (markdown) 지침 파일입니다.
다음은 뉴스 세션의 예시입니다. AI가 RSS 피드를 스캔하여 트렌드가 포함된 요약본을 생성했습니다:
플러그인 시스템 (The Plugin System)
모든 것은 세 가지 수준에서 커스터마이징 (customizable)할 수 있습니다:
1. 기술 (Skills, 마크다운 파일) — .md 파일을 편집하여 AI가 읽는 방식을 변경합니다. 코드는 필요 없습니다.
2. 세션 프로필 (Session Profiles, YAML) — 소스 유형을 서로 다른 기술, 확장 기능 및 모델에 매핑합니다:
name: book.reading
skills:
- interactive-reading
...
3. Full Plugins (TypeScript) — 플러그인 SDK를 사용하여 새로운 소스 유형을 구축합니다:
import { definePiTreeExtension } from "@pi-tree/plugin-sdk";
export default definePiTreeExtension((pi, services) => {
...
또한 **MCP 브리지 (MCP bridge)**가 있습니다 — JSON 설정 파일을 추가하는 것만으로 외부 MCP 서버(웹 검색, 학술 데이터베이스, 번역 API)를 연결할 수 있습니다. Claude Desktop과 동일한 형식입니다.
빠른 시작 (Docker)
cp .env.example .env # API 키를 추가하세요
docker run -d --name pi-tree \
...
http://localhost:3847을 여세요. 끝입니다.
OpenAI 호환 API라면 무엇이든 작동합니다 — 클라우드 제공업체(DeepSeek, Gemini, Claude, OpenAI) 또는 Ollama / LM Studio를 통한 완전한 오프라인 환경 모두 가능합니다. 독서에는 최첨단 모델 (frontier models)이 반드시 필요하지는 않습니다 — 12B 파라미터 모델로도 충분히 잘 작동합니다.
비교
| Pi-tree | ChatGPT / Claude | NotebookLM | Obsidian + AI | |
|---|---|---|---|---|
| 중점 사항 | 이해 및 탐색 | 범용 Q&A | 문서 Q&A | 노트 작성 |
| ... |
대상 사용자
- 비소설 독자 — 밀도 높은 장을 읽고 있는데 AI 요약이 정작 당신이 이해하지 못하는 부분을 건너뛰고 있나요? Pi-tree는 당신이 이해할 때까지 그 간극 속에서 함께 머뭅니다.
- 연구자 및 학생 — 자신의 세부 분야를 벗어났고, 모든 논문이 당신에게 부족한 배경 지식을 전제로 하고 있나요? 모르는 부분으로 가지를 뻗어 탐색한 뒤, 다시 논점으로 돌아오세요.
- 뉴스 팔로워 — 헤드라인은 읽었지만 주장을 평가할 수 없나요? 뉴스 피드를 시간이 흐름에 따라 맥락을 쌓아가는 대화로 전환하세요.
- 개발자 — 생소한 도메인에 있나요? 대화형으로 무엇이든 탐색할 수 있도록 커스텀 플러그인을 구축하세요.
링크
- 🌳 GitHub: github.com/shuowu/pi-tree
- 📖 Docs: shuowu.github.io/pi-tree
- 🧩 Plugin guide: 확장 기능 구축하기 (Building extensions)
- 📸 Feature tour: 스크린샷 및 데모 (Screenshots & demo)
License: AGPL-3.0 — 완전한 오픈 소스 (fully open source).
다음 사항에 대한 피드백을 기다립니다:
- 트리 구조 (tree-structured) 방식이 귀하의 독서/연구 방식과 공명하나요?
- 도서, 뉴스, 논문, YouTube 외에 어떤 유형의 소스를 원하시나요?
- LLM (Large Language Models)을 셀프 호스팅(self-host)한다면, 독서 작업에 어떤 모델이 잘 작동하나요?
본 프로젝트는 트리 구조의 에이전트 세션 (tree-structured agent sessions)을 위한 Pi SDK를 기반으로 구축되었습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기
