// the find
drmingler/docling-api
Easily deployable and scalable backend server that efficiently converts various document formats (pdf, docx, pptx, html, images, etc) into Markdown. With support for both CPU and GPU processing, it is Ideal for large-scale workflows, it offers text/table extraction, OCR, and batch processing with sync/async endpoints.
A FastAPI wrapper around IBM's Docling library that adds a Celery task queue, async job tracking, and Docker deployment on top of what Docling already provides. Aimed at teams that need document-to-Markdown conversion as a standalone service rather than a Python library dependency. The comparison screenshots showing it outperforming PyPDF and PyMuPDF4LLM are the honest sell.
The sync/async split is done properly — synchronous endpoint for quick one-offs, Celery-backed async jobs with polling for batch workloads, which is the right architecture for variable-length document processing. Docker Compose files for both CPU and GPU modes with worker scaling via --scale are ready to ship. Flower integration for monitoring task queues is included rather than left as an exercise. The underlying Docling library handles the hard parts (table detection, multi-language OCR, layout analysis) and the comparison images show it genuinely performs well on complex PDFs.
Last commit was March 2025 — Docling itself has moved fast since then and this wrapper may be behind on model updates or API changes. No authentication on the API endpoints whatsoever; the docs don't mention it and there's no middleware visible in the tree, so you'd need to bolt that on before putting this anywhere public. The Redis instance is also the result backend, meaning completed job results accumulate forever unless you configure result_expires, which the setup docs don't mention. No tests in the repo at all — for a service wrapping a parsing library where output quality is the whole point, that's a gap.