{"id":28722347,"url":"https://github.com/docling-project/docling-serve","last_synced_at":"2026-02-23T18:20:26.796Z","repository":{"id":255748013,"uuid":"853207587","full_name":"docling-project/docling-serve","owner":"docling-project","description":"Running Docling as an API service","archived":false,"fork":false,"pushed_at":"2026-02-16T16:26:31.000Z","size":18988,"stargazers_count":1244,"open_issues_count":100,"forks_count":256,"subscribers_count":12,"default_branch":"main","last_synced_at":"2026-02-16T20:24:07.936Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/docling-project.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":"MAINTAINERS.md","copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-09-06T07:43:00.000Z","updated_at":"2026-02-16T14:42:54.000Z","dependencies_parsed_at":"2024-12-16T14:27:00.801Z","dependency_job_id":"a4d3c4f0-69d8-4181-a1c5-34f316f8e729","html_url":"https://github.com/docling-project/docling-serve","commit_stats":null,"previous_names":["ds4sd/docling-serve","docling-project/docling-serve"],"tags_count":40,"template":false,"template_full_name":null,"purl":"pkg:github/docling-project/docling-serve","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docling-project%2Fdocling-serve","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docling-project%2Fdocling-serve/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docling-project%2Fdocling-serve/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docling-project%2Fdocling-serve/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/docling-project","download_url":"https://codeload.github.com/docling-project/docling-serve/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docling-project%2Fdocling-serve/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29585441,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T13:56:48.962Z","status":"ssl_error","status_checked_at":"2026-02-18T13:54:34.145Z","response_time":162,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-15T08:09:01.386Z","updated_at":"2026-02-18T16:03:11.632Z","avatar_url":"https://github.com/docling-project.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/docling-project/docling-serve\"\u003e\n    \u003cimg loading=\"lazy\" alt=\"Docling\" src=\"https://github.com/docling-project/docling-serve/raw/main/docs/assets/docling-serve-pic.png\" width=\"30%\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n# Docling Serve\n\nRunning [Docling](https://github.com/docling-project/docling) as an API service.\n\n📚 [Docling Serve documentation](./docs/README.md)\n\n- Learning how to [configure the webserver](./docs/configuration.md)\n- Get to know all [runtime options](./docs/usage.md) of the API\n- Explore useful [deployment examples](./docs/deployment.md)\n- And more\n\n\u003e [!NOTE]\n\u003e **Migration to the `v1` API.** Docling Serve now has a stable v1 API. Read more on the [migration to v1](./docs/v1_migration.md).\n\n## Getting started\n\nInstall the `docling-serve` package and run the server.\n\n```bash\n# Using the python package\npip install \"docling-serve[ui]\"\ndocling-serve run --enable-ui\n\n# Using container images, e.g. with Podman\npodman run -p 5001:5001 -e DOCLING_SERVE_ENABLE_UI=1 quay.io/docling-project/docling-serve\n```\n\nThe server is available at\n\n- API \u003chttp://127.0.0.1:5001\u003e\n- API documentation \u003chttp://127.0.0.1:5001/docs\u003e\n- UI playground \u003chttp://127.0.0.1:5001/ui\u003e\n\n![API documentation](img/fastapi-ui.png)\n\nTry it out with a simple conversion:\n\n```bash\ncurl -X 'POST' \\\n  'http://localhost:5001/v1/convert/source' \\\n  -H 'accept: application/json' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\n    \"sources\": [{\"kind\": \"http\", \"url\": \"https://arxiv.org/pdf/2501.17887\"}]\n  }'\n```\n\n### Container Images\n\nThe following container images are available for running **Docling Serve** with different hardware and PyTorch configurations:\n\n#### 📦 Distributed Images\n\n| Image | Description | Architectures | Size |\n|-------|-------------|----------------|------|\n| [`ghcr.io/docling-project/docling-serve`](https://github.com/docling-project/docling-serve/pkgs/container/docling-serve) \u003cbr\u003e [`quay.io/docling-project/docling-serve`](https://quay.io/repository/docling-project/docling-serve) | Base image with all packages installed from the official PyPI index. | `linux/amd64`, `linux/arm64` | 4.4 GB (arm64) \u003cbr\u003e 8.7 GB (amd64) |\n| [`ghcr.io/docling-project/docling-serve-cpu`](https://github.com/docling-project/docling-serve/pkgs/container/docling-serve-cpu) \u003cbr\u003e [`quay.io/docling-project/docling-serve-cpu`](https://quay.io/repository/docling-project/docling-serve-cpu) | CPU-only variant, using `torch` from the PyTorch CPU index. | `linux/amd64`, `linux/arm64` | 4.4 GB |\n| [`ghcr.io/docling-project/docling-serve-cu128`](https://github.com/docling-project/docling-serve/pkgs/container/docling-serve-cu128) \u003cbr\u003e [`quay.io/docling-project/docling-serve-cu128`](https://quay.io/repository/docling-project/docling-serve-cu128) | CUDA 12.8 build with `torch` from the cu128 index. | `linux/amd64` | 11.4 GB |\n| [`ghcr.io/docling-project/docling-serve-cu130`](https://github.com/docling-project/docling-serve/pkgs/container/docling-serve-cu130) \u003cbr\u003e [`quay.io/docling-project/docling-serve-cu130`](https://quay.io/repository/docling-project/docling-serve-cu130) | CUDA 13.0 build with `torch` from the cu130 index. | `linux/amd64`, `linux/arm64` | TBD |\n\n\u003e [!IMPORTANT]\n\u003e **CUDA Image Tagging Policy**\n\u003e\n\u003e CUDA-specific images (`-cu128`, `-cu130`) follow PyTorch's CUDA version support lifecycle and are tagged differently from base images:\n\u003e\n\u003e - **Base images** (`docling-serve`, `docling-serve-cpu`): Tagged with `latest` and `main` for convenience\n\u003e - **CUDA images** (`docling-serve-cu*`): **Only tagged with explicit versions** (e.g., `1.12.0`) and `main`\n\u003e\n\u003e **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:\n\u003e\n\u003e ```bash\n\u003e # ✅ Recommended: Explicit version\n\u003e docker pull quay.io/docling-project/docling-serve-cu130:1.12.0\n\u003e\n\u003e # ❌ Not available for CUDA images\n\u003e docker pull quay.io/docling-project/docling-serve-cu130:latest\n\u003e ```\n\n#### 🚫 Not Distributed\n\nAn image for AMD ROCm 6.3 (`docling-serve-rocm`) is supported but **not published** due to its large size.\n\nTo build it locally:\n\n```bash\ngit clone --branch main git@github.com:docling-project/docling-serve.git\ncd docling-serve/\nmake docling-serve-rocm-image\n```\n\nFor deployment using Docker Compose, see [docs/deployment.md](docs/deployment.md).\n\nComing soon: `docling-serve-slim` images will reduce the size by skipping the model weights download.\n\n### Demonstration UI\n\nAn easy to use UI is available at the `/ui` endpoint.\n\n![Input controllers in the UI](img/ui-input.png)\n\n![Output visualization in the UI](img/ui-output.png)\n\n## Get help and support\n\nPlease feel free to connect with us using the [discussion section](https://github.com/docling-project/docling/discussions).\n\n## Contributing\n\nPlease read [Contributing to Docling Serve](https://github.com/docling-project/docling-serve/blob/main/CONTRIBUTING.md) for details.\n\n## References\n\nIf you use Docling in your projects, please consider citing the following:\n\n```bib\n@techreport{Docling,\n  author = {Docling Contributors},\n  month = {1},\n  title = {Docling: An Efficient Open-Source Toolkit for AI-driven Document Conversion},\n  url = {https://arxiv.org/abs/2501.17887},\n  eprint = {2501.17887},\n  doi = {10.48550/arXiv.2501.17887},\n  version = {2.0.0},\n  year = {2025}\n}\n```\n\n## License\n\nThe Docling Serve codebase is under MIT license.\n\n## IBM ❤️ Open Source AI\n\nDocling has been brought to you by IBM.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdocling-project%2Fdocling-serve","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdocling-project%2Fdocling-serve","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdocling-project%2Fdocling-serve/lists"}