run-llama/liteparse
A fast, helpful, and open-source document parser
LiteParse – LLM 친화적인 파이프라인을 위한 빠르고 로컬 PDF 파서
무엇인가요 – LiteParse는 장치 내에서 완전히 PDF 유사 문서에서 텍스트, 레이아웃, 이미지, 벡터 그래픽을 추출하는 오픈소스 라이브러리입니다. Rust 커널을 기반으로 하며, 텍스트 추출에는 PDFium을, 이미지 기반 텍스트 추출에는 Tesseract(또는 HTTP 기반 OCR)를 사용합니다. Rust, Python, Node/TypeScript, WebAssembly용 언어 바인딩을 제공하며, 설치 방식과 관계없이 동일하게 작동하는 소형 CLI(lit)도 함께 제공됩니다.
AI에 왜 중요한가요 – LLM 기반의 검색 증강 생성(RAG) 및 에이전트 워크플로우는 깨끗하고 구조화된 문서 데이터가 필요합니다. LiteParse는 다음과 같은 출력을 생성합니다:
- Markdown: 재구성된 제목, 표, 목록, 이미지 자리표시자 포함 – 직접 LLM에 공급할 수 있음.
- JSON: 원시 텍스트, 정밀한 경계 상자, 선택적 이미지 메타데이터, 벡터 그래픽 경로, PDF 구조 트리, 폼 필드 포함.
- 스크린샷(PNG): 페이지의 시각적 외관을 캡처하여 비전 증강 에이전트에 유용. 모든 작업은 로컬에서 수행되므로 클라우드 서비스 비용, 지연, 데이터 프라이버시 문제를 피할 수 있습니다.
주요 기능
- 빠르고 가벼운 부하 – PDFium 기반 텍스트 추출은 빠름. OCR은 선택 사항이며, HTTP 기반 OCR 서비스로 교체 가능.
- 선택적 OCR – 저비용의 "복잡도 확인"(
lit is-complex)을 통해 무거운 작업 전에 OCR이 필요한지 사전 판단 가능. - 다양한 형식 입력 – PDF, DOCX, XLSX, PPTX, 이미지는 LibreOffice + Rust 이미지 크레이트를 사용해 일관된 처리를 위한 PDF 유사 표현으로 변환됨.
- 풍부한 출력 옵션 – 텍스트, Markdown, 구조화된 JSON 중 선택 가능. 이미지 추출, 벡터 그래픽, PDF 구조 트리, 레이아웃 블록, 주석, 폼 필드, 문서 메타데이터, 콘텐츠 경계, XFA 패킷 등을 선택적으로 포함 가능.
- 크로스플랫폼 – Linux, macOS(Intel/ARM), Windows에서 작동. 브라우저용 WASM 패키지도 제공.
- 에이전트 기술 통합 –
skillsCLI를 통해 LLM 에이전트 기술로 설치 가능. 에이전트가 실시간으로liteparse를 호출할 수 있음.
설치 (언어/런타임 선택)
| 언어 | 명령어 | 문서 |
|---|---|---|
| Rust (CLI) | cargo install liteparse |
crates.io README |
| Python | pip install liteparse |
Python README |
| Node/TypeScript | npm i -g @llamaindex/liteparse |
Node README |
| 브라우저 (WASM) | npm i @llamaindex/liteparse-wasm |
WASM README |
일반적인 CLI 워크플로우
# 기본 텍스트 추출
lit parse report.pdf
# Markdown 출력 (LLM 프롬프트에 최적)
lit parse report.pdf --format markdown -o report.md
# 경계 상자와 이미지 포함 JSON
lit parse report.pdf --format json --extract-images -o report.json
# 빠른 OCR 필요성 확인
lit is-complex report.pdf && lit parse report.pdf --no-ocr
# 폴더 전체 배치 처리
lit batch-parse ./in ./out --format markdown
# 시각적 에이전트용 페이지 스크린샷 생성
lit screenshot report.pdf -o ./screenshots --dpi 300
라이브러리로 사용하는 방법 (Python 예제)
from liteparse import LiteParse
parser = LiteParse(ocr=False) # 속도를 위해 OCR 비활성화
result = parser.parse_path('report.pdf')
print(result.json()) # 경계 상자 포함 구조화 출력
(Rust, Node, WASM에서도 동일한 API 존재)
클라우드 버전을 사용해야 할 때 – 매우 복잡한 PDF(밀집된 표, 다중 열 레이아웃, 스캔 문서, 손글씨 메모 등)의 경우, 개발팀은 무거운 AI 기반 레이아웃 재구성 기능을 추가한 클라우드 서비스 LlamaParse를 추천합니다. LiteParse는 속도, 프라이버시, 오프라인 작동이 필요한 경우 최적의 선택입니다.
누가 이득을 볼 수 있을까
- PDF를 입력으로 받는 RAG 파이프라인을 구축하는 개발자로, 빠르고 결정론적인 전처리가 필요한 사람.
- 페이지 스크린샷이나 정확한 텍스트 좌표가 필요한 LLM 에이전트 플랫폼.
- 외부 서비스에 문서를 전송할 수 없는 데이터 프라이버시 제약이 있는 기업.
- 무거운 ML 스택 없이 가벼운 크로스 랭귀지 PDF 파서가 필요한 사람.
TL;DR – LiteParse는 빠르고 로컬에서 실행되는 PDF(및 오피스 문서) 파서로, Markdown, 경계 상자 포함 JSON, 이미지, 벡터 그래픽을 출력 가능하며 Rust, Python, Node, 브라우저에서 호출할 수 있습니다. 클라우드 종속 없이 구조화된 문서 데이터가 필요한 AI/RAG 워크플로우에 최적입니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트