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.17.0.tar.gz (65.0 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.17.0-py3-none-any.whl (56.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: docling_serve-1.17.0.tar.gz
  • Upload date:
  • Size: 65.0 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.17.0.tar.gz
Algorithm Hash digest
SHA256 bedd82f860a389bb3ced9be7e76d0023ccf3225389a1bfee3191388d44bb9de8
MD5 3b988d33e5bcf54281e57cb68eac5b39
BLAKE2b-256 510da59e7444849763231ec530f838ba6790c6450137a2fb4e4ec00a5873b244

See more details on using hashes here.

File details

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

File metadata

  • Download URL: docling_serve-1.17.0-py3-none-any.whl
  • Upload date:
  • Size: 56.7 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.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc4bf0cf5b6927bc42a0be548f0ed6027fcebdb5b36db18fd3694fe9039d163e
MD5 c7689ef6e8c70303e01a58d0dd11eaf3
BLAKE2b-256 30533df6dcecb1a37d02d997b911e75fa042562494e3d63e75526534c54713cb

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