Skip to main content

Running Docling as a service

Project description

Docling

Docling Serve

Running Docling as an API service.

📚 Docling Serve documentation

[!NOTE] Migration to the v1 API. Docling Serve now has a stable v1 API. Read more on the migration to v1.

Getting started

Install the docling-serve package and run the server.

# Using the python package
pip install "docling-serve[ui]"
docling-serve run --enable-ui

# Using container images, e.g. with Podman
podman run -p 5001:5001 -e DOCLING_SERVE_ENABLE_UI=1 quay.io/docling-project/docling-serve

The server is available at

API documentation

Try it out with a simple conversion:

curl -X 'POST' \
  'http://localhost:5001/v1/convert/source' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
    "sources": [{"kind": "http", "url": "https://arxiv.org/pdf/2501.17887"}]
  }'

Container Images

The following container images are available for running Docling Serve with different hardware and PyTorch configurations:

📦 Distributed Images

Image Description Architectures Size
ghcr.io/docling-project/docling-serve
quay.io/docling-project/docling-serve
Base image with all packages installed from the official PyPI index. linux/amd64, linux/arm64 4.4 GB (arm64)
8.7 GB (amd64)
ghcr.io/docling-project/docling-serve-cpu
quay.io/docling-project/docling-serve-cpu
CPU-only variant, using torch from the PyTorch CPU index. linux/amd64, linux/arm64 4.4 GB
ghcr.io/docling-project/docling-serve-cu128
quay.io/docling-project/docling-serve-cu128
CUDA 12.8 build with torch from the cu128 index. linux/amd64 11.4 GB
ghcr.io/docling-project/docling-serve-cu130
quay.io/docling-project/docling-serve-cu130
CUDA 13.0 build with torch from the cu130 index. linux/amd64, linux/arm64 TBD

[!IMPORTANT] CUDA Image Tagging Policy

CUDA-specific images (-cu128, -cu130) follow PyTorch's CUDA version support lifecycle and are tagged differently from base images:

  • Base images (docling-serve, docling-serve-cpu): Tagged with latest and main for convenience
  • CUDA images (docling-serve-cu*): Only tagged with explicit versions (e.g., 1.12.0) and main

Why? CUDA versions are deprecated over time as PyTorch adds support for newer CUDA releases. To avoid accidentally pulling deprecated CUDA versions, CUDA images intentionally exclude the latest tag. Always use explicit version tags like:

# ✅ Recommended: Explicit version
docker pull quay.io/docling-project/docling-serve-cu130:1.12.0

# ❌ Not available for CUDA images
docker pull quay.io/docling-project/docling-serve-cu130:latest

🚫 Not Distributed

An image for AMD ROCm 6.3 (docling-serve-rocm) is supported but not published due to its large size.

To build it locally:

git clone --branch main git@github.com:docling-project/docling-serve.git
cd docling-serve/
make docling-serve-rocm-image

For deployment using Docker Compose, see docs/deployment.md.

Coming soon: docling-serve-slim images will reduce the size by skipping the model weights download.

Demonstration UI

An easy to use UI is available at the /ui endpoint.

Input controllers in the UI

Output visualization in the UI

Get help and support

Please feel free to connect with us using the discussion section.

Contributing

Please read Contributing to Docling Serve for details.

References

If you use Docling in your projects, please consider citing the following:

@techreport{Docling,
  author = {Docling Contributors},
  month = {1},
  title = {Docling: An Efficient Open-Source Toolkit for AI-driven Document Conversion},
  url = {https://arxiv.org/abs/2501.17887},
  eprint = {2501.17887},
  doi = {10.48550/arXiv.2501.17887},
  version = {2.0.0},
  year = {2025}
}

License

The Docling Serve codebase is under MIT license.

IBM ❤️ Open Source AI

Docling has been brought to you by IBM.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

docling_serve-1.15.1.tar.gz (62.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

docling_serve-1.15.1-py3-none-any.whl (51.5 kB view details)

Uploaded Python 3

File details

Details for the file docling_serve-1.15.1.tar.gz.

File metadata

  • Download URL: docling_serve-1.15.1.tar.gz
  • Upload date:
  • Size: 62.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for docling_serve-1.15.1.tar.gz
Algorithm Hash digest
SHA256 779f525fa7d69127726ac19030e7c4ec66d63181a8da03cbe2c11c42a35a9806
MD5 cba241c5b6b6b6a67bc7554be810eaf3
BLAKE2b-256 7b7e05c855455f218be0e0b90844fe2dc16aefdd0c76156c717d25f57abb8399

See more details on using hashes here.

File details

Details for the file docling_serve-1.15.1-py3-none-any.whl.

File metadata

  • Download URL: docling_serve-1.15.1-py3-none-any.whl
  • Upload date:
  • Size: 51.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for docling_serve-1.15.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9aabbbec1ee0c1f4960f75b828bdbb7786cba1e307c87663a1b4e0e8218a3b18
MD5 25ce8daae9a9934fd89fa56589124047
BLAKE2b-256 995b995ed51369c36d6883636c3bcfce5540705068637954980a264d5fa82f46

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page