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.16.1.tar.gz (63.3 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.16.1-py3-none-any.whl (56.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for docling_serve-1.16.1.tar.gz
Algorithm Hash digest
SHA256 3cf1d5d6cdc47908193c7ac0ebbf8fcf24dd3e64f343def6421bf40d48e8f5d5
MD5 0922d07aff8fb36c8110afb22b2ea4a2
BLAKE2b-256 dcad4e65756b1ad9abd78619b997dfc18786cb845aab1e132e1c4961119eb010

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for docling_serve-1.16.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3637e279592111e4538fd51f46ae5634f4337a501f1445fccacf7ee784b59c9a
MD5 30f4c244c5623192856f445cd846ee85
BLAKE2b-256 01fd8a152da2ceba92a2861543269dcf446ec64fa86997b9e240e97e86dd1f53

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