opendataloader-project/opendataloader-pdf
PDF Parser for AI-ready data. Automate PDF accessibility. Open-source.
OpenDataLoader PDF – AI‑ready PDF parsing & accessibility
What it does – Turns PDFs (digital, scanned, or already‑tagged) into structured, AI‑friendly formats:
- Markdown, JSON (with per‑element bounding boxes), HTML – ready for chunking and retrieval‑augmented generation.
- Tagged PDF – automatically adds PDF/UA‑compatible tags so screen‑readers can read the document.
- Enterprise add‑on – PDF/UA‑1/2 export and a visual “accessibility studio”.
Why it matters – PDF content is notoriously hard for LLMs: reading order is lost, tables break, and there are no coordinates for citations. OpenDataLoader PDF provides a deterministic local parser plus an optional “hybrid” AI mode that routes difficult pages to a remote model, achieving the highest benchmark scores among open‑source PDF parsers (overall 0.907, table 0.928).
Key technical points
- Local engine (Java 11+, called from Python/Node/Java SDKs) gives fast, deterministic output with XY‑Cut++ reading‑order detection.
- Hybrid mode – a lightweight server (
opendataloader-pdf-hybrid) forwards complex pages to an AI backend for OCR, table reconstruction, formula extraction (LaTeX), and image‑description generation (uses a 256 M SmolVLM model). This yields >90 % table accuracy on border‑less tables. - Bounding boxes for every element (text, heading, list, image, table, formula) enable precise source‑citation in RAG pipelines.
- Accessibility – free auto‑tagging follows the PDF Association’s Well‑Tagged PDF spec and is validated with veraPDF. Full PDF/UA compliance is offered as a paid enterprise feature.
- Multi‑language OCR – 80+ languages via EasyOCR (default) or alternative engines (RapidOCR, Tesseract, Apple Vision, NVIDIA Nemotron OCR).
How to use (quick‑start)
pip install -U opendataloader-pdf # Python SDK (requires Java 11+)
import opendataloader_pdf
opendataloader_pdf.convert(
input_path=["file1.pdf", "folder/"],
output_dir="out/",
format="markdown,json"
)
Node and Java SDKs are available with analogous commands.
When to enable hybrid mode – For PDFs that contain:
- Complex or border‑less tables
- Scanned images (OCR needed)
- Mathematical formulas
- Charts that need AI‑generated alt‑text Install the extra dependency and run the backend server, e.g.:
pip install "opendataloader-pdf[hybrid]"
opendataloader-pdf-hybrid --port 5002 # start AI server
opendataloader-pdf --hybrid docling-fast file.pdf # client call
Performance – Local mode processes a page in ~0.015 s; hybrid mode adds ~0.45 s/page for AI‑enhanced pages. No GPU is required for the core parser; AI enrichments run on CPU (or optional GPU‑enabled OCR backends).
Ecosystem – The library ships on PyPI, npm, and Maven Central, making it easy to embed in Python, JavaScript, or Java applications. A LangChain integration is provided for seamless RAG pipelines.
License & pricing – Core extraction and auto‑tagging are Apache‑2.0 (free). PDF/UA export, the visual accessibility studio, and enterprise‑grade support are commercial add‑ons.
In short, OpenDataLoader PDF is a genuine open‑source tool that bridges PDF parsing and accessibility with the needs of modern LLM‑driven workflows.
Related
- Project
- Project
- Project
- Project
- Project