VectifyAI/PageIndex

📑 PageIndex: Document Index for Vectorless, Reasoning-based RAG

PageIndex – 벡터 없이 추론 기반의 검색 증강 생성

무엇인가요 – PageIndex는 일반적인 벡터 스토어 + 청크화 파이프라인을 대체하는 오픈소스 RAG 엔진입니다. 문서의 레이아웃에서 유도된 계층적 트리 인덱스를 사용합니다. 쿼리 시 LLM이 트리를 탐색하며, 자신의 추론(및 전체 대화 컨텍스트)을 활용해 가장 관련 있는 섹션을 찾습니다. 결과적으로 벡터 데이터베이스 없이도 추적 가능하고 설명 가능하며 컨텍스트 인식형 검색 단계를 제공합니다.


핵심 아이디어

개념 PageIndex의 구현 방식
인덱싱 PDF(또는 기타 텍스트 중심 문서)를 장, 절, 제목 등의 논리적 구조를 반영하는 트리로 파싱합니다. 가벼운 LLM 모델(index=)이 각 노드를 요약하며, 트리는 임베딩이 아닌 레이아웃에서 유도됩니다.
검색 질문이 제기되면 chat 모델(chat=)이 트리를 기반으로 추론하여, 사람처럼 단계적으로 노드를 선택합니다. 모델은 전체 대화 기록, 도메인 지식, 외부 컨텍스트를 모두 시각화하므로 관련성은 순수한 유사성보다 추론에 기반합니다.
벡터 없음 / 청크 없음 인덱스가 결정론적 트리이므로 벡터 DB, 유사성 검색, 고정 크기 청크가 필요 없습니다.
설명 가능성 모델이 트리를 탐색하는 경로가 시각화되어, 명확한 인용(로컬에서는 페이지 수준, 클라우드에서는 줄 수준)이 가능합니다.

빠른 시작 (로컬 모드)

pip install -U pageindex
import os
from pageindex import PageIndexClient

os.environ["OPENAI_API_KEY"] = "your-openai-key"

client = PageIndexClient(
    index="gpt-5.6-luna",   # 트리 구축용 저비용 모델
    chat="gpt-5.6-sol",    # 추론 검색 수행 모델
)

# PDF 업로드 및 문서 식별자 획득
doc_id = client.submit_document("report.pdf")['doc_id']

# 질문 제기 – 클라이언트가 자동으로 트리를 탐색
answer = client.chat("2023년 운영 마진은 얼마였나요?", doc_id=doc_id)
print(answer)

동일한 SDK는 index="cloud"로 설정하고 PAGEINDEX_API_KEY를 제공하면 PageIndex Cloud에서도 사용 가능합니다.

주요 기능

  • 문서의 논리 계층을 반영하는 트리 기반 인덱스.
  • LLM 기반 검색: 모델이 다음 탐색 노드를 결정하여 다단계 추론을 가능하게 합니다.
  • 로컬 및 클라우드 모드 – 온프레미스에서 전체 파이프라인을 실행하거나, PageIndex의 관리 서비스가 OCR, 이미지 이해, 대규모 코퍼스를 처리합니다(파일 시스템 레이어).
  • 비용 효율성: 인덱싱 비용은 ≈ $0.001/페이지. 방문한 노드만 모델에 전달되므로 문서 길이에 관계없이 쿼리 비용은 일정합니다.
  • 추적 가능한 인용 – 모든 답변은 정확한 페이지(로컬) 또는 줄(클라우드)에 연결됩니다.
  • 스트리밍, 다중 문서 검색, OpenAI/Claude 에이전트 프레임워크용 사전 제작 도구를 갖춘 즉시 사용 가능한 SDK.

벤치마크 및 성능 (README에 기재됨)

  • 인덱싱 – $0.001/페이지, 9~1,098페이지의 PDF에서 13초 ~ 4.5분 소요.
  • 쿼리 비용 – 52페이지에서는 모델에 전체 PDF를 입력하는 경우보다 2.1배 저렴, 420페이지에서는 16.6배 저렴. ~800페이지 이상에서는 전체 PDF 접근 방식이 컨텍스트 창을 초과합니다.
  • 정확도 – FinanceBench QA 벤치마크에서 PageIndex는 98.7% 의 정확도를 달성했으며, 벡터 기반 RAG의 일반적인 ~50%를 크게 상회합니다.
  • OSS 벤치마크 – 동반된 PageIndex-OSS-Benchmark 리포지토리는 34개 PDF(1,945페이지)에서 62개 검색 질문을 평가하며, 모델 크기와 쿼리당 비용 사이의 명확한 트레이드오프 곡선을 보여줍니다.

일반적인 사용 사례

  • 재무 보고서, 규제 제출서, 법적 계약서 – 도메인 지식과 다단계 추론에 의존하는 관련성 필요.
  • 기술 매뉴얼 및 의학 문헌 – 긴 구조화된 문서에서 정확한 인용이 요구되는 경우.
  • 기업 지식 기반 – 벡터 DB 관리 없이 설명 가능한 검색이 필요한 경우.

라이선스 및 기여

리포지토리는 오픈소스입니다(README에 특정 라이선스가 명시되어 있지 않으므로, 리포지토리 내 LICENSE 파일을 확인하세요). 기여는 풀 리퀘스트를 통해 환영합니다. 또한 OCR, 이미지 이해, 대규모 인덱싱을 위한 상용 클라우드 서비스도 제공합니다.

더 알아보기


PageIndex는 벡터나 투명하지 않은 유사성 점수의 오버헤드 없이, 사람처럼 거대하고 복잡한 PDF에서 정보를 검색할 수 있게 해줍니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트