Pick your install command#
Choose your operating system, installer, hardware and the features you need. The commands update live and are the same ones we ran on a clean machine.
Requirements at a glance#
| Item | Docling 2.148.0 | Where we read it |
|---|---|---|
| Python | 3.10, 3.11, 3.12, 3.13, 3.14 (>=3.10,<4.0) | PyPI requires_python and classifiers |
| Operating systems | macOS, Linux, Windows | PyPI classifiers, README |
| CPU architectures | x86_64 and arm64 | README (“both x86_64 and arm64”) |
| Accelerators | CPU, NVIDIA CUDA, Apple MPS, Intel XPU | --device choices: auto, cpu, cuda, mps, xpu |
| Disk | ≈1.8 GB environment + ≈0.5 GB models (CPU PyTorch) | Measured by us with du -sh |
| Python 3.9 | Not supported since 2.70.0 | README |
Step by step with pip#
- Create a virtual environment
python3 -m venv .venv source .venv/bin/activate # Windows: .venv\Scripts\activate python -m pip install -U pip - Linux without a GPU? Install CPU-only PyTorch first
The default PyTorch wheel on PyPI for Linux depends on NVIDIA's CUDA libraries. Installing from PyTorch's CPU index first means pip will not fetch them later.
pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu - Install Docling
pip install docling # or pin it, which we recommend for production: pip install "docling==2.148.0" - Verify
docling --versionDocling version: 2.148.0 Docling Core version: 2.106.0 Docling IBM Models version: 4.0.4 Docling Parse version: 7.24.2 Python: cpython-313 (3.13.18) Platform: Linux-6.18.44-fc-v242-x86_64-with-glibc2.39 - Run a first conversion
docling convert https://arxiv.org/pdf/2408.09869 --to md --no-ocrThe first run downloads the layout model (
docling-project/docling-layout-heron) and TableFormer (docling-project/docling-models) from Hugging Face — 506 MB in our cache.
Why the CPU-only step matters#
We read the wheel sizes PyTorch 2.15.0 pulls on Linux x86_64 for Python 3.13. The default build brings cuDNN, cuBLAS, NCCL, Triton and the rest of the CUDA toolkit, even on a server without a GPU.
File sizes read from PyPI and download.pytorch.org metadata by docling.org on 6 Nov 2026.
Show data table
| GB | |
|---|---|
| CPU build (download.pytorch.org/whl/cpu) | 0.21 GB |
| Default PyPI build (CUDA 13 dependencies) | 2.98 GB |
Measured with du by docling.org on 6 Nov 2026.
Show data table
| GB | |
|---|---|
| docling-slim only (no extras) | 0.25 GB |
| pip install docling + CPU PyTorch | 1.79 GB |
| Default models (first run) | 0.51 GB |
Installing with uv#
uv resolves Docling's dependencies much faster than pip and can choose the PyTorch build for you with --torch-backend. We confirmed with uv 0.11.32 that --torch-backend cpu resolves torch==2.15.0+cpu.
uv init my-app && cd my-app
uv add docling
uv run docling --versionuv venv --python 3.12
source .venv/bin/activate
uv pip install --torch-backend cpu docling # CPU-only PyTorch
# uv pip install --torch-backend auto docling # let uv detect your CUDA driverdocling vs docling-slim#
Since 29 April 2026 the code lives in docling-slim, a package that installs only the core data model by default and lets you opt into features. docling is now a thin wrapper that installs docling-slim[standard].
| Install | What you get | Use it when |
|---|---|---|
pip install docling | CLI, PDF (docling-parse, pypdfium2), Word, PowerPoint, Excel, HTML, Markdown, email, layout + TableFormer models, RapidOCR, chunking, PyTorch | You convert documents on this machine. |
pip install "docling-slim[service-client]" | The docling convert-remote command and the DoclingDocument model — 258 MB environment in our test, no PyTorch | Conversion runs on a docling-serve server. |
pip install docling-slim | docling-core and the data model only | You only load, inspect or serialise DoclingDocument JSON. |
Optional extras#
These are all the extras the docling package declares in 2.148.0, and the packages each one adds.
| Extra | Adds | For |
|---|---|---|
docling[vlm] | transformers, accelerate, timm, peft, qwen-vl-utils, open-clip-torch; mlx-vlm on Apple Silicon | VLM pipeline (Granite-Docling and other presets), picture descriptions |
docling[asr] | openai-whisper, whisper-s2t-reborn, numba; mlx-whisper on Apple Silicon | Audio transcription (also needs FFmpeg) |
docling[easyocr] | easyocr, scikit-image | EasyOCR engine |
docling[tesserocr] | tesserocr, pandas | Tesseract via its C API (needs system Tesseract) |
docling[rapidocr] | rapidocr, onnxruntime | RapidOCR on its default onnxruntime backend |
docling[onnxruntime] | onnxruntime (onnxruntime-gpu where available) | ONNX-based models |
docling[ocrmac] | ocrmac | Apple Vision OCR on macOS |
docling[htmlrender] | playwright | Rendering HTML pages before conversion |
docling[xbrl] | arelle-release | XBRL financial reports |
docling[remote-serving] | tritonclient[grpc] | Remote model serving (KServe v2 / Triton) |
Video files need docling-slim[format-video], which is not exposed as a docling extra. Combine extras in one command: pip install "docling[vlm,easyocr]".
GPU and Apple Silicon#
- NVIDIA (Linux, Windows): run
nvidia-smiand read the CUDA version it reports — that is the newest CUDA your driver supports. Install PyTorch from a matching index (torch 2.15.0 is published oncu132andcu134;cu130andcu126stop at 2.14.1, which Docling also runs on), then install Docling. Check withpython -c "import torch; print(torch.cuda.is_available())". - Apple Silicon: a normal install already includes MPS support. Docling picks the device automatically; force it with
--device mps. - Intel GPUs:
--device xpuis accepted; you need a PyTorch build with XPU support.
See the performance guide for what a GPU changes and what it does not.
Offline and air-gapped machines#
Docling downloads models from Hugging Face on first use. To run without internet, fetch them in advance on a connected machine:
pip download "docling==2.148.0" -d wheels/
docling-tools models download -o models/
# default set: layout, TableFormer, code/formula, picture classifier, RapidOCR
# add more by name, e.g.: docling-tools models download granitedocling easyocr -o models/pip install --no-index --find-links wheels/ docling
export DOCLING_ARTIFACTS_PATH=/path/to/models
docling convert report.pdf --to md
# or per command: docling convert report.pdf --artifacts-path /path/to/modelsWithout -o, docling-tools models download writes to ~/.cache/docling/models. The DOCLING_ARTIFACTS_PATH variable is read by Docling's settings and used by every pipeline when no explicit path is passed.
Upgrading and pinning#
Docling released 238 versions between July 2024 and November 2026, and flags do change: --force-ocr and --psm are deprecated in 2.148.0 in favour of --ocr-mode full_page and --ocr-option psm=N. Pin the version in production and upgrade on purpose:
pip install -U docling
docling --version
pip freeze | grep -i docling # record exact versionsNext steps by platform#
Windows
Python from python.org, PATH problems, PowerShell activation and CUDA.
Windows guide →macOS
Apple Silicon, MPS acceleration and the built-in Vision OCR engine.
macOS guide →Linux
System libraries, headless servers, CPU-only images and CUDA.
Linux guide →Docker
The official docling-serve images, their sizes and GPU variants.
Docker guide →Frequently asked questions
What is the command to install Docling?
Run pip install docling inside a Python 3.10–3.14 virtual environment. With uv, run uv add docling in a uv project or uv pip install docling in a virtual environment. Check the install with docling --version.
How big is a Docling install?
In our test on Linux, a fresh virtual environment with docling and the CPU build of PyTorch took 1.8 GB on disk, and the default models added 0.5 GB on first run. Using the default PyPI PyTorch on Linux downloads about 3 GB of extra CUDA libraries.
What is the difference between docling and docling-slim?
Since April 2026 the code ships in docling-slim, which installs only the core data model by default and lets you pick features as extras. The docling package is a thin wrapper that installs docling-slim[standard] — the CLI, PDF and Office backends, the layout and table models, RapidOCR and chunking. In our tests with docling 2.148.0, the CLI and all PDF conversion needed PyTorch; since 2.144.0 the Python API can convert Office files with a slim, PyTorch-free install such as docling-slim[format-docx,format-pptx,convert-core]. docling-slim[service-client] is the lightweight option when a docling-serve server does the conversion.
Can I install Docling without internet access?
Yes, if you prepare a machine that has access first: download the wheels with pip download, download the models with docling-tools models download, copy both across, then install from the local wheel folder and point --artifacts-path or DOCLING_ARTIFACTS_PATH at the models folder.
How do I upgrade Docling?
Run pip install -U docling (or uv pip install -U docling) and confirm with docling --version. Docling releases often, so pin a version in production (for example docling==2.148.0) and upgrade deliberately.
Sources
- docling 2.148.0 on PyPI (requires-python, extras)
- docling-slim 2.148.0 on PyPI
- Official installation guide
- PyTorch CPU wheel index
- uv documentation: PyTorch integration (--torch-backend)