Vibeleaderboard
Index / tool
Visit nanonets.com
Category
AI Tools
Rank
No. 1886Tools index

Previous survey · No. 1828 ·

Pricing
Open Source
Type
TOOL
Builder
datalab-to
GitHub
11 stars
Date

About

On-premises OCR-free unstructured data extraction, markdown conversion, and benchmarking toolkit.

What it does

You describe the fields or table columns you need, then upload PDFs or images. Docext rasterizes documents, sends page images to a vision-language model, repairs the returned JSON, and presents extracted values with High or Low confidence. A second mode streams page-by-page Markdown with tables, equations, image descriptions, signatures, watermarks, and page markers.

Why it's ranked here

Docext combines a practical extraction interface, configurable schemas, local model serving, and document-to-Markdown output in one Python package. The implementation exposes useful mechanics instead of hiding them behind a hosted service. However, unsafe UI defaults, forced image reshaping, heavy dependencies, and inconsistent license metadata make it better suited to careful evaluation than immediate production deployment.

What's good

Users can define fields and table columns without changing extraction code, or start with invoice and passport templates. Field extraction and table extraction run concurrently. Confidence uses a separate model pass, making its High or Low result distinct from the initial answer. Local vLLM and Ollama servers are supported, PDFs become page images, and Markdown conversion streams progress across pages.

Tradeoffs

The interface launches with fixed admin credentials and public Gradio sharing enabled by default unless sharing is disabled. Every page image is resized to a square, which can distort document geometry. The dependency set includes pinned vLLM and Gradio packages, while Python 3.11 or newer is required. Confidence is only binary and model-generated. License metadata conflicts: the README says Apache 2.0, but package classifiers say MIT.

How to use it well

Use docext for controlled document experiments where engineers can choose a vision-language model, define extraction schemas, inspect Markdown, and validate outputs against source pages. It fits invoice, passport, table, and multipage processing prototypes on managed Linux or macOS infrastructure. Harden authentication and sharing before exposing the interface. It does not provide human review workflows, document storage, or a demonstrated production REST service in the supplied implementation.

Technical notes+

setup.py packages docext for Python >=3.11 and registers the docext console script through docext.__main__:main; requirements.txt includes Gradio, LiteLLM, PyMuPDF, pdf2image, vLLM, pandas, and JSON repair. docext/app/app.py builds the Gradio tabs, starts local vLLM when needed, sets VLM_MODEL_URL, uses fixed admin credentials, and passes share=not share. docext/core/client.py sends deterministic LiteLLM completions and selects provider-specific formatting. docext/core/extract.py performs field and table requests concurrently, then makes a second field-confidence request. docext/core/utils.py rasterizes PDFs and resizes every image to exactly max_img_size by max_img_size. README.md declares Apache 2.0, while setup.py declares the MIT classifier.

Observed

Primary language
Python 3.11 or newer
License
README declares Apache License 2.0; package metadata declares MIT
Packaging
Setuptools package with a console-script entry point and PyPI installation surface
User interface
Command-line configuration launches a Gradio web interface
Model interfaces
LiteLLM client supports local vLLM and Ollama endpoints plus other configured providers
Document inputs
PDF, JPEG, PNG, TIFF, BMP, GIF, and WebP are accepted

Read from README.md, setup.py, requirements.txt, docext/__init__.py, docext/app/app.py, docext/app/args.py, docext/app/utils.py, docext/core/vllm.py, docext/app/pdf2md.py, docext/core/utils.py, docext/core/client.py, docext/core/config.py, docext/app/__init__.py, docext/core/extract.py, docext/core/prompts.py.

What it can do

  • Extract unstructured data from documents

    Unstructured documentsStructured data

  • Convert documents to markdown format

    Documents (various formats)Markdown files

  • Process documents without OCR dependency

    Digital documentsExtracted text and data

  • Benchmark data extraction performance

    Document datasets and extraction modelsPerformance metrics and comparison results

  • Run data extraction on local infrastructure

    Documents and processing requirementsExtracted data without cloud dependency

Tags

ocrdocumentextractionmarkdownbenchmark

Tech Stack

PythonDocker

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.