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