From e44b6900923a9ed1a343e76dc883ed16b75793d7 Mon Sep 17 00:00:00 2001 From: "docling-java-ops[bot]" <245010719+docling-java-ops[bot]@users.noreply.github.com> Date: Thu, 11 Dec 2025 14:37:05 +0000 Subject: [PATCH] docs: Build and publish docs (from Publish docs run # 220) Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- 0.3.1/core/index.html | 1 + 0.3.1/docling-serve/serve-api/index.html | 1 + 0.3.1/docling-serve/serve-client/index.html | 1 + 0.3.1/search/search_index.json | 2 +- 0.3.1/testcontainers/index.html | 1 + 0.3.1/whats-new/index.html | 58 ++++++++++++++++++++- dev/core/index.html | 1 + dev/docling-serve/serve-api/index.html | 1 + dev/docling-serve/serve-client/index.html | 1 + dev/search/search_index.json | 2 +- dev/testcontainers/index.html | 1 + dev/whats-new/index.html | 58 ++++++++++++++++++++- 12 files changed, 122 insertions(+), 6 deletions(-) diff --git a/0.3.1/core/index.html b/0.3.1/core/index.html index c93331d3..e167987e 100644 --- a/0.3.1/core/index.html +++ b/0.3.1/core/index.html @@ -819,6 +819,7 @@

Docling Core#

+

docling-core version

The docling-core module provides the core data types used by Docling for document representation. It defines the DoclingDocument model, which captures the structure and content of documents across various formats, along with utilities for working with these types.

The base Java version is 17. This module has no external dependencies, making it lightweight and easy to integrate into your projects. It represents the foundational building block for the other Docling Java modules.

When to use this module#

diff --git a/0.3.1/docling-serve/serve-api/index.html b/0.3.1/docling-serve/serve-api/index.html index 9b636c99..a3949a7d 100644 --- a/0.3.1/docling-serve/serve-api/index.html +++ b/0.3.1/docling-serve/serve-api/index.html @@ -1373,6 +1373,7 @@

Docling Serve API#

+

docling-serve-api version

The docling-serve-api module defines the core, framework-agnostic Java API used to communicate with a Docling Serve backend. It provides the request/response model and the main DoclingServeApi interface. You can use any implementation of this interface to talk to a running diff --git a/0.3.1/docling-serve/serve-client/index.html b/0.3.1/docling-serve/serve-client/index.html index 303968e1..b666908f 100644 --- a/0.3.1/docling-serve/serve-client/index.html +++ b/0.3.1/docling-serve/serve-client/index.html @@ -1391,6 +1391,7 @@

Docling Serve Client#

+

docling-serve-client version

The docling-serve-client module is the reference HTTP client for talking to a Docling Serve backend.

It implements the framework‑agnostic DoclingServeApi interface from diff --git a/0.3.1/search/search_index.json b/0.3.1/search/search_index.json index baff3680..162b5e33 100644 --- a/0.3.1/search/search_index.json +++ b/0.3.1/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Docling Java","text":"

Docling Java is the official Java client and tooling for Docling \u2014 a suite that simplifies document processing and parsing across diverse formats (with advanced PDF understanding) and integrates seamlessly with GenAI frameworks.

"},{"location":"#what-is-docling","title":"What is Docling?","text":"

Docling extracts structured information from documents. It understands page layout, reading order, tables, code, formulas, and images, and exports results into convenient formats like Markdown, HTML, and JSON.

"},{"location":"#key-features","title":"Key features","text":""},{"location":"#project-layout-and-artifacts","title":"Project layout and artifacts","text":"

This repository provides a set of artifacts you can mix and match depending on your needs:

"},{"location":"#links","title":"Links","text":""},{"location":"#license-and-contributions","title":"License and contributions","text":"

The codebase is released under the MIT License. Contributions are welcome \u2014 please see CONTRIBUTING.md for guidelines and CODE_OF_CONDUCT.md for community standards.

"},{"location":"core/","title":"Docling Core","text":"

The docling-core module provides the core data types used by Docling for document representation. It defines the DoclingDocument model, which captures the structure and content of documents across various formats, along with utilities for working with these types.

The base Java version is 17. This module has no external dependencies, making it lightweight and easy to integrate into your projects. It represents the foundational building block for the other Docling Java modules.

"},{"location":"core/#when-to-use-this-module","title":"When to use this module","text":"

You typically won't need to use this module directly, as it is consumed by higher-level modules like docling-serve-api and docling-serve-client.

"},{"location":"core/#installation","title":"Installation","text":"

Add the dependency to your project.

GradleMaven
dependencies {\n  implementation(\"ai.docling:docling-core:0.3.1\")\n}\n
<dependency>\n  <groupId>ai.docling</groupId>\n  <artifactId>docling-core</artifactId>\n  <version>0.3.1</version>\n</dependency>\n
"},{"location":"core/#core-concepts","title":"Core concepts","text":"

The DoclingDocument class is the primary representation of a document in Docling. It can be retrieved as the result of a document conversion process against a Docling Serve backend via the docling-serve-api or docling-serve-client modules.

To learn more about the DoclingDocument model and related types, refer to the Docling documentation: Docling Document.

"},{"location":"getting-started/","title":"Getting Started","text":"

Use the DoclingServeApi to convert a document by pointing at a running Docling Serve instance.

import ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory;\n\nDoclingServeApi doclingServeApi = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"<location of docling serve instance>\")\n    .build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(\n        HttpSource.builder()\n            .url(URI.create(\"https://arxiv.org/pdf/2408.09869\"))\n            .build()\n    )\n    .build();\n\nConvertDocumentResponse response = doclingServeApi.convertSource(request);\nSystem.out.println(response.getDocument().getMarkdownContent());\n

For more examples and options, explore the modules listed above and the repository README.

"},{"location":"getting-started/#links","title":"Links","text":""},{"location":"testcontainers/","title":"Testcontainers","text":"

The docling-testcontainers module provides a ready-to-use Testcontainers integration for running a Docling Serve instance in your tests. It wraps the official container image and exposes a simple Java API so you can spin up Docling as part of your JUnit test lifecycle and exercise client code against a real server.

If you need to talk to a running server from your application code, pair this module with the reference HTTP client: - docling-serve-client

"},{"location":"testcontainers/#when-to-use-this-module","title":"When to use this module","text":""},{"location":"testcontainers/#installation","title":"Installation","text":"

Add the Testcontainers module to your test dependencies.

GradleMaven
dependencies {\n    testImplementation(\"ai.docling:docling-testcontainers:0.3.1\")\n}\n
<dependencies>\n  <dependency>\n    <groupId>ai.docling</groupId>\n    <artifactId>docling-testcontainers</artifactId>\n    <version>0.3.1</version>\n    <scope>test</scope>\n  </dependency>\n</dependencies>\n
"},{"location":"testcontainers/#quick-start","title":"Quick start","text":"

Spin up Docling Serve with JUnit 5 and run a simple health check using the reference client.

import static org.assertj.core.api.Assertions.assertThat;\n\nimport java.net.URI;\n\nimport org.junit.jupiter.api.Test;\nimport org.testcontainers.junit.jupiter.Container;\nimport org.testcontainers.junit.jupiter.Testcontainers;\n\nimport ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.health.HealthCheckResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory;\nimport ai.docling.testcontainers.serve.DoclingServeContainer;\nimport ai.docling.testcontainers.serve.config.DoclingServeContainerConfig;\n\n@Testcontainers\nclass DoclingContainerSmokeTest {\n  @Container\n  private final DoclingServeContainer docling = new DoclingServeContainer(\n      DoclingServeContainerConfig.builder()\n          .image(DoclingServeContainerConfig.DOCLING_IMAGE)\n          .enableUi(true)\n          .build()\n  );\n\n  @Test\n  void health_is_ok() {\n    String base = \"http://\" + docling.getHost() + \":\" + docling.getPort();\n\n    DoclingServeApi api = DoclingServeClientBuilderFactory\n        .newBuilder()\n        .baseUrl(base)\n        .build();\n\n    HealthCheckResponse health = api.health();\n    assertThat(health.getStatus()).isNotBlank();\n  }\n}\n
Note "},{"location":"testcontainers/#using-it-with-the-reference-client-for-conversions","title":"Using it with the reference client for conversions","text":"

Once the container is up, you can call the Convert endpoint through docling-serve-client:

import java.net.URI;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.options.ConvertDocumentOptions;\nimport ai.docling.serve.api.convert.request.options.OutputFormat;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.request.target.InBodyTarget;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\n\nString baseUrl = \"http://\" + docling.getHost() + \":\" + docling.getPort();\nDoclingServeApi api = DoclingServeClientBuilderFactory.newBuilder().baseUrl(baseUrl).build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(HttpSource.builder().url(URI.create(\"https://arxiv.org/pdf/2408.09869\")).build())\n    .options(ConvertDocumentOptions.builder()\n        .toFormat(OutputFormat.MARKDOWN)\n        .includeImages(true)\n        .build())\n    .target(InBodyTarget.builder().build())\n    .build();\n\nConvertDocumentResponse response = api.convertSource(request);\n// Assert on response.getDocument().getMarkdownContent(), errors, timings, etc.\n
"},{"location":"testcontainers/#configuration","title":"Configuration","text":"

The container is configured via DoclingServeContainerConfig. Use its fluent builder to customize:

import java.time.Duration;\nimport java.util.Map;\nimport ai.docling.testcontainers.serve.config.DoclingServeContainerConfig;\nimport ai.docling.testcontainers.serve.DoclingServeContainer;\n\nDoclingServeContainerConfig config = DoclingServeContainerConfig.builder()\n    // Override the image if you need a different tag or registry\n    .image(\"ghcr.io/docling-project/docling-serve:v1.9.0\")\n    // Enable the optional web UI served by Docling Serve\n    .enableUi(true)\n    // Pass environment variables to fine\u2011tune behavior\n    .containerEnv(Map.of(\n        // Example: configure OCR languages or pipeline hints if supported by the server\n        \"DOCLING_OCR_LANG\", \"eng,deu\"\n    ))\n    // Increase startup timeout if your CI is slow to pull images\n    .startupTimeout(Duration.ofMinutes(2))\n    .build();\n\nDoclingServeContainer container = new DoclingServeContainer(config);\n
"},{"location":"testcontainers/#defaults","title":"Defaults","text":""},{"location":"testcontainers/#tips-and-caveats","title":"Tips and caveats","text":""},{"location":"testcontainers/#related-modules","title":"Related modules","text":""},{"location":"testing/","title":"Testing","text":"

The docling-testing area contains tooling used to validate Docling Serve images and to help you test your integration. The main utility today is a small Quarkus/Picocli command that automatically verifies multiple Docling Serve versions by:

If you\u2019re looking to test your application code against a running server during unit/integration tests, consider the Testcontainers module instead: - docling-testcontainers

"},{"location":"testing/#when-to-use-docling-testing","title":"When to use docling-testing","text":""},{"location":"testing/#whats-included","title":"What\u2019s included","text":"

Submodule: docling-testing/docling-version-tests

"},{"location":"testing/#prerequisites","title":"Prerequisites","text":""},{"location":"testing/#run-the-version-tests-locally","title":"Run the version tests locally","text":"

You can run the CLI directly from the repository using the Quarkus Gradle plugin.

Option A \u2014 Dev mode (quick iteration):

./gradlew :docling-version-tests:quarkusDev\n

Option B \u2014 Build a runnable JAR and execute it:

# Build the application\n./gradlew :docling-version-tests:build\n\n# Run it\njava -jar docling-testing/docling-version-tests/build/quarkus-app/quarkus-run.jar\n

Notes: - The CLI will spin up Docker containers; ensure your user can access the Docker daemon. - By default it fetches all version tags for the given image and tests them serially (configurable with --parallelism).

"},{"location":"testing/#cli-options","title":"CLI options","text":"

These map to the Picocli command docling-serve-version-tests.

Examples:

# Test the latest published versions from GHCR, one at a time\n./gradlew :docling-version-tests:quarkusDev\n\n# Test a specific set of tags in parallel\n./gradlew :docling-version-tests:quarkusDev \\\n  -p 3 \\\n  -t v1.8.0 \\\n  -t v1.7.3 \\\n  -t v1.6.5\n\n# Save artifacts under a custom directory and disable GitHub issue creation\n./gradlew :docling-version-tests:quarkusDev \\\n  -o ./my-results \\\n  --no-create-github-issue\n
"},{"location":"testing/#what-the-tool-verifies","title":"What the tool verifies","text":"

For each tag under test, the tool:

  1. Starts ghcr.io/<registry>/<image>:<tag> with Testcontainers (default internal port 5001).
  2. Checks /health using DoclingServeApi.health().
  3. Performs a conversion with DoclingServeApi.convertSource() on a simple HTTP source.
  4. Asserts that the response contains no errors and includes expected fields (filename, Markdown, text, JSON content).
  5. Captures server logs and aggregates pass/fail status per tag.

Under the hood, this is implemented in: - ai.docling.client.tester.service.TagsTester (spins up the container, runs checks) - ai.docling.client.tester.VersionTestsCommand (parses options, parallelizes work, aggregates results)

"},{"location":"testing/#results-and-artifacts","title":"Results and artifacts","text":"

At the end of a run, you\u2019ll find a timestamped directory under the output path, for example:

results/\n  results-20250101T121314Z/\n    summary.md           # Markdown summary of tags tested and outcomes\n    <tag>-server.log     # Logs captured from the Docling Serve container for each tag\n    ...\n

Depending on your configuration, a GitHub issue may be created or updated to include the summary table and failure details.

"},{"location":"testing/#ci-tips","title":"CI tips","text":""},{"location":"testing/#related-modules","title":"Related modules","text":""},{"location":"whats-new/","title":"What's New in Docling Java 0.3.1","text":"

Docling Java 0.3.1 provides a number of new features, enhancements, and bug fixes. This page includes the highlights of the release, but you can also check out the full release notes for more details about each new feature and bug fix.

"},{"location":"whats-new/#docling-serve","title":"Docling Serve","text":""},{"location":"docling-serve/serve-api/","title":"Docling Serve API","text":"

The docling-serve-api module defines the core, framework-agnostic Java API used to communicate with a Docling Serve backend. It provides the request/response model and the main DoclingServeApi interface. You can use any implementation of this interface to talk to a running Docling Serve instance.

The base Java version is 17. This module has no other required dependencies, although it is compatible with both Jackson 2.x and 3.x.

If you need a ready-to-use HTTP implementation, see the reference client: - Docling Serve Client: docling-serve-client

"},{"location":"docling-serve/serve-api/#when-to-use-this-module","title":"When to use this module","text":""},{"location":"docling-serve/serve-api/#installation","title":"Installation","text":"

Add the API dependency to your project.

GradleMaven
dependencies {\n  implementation(\"ai.docling:docling-serve-api:0.3.1\")\n}\n
<dependency>\n  <groupId>ai.docling</groupId>\n  <artifactId>docling-serve-api</artifactId>\n  <version>0.3.1</version>\n</dependency>\n

Note: The API module does not perform network I/O by itself. To call a live service, combine it with an implementation such as docling-serve-client.

"},{"location":"docling-serve/serve-api/#quick-start","title":"Quick start","text":"

Below is a minimal example using the reference client to create an implementation of DoclingServeApi, build a conversion request, and retrieve Markdown output. The request/response types all come from docling-serve-api.

import java.net.URI;\nimport ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.options.ConvertDocumentOptions;\nimport ai.docling.serve.api.convert.request.options.OutputFormat;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.request.target.InBodyTarget;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory; // from docling-serve-client\n\nDoclingServeApi api = DoclingServeClientBuilderFactory\n    .newBuilder()\n    .baseUrl(\"http://localhost:8000\") // your Docling Serve URL\n    .build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(HttpSource.builder().url(URI.create(\"https://arxiv.org/pdf/2408.09869\"))\n        .build())\n    .options(ConvertDocumentOptions.builder()\n        .toFormat(OutputFormat.MARKDOWN) // request Markdown output\n        .includeImages(true)\n        .build())\n    .target(InBodyTarget.builder().build()) // get results in the HTTP response body\n    .build();\n\nConvertDocumentResponse response = api.convertSource(request);\nSystem.out.println(response.getDocument().getMarkdownContent());\n
"},{"location":"docling-serve/serve-api/#core-concepts","title":"Core concepts","text":""},{"location":"docling-serve/serve-api/#the-doclingserveapi-interface","title":"The DoclingServeApi interface","text":"

Defined in ai.docling.serve.api.DoclingServeApi, this interface exposes two primary operations:

Any HTTP or non-HTTP implementation can implement this interface. The reference implementation is provided by the docling-serve-client module.

"},{"location":"docling-serve/serve-api/#requests-convertdocumentrequest","title":"Requests: ConvertDocumentRequest","text":"

Create a request via the builder:

ConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(/* one of the supported sources */)\n    .options(/* conversion options */)\n    .target(/* optional delivery target */)\n    .build();\n

Supported sources (ai.docling.serve.api.convert.request.source): - HttpSource \u2014 fetch content from a URL (optional custom headers) - FileSource \u2014 embed content as Base64 with a filename

Targets (ai.docling.serve.api.convert.request.target): - InBodyTarget \u2014 receive results directly in the API response body (default use case) - PutTarget \u2014 the service uploads converted content via HTTP PUT to a specified URI - ZipTarget \u2014 receive a zipped result

Options (ai.docling.serve.api.convert.request.options.ConvertDocumentOptions) let you control: - Input/output formats (e.g., fromFormats, toFormats) - OCR (e.g., doOcr, forceOcr, ocrEngine, ocrLang) - PDF processing (e.g., pdfBackend) - Tables (e.g., tableMode, tableCellMatching) - Pipelines and page ranges (e.g., pipeline, pageRange) - Timeouts and error behavior (e.g., documentTimeout, abortOnError) - Enrichments (code/formula/picture), image handling, scaling, page break placeholder - VLM pipeline hints

Explore the options package for the full list of knobs you can turn.

"},{"location":"docling-serve/serve-api/#responses-convertdocumentresponse-and-documentresponse","title":"Responses: ConvertDocumentResponse and DocumentResponse","text":""},{"location":"docling-serve/serve-api/#health-checks","title":"Health checks","text":"

You can ping the service to check readiness and basic status:

import ai.docling.serve.api.health.HealthCheckResponse;\n\nHealthCheckResponse health = api.health();\nSystem.out.println(\"Service status: \" + health.getStatus());\n
"},{"location":"docling-serve/serve-api/#error-handling","title":"Error handling","text":"

Conversion may succeed partially (e.g., some pages) while returning warnings or errors. Always inspect ConvertDocumentResponse#getErrors() and consider status:

ConvertDocumentResponse response = api.convertSource(request);\n\nif (response.getErrors() != null && !response.getErrors().isEmpty()) {\n  response.getErrors().forEach(err ->\n      System.err.println(\"Component: \" + err.getComponentType() + \n          \", Module: \" + err.getModuleName() + \n          \", Message: \" + err.getErrorMessage()));\n}\n\nif (response.getDocument() != null && response.getDocument().getMarkdownContent() != null) {\n  // Use the output\n}\n

The exact transport-level exceptions (e.g., timeouts, connectivity) depend on the client implementation you use. The reference client throws standard Java exceptions for HTTP and I/O failures.

"},{"location":"docling-serve/serve-api/#logging-and-builders","title":"Logging and builders","text":"

DoclingServeApi exposes a toBuilder() method so implementations can be duplicated and tweaked. Most client builders, including the reference client, also expose logRequests() and logResponses() for simple diagnostics:

DoclingServeApi newApi = api.toBuilder()\n    .logRequests()\n    .logResponses()\n    .build();\n
"},{"location":"docling-serve/serve-api/#version-compatibility","title":"Version compatibility","text":"

The API is tested against all published versions of Docling Serve each week. Below are the latest run results:

"},{"location":"docling-serve/serve-api/#results-for-ghcriodocling-projectdocling-serve-as-of-2025-12-02t010531617877845z","title":"Results for ghcr.io/docling-project/docling-serve as of 2025-12-02T01:05:31.617877845Z","text":"

Here are the results:

Tag Result Details v1.0.1 \u2705 SUCCESS Click for run details v1.1.0 \u2705 SUCCESS Click for run details v1.0.0 \u2705 SUCCESS Click for run details v1.2.1 \u2705 SUCCESS Click for run details v1.2.2 \u2705 SUCCESS Click for run details v1.2.0 \u2705 SUCCESS Click for run details v1.3.1 \u2705 SUCCESS Click for run details v1.3.0 \u2705 SUCCESS Click for run details v1.4.0 \u2705 SUCCESS Click for run details v1.5.0 \u2705 SUCCESS Click for run details v1.4.1 \u2705 SUCCESS Click for run details v1.5.1 \u2705 SUCCESS Click for run details v1.6.0 \u2705 SUCCESS Click for run details v1.7.0 \u2705 SUCCESS Click for run details v1.7.1 \u2705 SUCCESS Click for run details v1.7.2 \u2705 SUCCESS Click for run details v1.8.0 \u2705 SUCCESS Click for run details v1.9.0 \u2705 SUCCESS Click for run details"},{"location":"docling-serve/serve-api/#details","title":"Details","text":""},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev101","title":"ghcr.io/docling-project/docling-serve:v1.0.1","text":"Click to expand ###### Message Click to collapse
Tag v1.0.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:59886 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:59890 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:59890 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev110","title":"ghcr.io/docling-project/docling-serve:v1.1.0","text":"Click to expand ###### Message Click to collapse
Tag v1.1.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:40006 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:40014 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:40014 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev100","title":"ghcr.io/docling-project/docling-serve:v1.0.0","text":"Click to expand ###### Message Click to collapse
Tag v1.0.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:38522 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:38534 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:38534 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev121","title":"ghcr.io/docling-project/docling-serve:v1.2.1","text":"Click to expand ###### Message Click to collapse
Tag v1.2.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49312 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49328 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49328 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev122","title":"ghcr.io/docling-project/docling-serve:v1.2.2","text":"Click to expand ###### Message Click to collapse
Tag v1.2.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50440 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50452 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50452 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev120","title":"ghcr.io/docling-project/docling-serve:v1.2.0","text":"Click to expand ###### Message Click to collapse
Tag v1.2.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49238 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49250 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49250 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev131","title":"ghcr.io/docling-project/docling-serve:v1.3.1","text":"Click to expand ###### Message Click to collapse
Tag v1.3.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49294 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49304 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49304 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev130","title":"ghcr.io/docling-project/docling-serve:v1.3.0","text":"Click to expand ###### Message Click to collapse
Tag v1.3.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60976 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60982 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60982 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev140","title":"ghcr.io/docling-project/docling-serve:v1.4.0","text":"Click to expand ###### Message Click to collapse
Tag v1.4.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:39904 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:39920 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:39920 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev150","title":"ghcr.io/docling-project/docling-serve:v1.5.0","text":"Click to expand ###### Message Click to collapse
Tag v1.5.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:34606 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:34620 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:34620 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev141","title":"ghcr.io/docling-project/docling-serve:v1.4.1","text":"Click to expand ###### Message Click to collapse
Tag v1.4.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:46264 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:46272 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:46272 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev151","title":"ghcr.io/docling-project/docling-serve:v1.5.1","text":"Click to expand ###### Message Click to collapse
Tag v1.5.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:43484 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:43496 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:43496 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev160","title":"ghcr.io/docling-project/docling-serve:v1.6.0","text":"Click to expand ###### Message Click to collapse
Tag v1.6.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50858 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50872 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50872 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev170","title":"ghcr.io/docling-project/docling-serve:v1.7.0","text":"Click to expand ###### Message Click to collapse
Tag v1.7.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:54056 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:54060 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:54060 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev171","title":"ghcr.io/docling-project/docling-serve:v1.7.1","text":"Click to expand ###### Message Click to collapse
Tag v1.7.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:01:17,311 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,314 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:33120 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:33136 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:33136 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev172","title":"ghcr.io/docling-project/docling-serve:v1.7.2","text":"Click to expand ###### Message Click to collapse
Tag v1.7.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:32,060 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,064 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:32,291 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,292 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60552 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60562 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60562 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev180","title":"ghcr.io/docling-project/docling-serve:v1.8.0","text":"Click to expand ###### Message Click to collapse
Tag v1.8.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:37,497 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,499 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:37,712 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,713 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:51968 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:51980 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:51980 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev190","title":"ghcr.io/docling-project/docling-serve:v1.9.0","text":"Click to expand ###### Message Click to collapse
Tag v1.9.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:05:21,583 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,584 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49084 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49094 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49094 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/","title":"Docling Serve Client","text":"

The docling-serve-client module is the reference HTTP client for talking to a Docling Serve backend.

It implements the framework\u2011agnostic DoclingServeApi interface from docling-serve-api using Java's built\u2011in HttpClient for transport and Jackson for JSON (auto\u2011detecting Jackson 2 or 3 at runtime).

If you only need the request/response model (without HTTP), use the API module: - docling-serve-api

"},{"location":"docling-serve/serve-client/#when-to-use-this-module","title":"When to use this module","text":""},{"location":"docling-serve/serve-client/#installation","title":"Installation","text":"

Add the client dependency to your project.

GradleMaven
dependencies {\n  implementation(\"ai.docling:docling-serve-client:0.3.1\")\n}\n
<dependency>\n  <groupId>ai.docling</groupId>\n  <artifactId>docling-serve-client</artifactId>\n  <version>0.3.1</version>\n</dependency>\n

This artifact brings in the API types transitively, so you can use DoclingServeApi, ConvertDocumentRequest, etc., directly.

Jackson Implementation Required

Make sure you also include either a Jackson 2 or Jackson 3 dependency.

"},{"location":"docling-serve/serve-client/#quick-start","title":"Quick start","text":"

Create a client with DoclingServeClientBuilderFactory, build a request, and call convertSource():

import java.net.URI;\nimport ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.options.ConvertDocumentOptions;\nimport ai.docling.serve.api.convert.request.options.OutputFormat;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.request.target.InBodyTarget;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory;\n\nDoclingServeApi api = DoclingServeClientBuilderFactory\n    .newBuilder()\n    .baseUrl(\"http://localhost:8000\") // your Docling Serve URL\n    .build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(HttpSource.builder().url(URI.create(\"https://arxiv.org/pdf/2408.09869\")).build())\n    .options(ConvertDocumentOptions.builder()\n        .toFormat(OutputFormat.MARKDOWN)\n        .includeImages(true)\n        .build())\n    .target(InBodyTarget.builder().build())\n    .build();\n\nConvertDocumentResponse response = api.convertSource(request);\nSystem.out.println(response.getDocument().getMarkdownContent());\n
"},{"location":"docling-serve/serve-client/#core-concepts-and-configuration","title":"Core concepts and configuration","text":""},{"location":"docling-serve/serve-client/#builder-factory-and-jackson-autodetection","title":"Builder factory and Jackson auto\u2011detection","text":"

DoclingServeClientBuilderFactory.newBuilder() chooses an implementation based on what's on your classpath:

Advanced: You can customize the JSON mapper via .toBuilder().jsonParser(...) on the concrete client type if you need special Jackson modules or settings.

"},{"location":"docling-serve/serve-client/#base-url","title":"Base URL","text":"

Set the Docling Serve base URL with either a String or URI:

DoclingServeApi api = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"http://localhost:8000\")\n    .build();\n

Note: When using plain http://, the client enforces HTTP/1.1 for compatibility with FastAPI, which avoids HTTP/2 downgrade mishaps in some environments.

"},{"location":"docling-serve/serve-client/#http-client-customization-timeouts-proxies-tls","title":"HTTP client customization (timeouts, proxies, TLS)","text":"

You can supply and tune a java.net.http.HttpClient.Builder:

import java.net.http.HttpClient;\nimport java.time.Duration;\n\nDoclingServeApi api = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"https://serve.example.com\")\n    .httpClientBuilder(HttpClient.newBuilder()\n        .connectTimeout(Duration.ofSeconds(20))\n        // .proxy(ProxySelector.of(new InetSocketAddress(\"proxy\", 8080)))\n        // .sslContext(customSslContext)\n    )\n    .build();\n
"},{"location":"docling-serve/serve-client/#requestresponse-logging","title":"Request/response logging","text":"

Enable lightweight logging for diagnostics:

DoclingServeApi noisy = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"http://localhost:8000\")\n    .logRequests()\n    .logResponses()\n    .build();\n
"},{"location":"docling-serve/serve-client/#health-checks","title":"Health checks","text":"
import ai.docling.serve.api.health.HealthCheckResponse;\n\nHealthCheckResponse health = api.health();\nSystem.out.println(\"Service status: \" + health.getStatus());\n
"},{"location":"docling-serve/serve-client/#working-with-sources-and-targets","title":"Working with sources and targets","text":"

All request/response types come from docling-serve-api. Common patterns:

import ai.docling.serve.api.convert.request.source.HttpSource;\nvar httpSource = HttpSource.builder()\n    .url(URI.create(\"https://example.com/file.pdf\"))\n    // .header(\"Authorization\", \"Bearer ...\")\n    .build();\n
import java.util.Base64;\nimport ai.docling.serve.api.convert.request.source.FileSource;\nbyte[] bytes = /* read file */\nvar fileSource = FileSource.builder()\n    .filename(\"report.pdf\")\n    .base64String(Base64.getEncoder().encodeToString(bytes))\n    .build();\n
import ai.docling.serve.api.convert.request.target.InBodyTarget;\nvar target = InBodyTarget.builder().build();\n
import ai.docling.serve.api.convert.request.target.PutTarget;\nvar put = PutTarget.builder()\n    .uri(URI.create(\"https://storage.example.com/out/report.md\"))\n    // .header(\"Authorization\", \"Bearer ...\")\n    .build();\n
"},{"location":"docling-serve/serve-client/#error-handling-tips","title":"Error handling tips","text":"

Transport errors (DNS, TLS, connection reset, timeouts) are thrown as standard Java exceptions from HttpClient. Conversion may also return structured errors in the response body \u2014 inspect ConvertDocumentResponse#getErrors() even when content is present:

var result = api.convertSource(request);\nif (result.getErrors() != null && !result.getErrors().isEmpty()) {\n  result.getErrors().forEach(err ->\n      System.err.println(\"Component=\" + err.getComponentType()\n          + \", Module=\" + err.getModuleName()\n          + \", Message=\" + err.getErrorMessage()));\n}\n
"},{"location":"docling-serve/serve-client/#version-compatibility","title":"Version compatibility","text":"

The client is tested against all published versions of Docling Serve each week. Below are the latest run results:

"},{"location":"docling-serve/serve-client/#results-for-ghcriodocling-projectdocling-serve-as-of-2025-12-02t010531617877845z","title":"Results for ghcr.io/docling-project/docling-serve as of 2025-12-02T01:05:31.617877845Z","text":"

Here are the results:

Tag Result Details v1.0.1 \u2705 SUCCESS Click for run details v1.1.0 \u2705 SUCCESS Click for run details v1.0.0 \u2705 SUCCESS Click for run details v1.2.1 \u2705 SUCCESS Click for run details v1.2.2 \u2705 SUCCESS Click for run details v1.2.0 \u2705 SUCCESS Click for run details v1.3.1 \u2705 SUCCESS Click for run details v1.3.0 \u2705 SUCCESS Click for run details v1.4.0 \u2705 SUCCESS Click for run details v1.5.0 \u2705 SUCCESS Click for run details v1.4.1 \u2705 SUCCESS Click for run details v1.5.1 \u2705 SUCCESS Click for run details v1.6.0 \u2705 SUCCESS Click for run details v1.7.0 \u2705 SUCCESS Click for run details v1.7.1 \u2705 SUCCESS Click for run details v1.7.2 \u2705 SUCCESS Click for run details v1.8.0 \u2705 SUCCESS Click for run details v1.9.0 \u2705 SUCCESS Click for run details"},{"location":"docling-serve/serve-client/#details","title":"Details","text":""},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev101","title":"ghcr.io/docling-project/docling-serve:v1.0.1","text":"Click to expand ###### Message Click to collapse
Tag v1.0.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:59886 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:59890 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:59890 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev110","title":"ghcr.io/docling-project/docling-serve:v1.1.0","text":"Click to expand ###### Message Click to collapse
Tag v1.1.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:40006 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:40014 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:40014 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev100","title":"ghcr.io/docling-project/docling-serve:v1.0.0","text":"Click to expand ###### Message Click to collapse
Tag v1.0.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:38522 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:38534 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:38534 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev121","title":"ghcr.io/docling-project/docling-serve:v1.2.1","text":"Click to expand ###### Message Click to collapse
Tag v1.2.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49312 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49328 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49328 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev122","title":"ghcr.io/docling-project/docling-serve:v1.2.2","text":"Click to expand ###### Message Click to collapse
Tag v1.2.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50440 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50452 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50452 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev120","title":"ghcr.io/docling-project/docling-serve:v1.2.0","text":"Click to expand ###### Message Click to collapse
Tag v1.2.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49238 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49250 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49250 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev131","title":"ghcr.io/docling-project/docling-serve:v1.3.1","text":"Click to expand ###### Message Click to collapse
Tag v1.3.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49294 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49304 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49304 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev130","title":"ghcr.io/docling-project/docling-serve:v1.3.0","text":"Click to expand ###### Message Click to collapse
Tag v1.3.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60976 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60982 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60982 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev140","title":"ghcr.io/docling-project/docling-serve:v1.4.0","text":"Click to expand ###### Message Click to collapse
Tag v1.4.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:39904 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:39920 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:39920 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev150","title":"ghcr.io/docling-project/docling-serve:v1.5.0","text":"Click to expand ###### Message Click to collapse
Tag v1.5.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:34606 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:34620 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:34620 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev141","title":"ghcr.io/docling-project/docling-serve:v1.4.1","text":"Click to expand ###### Message Click to collapse
Tag v1.4.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:46264 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:46272 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:46272 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev151","title":"ghcr.io/docling-project/docling-serve:v1.5.1","text":"Click to expand ###### Message Click to collapse
Tag v1.5.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:43484 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:43496 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:43496 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev160","title":"ghcr.io/docling-project/docling-serve:v1.6.0","text":"Click to expand ###### Message Click to collapse
Tag v1.6.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50858 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50872 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50872 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev170","title":"ghcr.io/docling-project/docling-serve:v1.7.0","text":"Click to expand ###### Message Click to collapse
Tag v1.7.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:54056 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:54060 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:54060 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev171","title":"ghcr.io/docling-project/docling-serve:v1.7.1","text":"Click to expand ###### Message Click to collapse
Tag v1.7.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:01:17,311 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,314 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:33120 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:33136 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:33136 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev172","title":"ghcr.io/docling-project/docling-serve:v1.7.2","text":"Click to expand ###### Message Click to collapse
Tag v1.7.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:32,060 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,064 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:32,291 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,292 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60552 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60562 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60562 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev180","title":"ghcr.io/docling-project/docling-serve:v1.8.0","text":"Click to expand ###### Message Click to collapse
Tag v1.8.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:37,497 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,499 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:37,712 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,713 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:51968 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:51980 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:51980 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev190","title":"ghcr.io/docling-project/docling-serve:v1.9.0","text":"Click to expand ###### Message Click to collapse
Tag v1.9.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:05:21,583 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,584 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49084 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49094 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49094 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/","title":"Results for ghcr.io/docling-project/docling-serve as of 2025-12-02T01:05:31.617877845Z","text":"

Here are the results:

Tag Result Details v1.0.1 \u2705 SUCCESS Click for run details v1.1.0 \u2705 SUCCESS Click for run details v1.0.0 \u2705 SUCCESS Click for run details v1.2.1 \u2705 SUCCESS Click for run details v1.2.2 \u2705 SUCCESS Click for run details v1.2.0 \u2705 SUCCESS Click for run details v1.3.1 \u2705 SUCCESS Click for run details v1.3.0 \u2705 SUCCESS Click for run details v1.4.0 \u2705 SUCCESS Click for run details v1.5.0 \u2705 SUCCESS Click for run details v1.4.1 \u2705 SUCCESS Click for run details v1.5.1 \u2705 SUCCESS Click for run details v1.6.0 \u2705 SUCCESS Click for run details v1.7.0 \u2705 SUCCESS Click for run details v1.7.1 \u2705 SUCCESS Click for run details v1.7.2 \u2705 SUCCESS Click for run details v1.8.0 \u2705 SUCCESS Click for run details v1.9.0 \u2705 SUCCESS Click for run details"},{"location":"includes/docling-serve/serve-compatibility/#details","title":"Details","text":""},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev101","title":"ghcr.io/docling-project/docling-serve:v1.0.1","text":"Click to expand #### Message Click to collapse
Tag v1.0.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:59886 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:59890 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:59890 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev110","title":"ghcr.io/docling-project/docling-serve:v1.1.0","text":"Click to expand #### Message Click to collapse
Tag v1.1.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:40006 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:40014 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:40014 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev100","title":"ghcr.io/docling-project/docling-serve:v1.0.0","text":"Click to expand #### Message Click to collapse
Tag v1.0.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:38522 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:38534 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:38534 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev121","title":"ghcr.io/docling-project/docling-serve:v1.2.1","text":"Click to expand #### Message Click to collapse
Tag v1.2.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49312 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49328 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49328 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev122","title":"ghcr.io/docling-project/docling-serve:v1.2.2","text":"Click to expand #### Message Click to collapse
Tag v1.2.2 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50440 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50452 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50452 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev120","title":"ghcr.io/docling-project/docling-serve:v1.2.0","text":"Click to expand #### Message Click to collapse
Tag v1.2.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49238 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49250 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49250 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev131","title":"ghcr.io/docling-project/docling-serve:v1.3.1","text":"Click to expand #### Message Click to collapse
Tag v1.3.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49294 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49304 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49304 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev130","title":"ghcr.io/docling-project/docling-serve:v1.3.0","text":"Click to expand #### Message Click to collapse
Tag v1.3.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60976 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60982 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60982 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev140","title":"ghcr.io/docling-project/docling-serve:v1.4.0","text":"Click to expand #### Message Click to collapse
Tag v1.4.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:39904 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:39920 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:39920 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev150","title":"ghcr.io/docling-project/docling-serve:v1.5.0","text":"Click to expand #### Message Click to collapse
Tag v1.5.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:34606 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:34620 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:34620 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev141","title":"ghcr.io/docling-project/docling-serve:v1.4.1","text":"Click to expand #### Message Click to collapse
Tag v1.4.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:46264 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:46272 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:46272 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev151","title":"ghcr.io/docling-project/docling-serve:v1.5.1","text":"Click to expand #### Message Click to collapse
Tag v1.5.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:43484 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:43496 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:43496 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev160","title":"ghcr.io/docling-project/docling-serve:v1.6.0","text":"Click to expand #### Message Click to collapse
Tag v1.6.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50858 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50872 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50872 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev170","title":"ghcr.io/docling-project/docling-serve:v1.7.0","text":"Click to expand #### Message Click to collapse
Tag v1.7.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:54056 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:54060 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:54060 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev171","title":"ghcr.io/docling-project/docling-serve:v1.7.1","text":"Click to expand #### Message Click to collapse
Tag v1.7.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:01:17,311 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,314 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:33120 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:33136 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:33136 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev172","title":"ghcr.io/docling-project/docling-serve:v1.7.2","text":"Click to expand #### Message Click to collapse
Tag v1.7.2 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:32,060 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,064 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:32,291 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,292 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60552 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60562 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60562 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev180","title":"ghcr.io/docling-project/docling-serve:v1.8.0","text":"Click to expand #### Message Click to collapse
Tag v1.8.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:37,497 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,499 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:37,712 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,713 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:51968 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:51980 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:51980 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev190","title":"ghcr.io/docling-project/docling-serve:v1.9.0","text":"Click to expand #### Message Click to collapse
Tag v1.9.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:05:21,583 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,584 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49084 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49094 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49094 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Docling Java","text":"

Docling Java is the official Java client and tooling for Docling \u2014 a suite that simplifies document processing and parsing across diverse formats (with advanced PDF understanding) and integrates seamlessly with GenAI frameworks.

"},{"location":"#what-is-docling","title":"What is Docling?","text":"

Docling extracts structured information from documents. It understands page layout, reading order, tables, code, formulas, and images, and exports results into convenient formats like Markdown, HTML, and JSON.

"},{"location":"#key-features","title":"Key features","text":""},{"location":"#project-layout-and-artifacts","title":"Project layout and artifacts","text":"

This repository provides a set of artifacts you can mix and match depending on your needs:

"},{"location":"#links","title":"Links","text":""},{"location":"#license-and-contributions","title":"License and contributions","text":"

The codebase is released under the MIT License. Contributions are welcome \u2014 please see CONTRIBUTING.md for guidelines and CODE_OF_CONDUCT.md for community standards.

"},{"location":"core/","title":"Docling Core","text":"

The docling-core module provides the core data types used by Docling for document representation. It defines the DoclingDocument model, which captures the structure and content of documents across various formats, along with utilities for working with these types.

The base Java version is 17. This module has no external dependencies, making it lightweight and easy to integrate into your projects. It represents the foundational building block for the other Docling Java modules.

"},{"location":"core/#when-to-use-this-module","title":"When to use this module","text":"

You typically won't need to use this module directly, as it is consumed by higher-level modules like docling-serve-api and docling-serve-client.

"},{"location":"core/#installation","title":"Installation","text":"

Add the dependency to your project.

GradleMaven
dependencies {\n  implementation(\"ai.docling:docling-core:0.3.1\")\n}\n
<dependency>\n  <groupId>ai.docling</groupId>\n  <artifactId>docling-core</artifactId>\n  <version>0.3.1</version>\n</dependency>\n
"},{"location":"core/#core-concepts","title":"Core concepts","text":"

The DoclingDocument class is the primary representation of a document in Docling. It can be retrieved as the result of a document conversion process against a Docling Serve backend via the docling-serve-api or docling-serve-client modules.

To learn more about the DoclingDocument model and related types, refer to the Docling documentation: Docling Document.

"},{"location":"getting-started/","title":"Getting Started","text":"

Use the DoclingServeApi to convert a document by pointing at a running Docling Serve instance.

import ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory;\n\nDoclingServeApi doclingServeApi = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"<location of docling serve instance>\")\n    .build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(\n        HttpSource.builder()\n            .url(URI.create(\"https://arxiv.org/pdf/2408.09869\"))\n            .build()\n    )\n    .build();\n\nConvertDocumentResponse response = doclingServeApi.convertSource(request);\nSystem.out.println(response.getDocument().getMarkdownContent());\n

For more examples and options, explore the modules listed above and the repository README.

"},{"location":"getting-started/#links","title":"Links","text":""},{"location":"testcontainers/","title":"Testcontainers","text":"

The docling-testcontainers module provides a ready-to-use Testcontainers integration for running a Docling Serve instance in your tests. It wraps the official container image and exposes a simple Java API so you can spin up Docling as part of your JUnit test lifecycle and exercise client code against a real server.

If you need to talk to a running server from your application code, pair this module with the reference HTTP client: - docling-serve-client

"},{"location":"testcontainers/#when-to-use-this-module","title":"When to use this module","text":""},{"location":"testcontainers/#installation","title":"Installation","text":"

Add the Testcontainers module to your test dependencies.

GradleMaven
dependencies {\n    testImplementation(\"ai.docling:docling-testcontainers:0.3.1\")\n}\n
<dependencies>\n  <dependency>\n    <groupId>ai.docling</groupId>\n    <artifactId>docling-testcontainers</artifactId>\n    <version>0.3.1</version>\n    <scope>test</scope>\n  </dependency>\n</dependencies>\n
"},{"location":"testcontainers/#quick-start","title":"Quick start","text":"

Spin up Docling Serve with JUnit 5 and run a simple health check using the reference client.

import static org.assertj.core.api.Assertions.assertThat;\n\nimport java.net.URI;\n\nimport org.junit.jupiter.api.Test;\nimport org.testcontainers.junit.jupiter.Container;\nimport org.testcontainers.junit.jupiter.Testcontainers;\n\nimport ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.health.HealthCheckResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory;\nimport ai.docling.testcontainers.serve.DoclingServeContainer;\nimport ai.docling.testcontainers.serve.config.DoclingServeContainerConfig;\n\n@Testcontainers\nclass DoclingContainerSmokeTest {\n  @Container\n  private final DoclingServeContainer docling = new DoclingServeContainer(\n      DoclingServeContainerConfig.builder()\n          .image(DoclingServeContainerConfig.DOCLING_IMAGE)\n          .enableUi(true)\n          .build()\n  );\n\n  @Test\n  void health_is_ok() {\n    String base = \"http://\" + docling.getHost() + \":\" + docling.getPort();\n\n    DoclingServeApi api = DoclingServeClientBuilderFactory\n        .newBuilder()\n        .baseUrl(base)\n        .build();\n\n    HealthCheckResponse health = api.health();\n    assertThat(health.getStatus()).isNotBlank();\n  }\n}\n
Note "},{"location":"testcontainers/#using-it-with-the-reference-client-for-conversions","title":"Using it with the reference client for conversions","text":"

Once the container is up, you can call the Convert endpoint through docling-serve-client:

import java.net.URI;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.options.ConvertDocumentOptions;\nimport ai.docling.serve.api.convert.request.options.OutputFormat;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.request.target.InBodyTarget;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\n\nString baseUrl = \"http://\" + docling.getHost() + \":\" + docling.getPort();\nDoclingServeApi api = DoclingServeClientBuilderFactory.newBuilder().baseUrl(baseUrl).build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(HttpSource.builder().url(URI.create(\"https://arxiv.org/pdf/2408.09869\")).build())\n    .options(ConvertDocumentOptions.builder()\n        .toFormat(OutputFormat.MARKDOWN)\n        .includeImages(true)\n        .build())\n    .target(InBodyTarget.builder().build())\n    .build();\n\nConvertDocumentResponse response = api.convertSource(request);\n// Assert on response.getDocument().getMarkdownContent(), errors, timings, etc.\n
"},{"location":"testcontainers/#configuration","title":"Configuration","text":"

The container is configured via DoclingServeContainerConfig. Use its fluent builder to customize:

import java.time.Duration;\nimport java.util.Map;\nimport ai.docling.testcontainers.serve.config.DoclingServeContainerConfig;\nimport ai.docling.testcontainers.serve.DoclingServeContainer;\n\nDoclingServeContainerConfig config = DoclingServeContainerConfig.builder()\n    // Override the image if you need a different tag or registry\n    .image(\"ghcr.io/docling-project/docling-serve:v1.9.0\")\n    // Enable the optional web UI served by Docling Serve\n    .enableUi(true)\n    // Pass environment variables to fine\u2011tune behavior\n    .containerEnv(Map.of(\n        // Example: configure OCR languages or pipeline hints if supported by the server\n        \"DOCLING_OCR_LANG\", \"eng,deu\"\n    ))\n    // Increase startup timeout if your CI is slow to pull images\n    .startupTimeout(Duration.ofMinutes(2))\n    .build();\n\nDoclingServeContainer container = new DoclingServeContainer(config);\n
"},{"location":"testcontainers/#defaults","title":"Defaults","text":""},{"location":"testcontainers/#tips-and-caveats","title":"Tips and caveats","text":""},{"location":"testcontainers/#related-modules","title":"Related modules","text":""},{"location":"testing/","title":"Testing","text":"

The docling-testing area contains tooling used to validate Docling Serve images and to help you test your integration. The main utility today is a small Quarkus/Picocli command that automatically verifies multiple Docling Serve versions by:

If you\u2019re looking to test your application code against a running server during unit/integration tests, consider the Testcontainers module instead: - docling-testcontainers

"},{"location":"testing/#when-to-use-docling-testing","title":"When to use docling-testing","text":""},{"location":"testing/#whats-included","title":"What\u2019s included","text":"

Submodule: docling-testing/docling-version-tests

"},{"location":"testing/#prerequisites","title":"Prerequisites","text":""},{"location":"testing/#run-the-version-tests-locally","title":"Run the version tests locally","text":"

You can run the CLI directly from the repository using the Quarkus Gradle plugin.

Option A \u2014 Dev mode (quick iteration):

./gradlew :docling-version-tests:quarkusDev\n

Option B \u2014 Build a runnable JAR and execute it:

# Build the application\n./gradlew :docling-version-tests:build\n\n# Run it\njava -jar docling-testing/docling-version-tests/build/quarkus-app/quarkus-run.jar\n

Notes: - The CLI will spin up Docker containers; ensure your user can access the Docker daemon. - By default it fetches all version tags for the given image and tests them serially (configurable with --parallelism).

"},{"location":"testing/#cli-options","title":"CLI options","text":"

These map to the Picocli command docling-serve-version-tests.

Examples:

# Test the latest published versions from GHCR, one at a time\n./gradlew :docling-version-tests:quarkusDev\n\n# Test a specific set of tags in parallel\n./gradlew :docling-version-tests:quarkusDev \\\n  -p 3 \\\n  -t v1.8.0 \\\n  -t v1.7.3 \\\n  -t v1.6.5\n\n# Save artifacts under a custom directory and disable GitHub issue creation\n./gradlew :docling-version-tests:quarkusDev \\\n  -o ./my-results \\\n  --no-create-github-issue\n
"},{"location":"testing/#what-the-tool-verifies","title":"What the tool verifies","text":"

For each tag under test, the tool:

  1. Starts ghcr.io/<registry>/<image>:<tag> with Testcontainers (default internal port 5001).
  2. Checks /health using DoclingServeApi.health().
  3. Performs a conversion with DoclingServeApi.convertSource() on a simple HTTP source.
  4. Asserts that the response contains no errors and includes expected fields (filename, Markdown, text, JSON content).
  5. Captures server logs and aggregates pass/fail status per tag.

Under the hood, this is implemented in: - ai.docling.client.tester.service.TagsTester (spins up the container, runs checks) - ai.docling.client.tester.VersionTestsCommand (parses options, parallelizes work, aggregates results)

"},{"location":"testing/#results-and-artifacts","title":"Results and artifacts","text":"

At the end of a run, you\u2019ll find a timestamped directory under the output path, for example:

results/\n  results-20250101T121314Z/\n    summary.md           # Markdown summary of tags tested and outcomes\n    <tag>-server.log     # Logs captured from the Docling Serve container for each tag\n    ...\n

Depending on your configuration, a GitHub issue may be created or updated to include the summary table and failure details.

"},{"location":"testing/#ci-tips","title":"CI tips","text":""},{"location":"testing/#related-modules","title":"Related modules","text":""},{"location":"whats-new/","title":"What's New in Docling Java","text":"

Docling Java 0.3.1 provides a number of new features, enhancements, and bug fixes. This page includes the highlights of the release, but you can also check out the full release notes for more details about each new feature and bug fix.

"},{"location":"whats-new/#docling-serve","title":"Docling Serve","text":""},{"location":"whats-new/#031","title":"0.3.1","text":""},{"location":"whats-new/#030","title":"0.3.0","text":""},{"location":"docling-serve/serve-api/","title":"Docling Serve API","text":"

The docling-serve-api module defines the core, framework-agnostic Java API used to communicate with a Docling Serve backend. It provides the request/response model and the main DoclingServeApi interface. You can use any implementation of this interface to talk to a running Docling Serve instance.

The base Java version is 17. This module has no other required dependencies, although it is compatible with both Jackson 2.x and 3.x.

If you need a ready-to-use HTTP implementation, see the reference client: - Docling Serve Client: docling-serve-client

"},{"location":"docling-serve/serve-api/#when-to-use-this-module","title":"When to use this module","text":""},{"location":"docling-serve/serve-api/#installation","title":"Installation","text":"

Add the API dependency to your project.

GradleMaven
dependencies {\n  implementation(\"ai.docling:docling-serve-api:0.3.1\")\n}\n
<dependency>\n  <groupId>ai.docling</groupId>\n  <artifactId>docling-serve-api</artifactId>\n  <version>0.3.1</version>\n</dependency>\n

Note: The API module does not perform network I/O by itself. To call a live service, combine it with an implementation such as docling-serve-client.

"},{"location":"docling-serve/serve-api/#quick-start","title":"Quick start","text":"

Below is a minimal example using the reference client to create an implementation of DoclingServeApi, build a conversion request, and retrieve Markdown output. The request/response types all come from docling-serve-api.

import java.net.URI;\nimport ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.options.ConvertDocumentOptions;\nimport ai.docling.serve.api.convert.request.options.OutputFormat;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.request.target.InBodyTarget;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory; // from docling-serve-client\n\nDoclingServeApi api = DoclingServeClientBuilderFactory\n    .newBuilder()\n    .baseUrl(\"http://localhost:8000\") // your Docling Serve URL\n    .build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(HttpSource.builder().url(URI.create(\"https://arxiv.org/pdf/2408.09869\"))\n        .build())\n    .options(ConvertDocumentOptions.builder()\n        .toFormat(OutputFormat.MARKDOWN) // request Markdown output\n        .includeImages(true)\n        .build())\n    .target(InBodyTarget.builder().build()) // get results in the HTTP response body\n    .build();\n\nConvertDocumentResponse response = api.convertSource(request);\nSystem.out.println(response.getDocument().getMarkdownContent());\n
"},{"location":"docling-serve/serve-api/#core-concepts","title":"Core concepts","text":""},{"location":"docling-serve/serve-api/#the-doclingserveapi-interface","title":"The DoclingServeApi interface","text":"

Defined in ai.docling.serve.api.DoclingServeApi, this interface exposes two primary operations:

Any HTTP or non-HTTP implementation can implement this interface. The reference implementation is provided by the docling-serve-client module.

"},{"location":"docling-serve/serve-api/#requests-convertdocumentrequest","title":"Requests: ConvertDocumentRequest","text":"

Create a request via the builder:

ConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(/* one of the supported sources */)\n    .options(/* conversion options */)\n    .target(/* optional delivery target */)\n    .build();\n

Supported sources (ai.docling.serve.api.convert.request.source): - HttpSource \u2014 fetch content from a URL (optional custom headers) - FileSource \u2014 embed content as Base64 with a filename

Targets (ai.docling.serve.api.convert.request.target): - InBodyTarget \u2014 receive results directly in the API response body (default use case) - PutTarget \u2014 the service uploads converted content via HTTP PUT to a specified URI - ZipTarget \u2014 receive a zipped result

Options (ai.docling.serve.api.convert.request.options.ConvertDocumentOptions) let you control: - Input/output formats (e.g., fromFormats, toFormats) - OCR (e.g., doOcr, forceOcr, ocrEngine, ocrLang) - PDF processing (e.g., pdfBackend) - Tables (e.g., tableMode, tableCellMatching) - Pipelines and page ranges (e.g., pipeline, pageRange) - Timeouts and error behavior (e.g., documentTimeout, abortOnError) - Enrichments (code/formula/picture), image handling, scaling, page break placeholder - VLM pipeline hints

Explore the options package for the full list of knobs you can turn.

"},{"location":"docling-serve/serve-api/#responses-convertdocumentresponse-and-documentresponse","title":"Responses: ConvertDocumentResponse and DocumentResponse","text":""},{"location":"docling-serve/serve-api/#health-checks","title":"Health checks","text":"

You can ping the service to check readiness and basic status:

import ai.docling.serve.api.health.HealthCheckResponse;\n\nHealthCheckResponse health = api.health();\nSystem.out.println(\"Service status: \" + health.getStatus());\n
"},{"location":"docling-serve/serve-api/#error-handling","title":"Error handling","text":"

Conversion may succeed partially (e.g., some pages) while returning warnings or errors. Always inspect ConvertDocumentResponse#getErrors() and consider status:

ConvertDocumentResponse response = api.convertSource(request);\n\nif (response.getErrors() != null && !response.getErrors().isEmpty()) {\n  response.getErrors().forEach(err ->\n      System.err.println(\"Component: \" + err.getComponentType() + \n          \", Module: \" + err.getModuleName() + \n          \", Message: \" + err.getErrorMessage()));\n}\n\nif (response.getDocument() != null && response.getDocument().getMarkdownContent() != null) {\n  // Use the output\n}\n

The exact transport-level exceptions (e.g., timeouts, connectivity) depend on the client implementation you use. The reference client throws standard Java exceptions for HTTP and I/O failures.

"},{"location":"docling-serve/serve-api/#logging-and-builders","title":"Logging and builders","text":"

DoclingServeApi exposes a toBuilder() method so implementations can be duplicated and tweaked. Most client builders, including the reference client, also expose logRequests() and logResponses() for simple diagnostics:

DoclingServeApi newApi = api.toBuilder()\n    .logRequests()\n    .logResponses()\n    .build();\n
"},{"location":"docling-serve/serve-api/#version-compatibility","title":"Version compatibility","text":"

The API is tested against all published versions of Docling Serve each week. Below are the latest run results:

"},{"location":"docling-serve/serve-api/#results-for-ghcriodocling-projectdocling-serve-as-of-2025-12-02t010531617877845z","title":"Results for ghcr.io/docling-project/docling-serve as of 2025-12-02T01:05:31.617877845Z","text":"

Here are the results:

Tag Result Details v1.0.1 \u2705 SUCCESS Click for run details v1.1.0 \u2705 SUCCESS Click for run details v1.0.0 \u2705 SUCCESS Click for run details v1.2.1 \u2705 SUCCESS Click for run details v1.2.2 \u2705 SUCCESS Click for run details v1.2.0 \u2705 SUCCESS Click for run details v1.3.1 \u2705 SUCCESS Click for run details v1.3.0 \u2705 SUCCESS Click for run details v1.4.0 \u2705 SUCCESS Click for run details v1.5.0 \u2705 SUCCESS Click for run details v1.4.1 \u2705 SUCCESS Click for run details v1.5.1 \u2705 SUCCESS Click for run details v1.6.0 \u2705 SUCCESS Click for run details v1.7.0 \u2705 SUCCESS Click for run details v1.7.1 \u2705 SUCCESS Click for run details v1.7.2 \u2705 SUCCESS Click for run details v1.8.0 \u2705 SUCCESS Click for run details v1.9.0 \u2705 SUCCESS Click for run details"},{"location":"docling-serve/serve-api/#details","title":"Details","text":""},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev101","title":"ghcr.io/docling-project/docling-serve:v1.0.1","text":"Click to expand ###### Message Click to collapse
Tag v1.0.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:59886 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:59890 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:59890 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev110","title":"ghcr.io/docling-project/docling-serve:v1.1.0","text":"Click to expand ###### Message Click to collapse
Tag v1.1.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:40006 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:40014 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:40014 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev100","title":"ghcr.io/docling-project/docling-serve:v1.0.0","text":"Click to expand ###### Message Click to collapse
Tag v1.0.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:38522 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:38534 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:38534 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev121","title":"ghcr.io/docling-project/docling-serve:v1.2.1","text":"Click to expand ###### Message Click to collapse
Tag v1.2.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49312 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49328 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49328 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev122","title":"ghcr.io/docling-project/docling-serve:v1.2.2","text":"Click to expand ###### Message Click to collapse
Tag v1.2.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50440 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50452 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50452 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev120","title":"ghcr.io/docling-project/docling-serve:v1.2.0","text":"Click to expand ###### Message Click to collapse
Tag v1.2.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49238 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49250 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49250 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev131","title":"ghcr.io/docling-project/docling-serve:v1.3.1","text":"Click to expand ###### Message Click to collapse
Tag v1.3.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49294 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49304 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49304 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev130","title":"ghcr.io/docling-project/docling-serve:v1.3.0","text":"Click to expand ###### Message Click to collapse
Tag v1.3.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60976 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60982 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60982 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev140","title":"ghcr.io/docling-project/docling-serve:v1.4.0","text":"Click to expand ###### Message Click to collapse
Tag v1.4.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:39904 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:39920 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:39920 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev150","title":"ghcr.io/docling-project/docling-serve:v1.5.0","text":"Click to expand ###### Message Click to collapse
Tag v1.5.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:34606 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:34620 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:34620 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev141","title":"ghcr.io/docling-project/docling-serve:v1.4.1","text":"Click to expand ###### Message Click to collapse
Tag v1.4.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:46264 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:46272 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:46272 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev151","title":"ghcr.io/docling-project/docling-serve:v1.5.1","text":"Click to expand ###### Message Click to collapse
Tag v1.5.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:43484 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:43496 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:43496 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev160","title":"ghcr.io/docling-project/docling-serve:v1.6.0","text":"Click to expand ###### Message Click to collapse
Tag v1.6.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50858 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50872 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50872 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev170","title":"ghcr.io/docling-project/docling-serve:v1.7.0","text":"Click to expand ###### Message Click to collapse
Tag v1.7.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:54056 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:54060 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:54060 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev171","title":"ghcr.io/docling-project/docling-serve:v1.7.1","text":"Click to expand ###### Message Click to collapse
Tag v1.7.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:01:17,311 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,314 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:33120 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:33136 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:33136 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev172","title":"ghcr.io/docling-project/docling-serve:v1.7.2","text":"Click to expand ###### Message Click to collapse
Tag v1.7.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:32,060 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,064 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:32,291 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,292 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60552 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60562 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60562 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev180","title":"ghcr.io/docling-project/docling-serve:v1.8.0","text":"Click to expand ###### Message Click to collapse
Tag v1.8.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:37,497 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,499 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:37,712 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,713 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:51968 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:51980 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:51980 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-api/#ghcriodocling-projectdocling-servev190","title":"ghcr.io/docling-project/docling-serve:v1.9.0","text":"Click to expand ###### Message Click to collapse
Tag v1.9.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:05:21,583 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,584 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49084 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49094 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49094 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/","title":"Docling Serve Client","text":"

The docling-serve-client module is the reference HTTP client for talking to a Docling Serve backend.

It implements the framework\u2011agnostic DoclingServeApi interface from docling-serve-api using Java's built\u2011in HttpClient for transport and Jackson for JSON (auto\u2011detecting Jackson 2 or 3 at runtime).

If you only need the request/response model (without HTTP), use the API module: - docling-serve-api

"},{"location":"docling-serve/serve-client/#when-to-use-this-module","title":"When to use this module","text":""},{"location":"docling-serve/serve-client/#installation","title":"Installation","text":"

Add the client dependency to your project.

GradleMaven
dependencies {\n  implementation(\"ai.docling:docling-serve-client:0.3.1\")\n}\n
<dependency>\n  <groupId>ai.docling</groupId>\n  <artifactId>docling-serve-client</artifactId>\n  <version>0.3.1</version>\n</dependency>\n

This artifact brings in the API types transitively, so you can use DoclingServeApi, ConvertDocumentRequest, etc., directly.

Jackson Implementation Required

Make sure you also include either a Jackson 2 or Jackson 3 dependency.

"},{"location":"docling-serve/serve-client/#quick-start","title":"Quick start","text":"

Create a client with DoclingServeClientBuilderFactory, build a request, and call convertSource():

import java.net.URI;\nimport ai.docling.serve.api.DoclingServeApi;\nimport ai.docling.serve.api.convert.request.ConvertDocumentRequest;\nimport ai.docling.serve.api.convert.request.options.ConvertDocumentOptions;\nimport ai.docling.serve.api.convert.request.options.OutputFormat;\nimport ai.docling.serve.api.convert.request.source.HttpSource;\nimport ai.docling.serve.api.convert.request.target.InBodyTarget;\nimport ai.docling.serve.api.convert.response.ConvertDocumentResponse;\nimport ai.docling.serve.client.DoclingServeClientBuilderFactory;\n\nDoclingServeApi api = DoclingServeClientBuilderFactory\n    .newBuilder()\n    .baseUrl(\"http://localhost:8000\") // your Docling Serve URL\n    .build();\n\nConvertDocumentRequest request = ConvertDocumentRequest.builder()\n    .source(HttpSource.builder().url(URI.create(\"https://arxiv.org/pdf/2408.09869\")).build())\n    .options(ConvertDocumentOptions.builder()\n        .toFormat(OutputFormat.MARKDOWN)\n        .includeImages(true)\n        .build())\n    .target(InBodyTarget.builder().build())\n    .build();\n\nConvertDocumentResponse response = api.convertSource(request);\nSystem.out.println(response.getDocument().getMarkdownContent());\n
"},{"location":"docling-serve/serve-client/#core-concepts-and-configuration","title":"Core concepts and configuration","text":""},{"location":"docling-serve/serve-client/#builder-factory-and-jackson-autodetection","title":"Builder factory and Jackson auto\u2011detection","text":"

DoclingServeClientBuilderFactory.newBuilder() chooses an implementation based on what's on your classpath:

Advanced: You can customize the JSON mapper via .toBuilder().jsonParser(...) on the concrete client type if you need special Jackson modules or settings.

"},{"location":"docling-serve/serve-client/#base-url","title":"Base URL","text":"

Set the Docling Serve base URL with either a String or URI:

DoclingServeApi api = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"http://localhost:8000\")\n    .build();\n

Note: When using plain http://, the client enforces HTTP/1.1 for compatibility with FastAPI, which avoids HTTP/2 downgrade mishaps in some environments.

"},{"location":"docling-serve/serve-client/#http-client-customization-timeouts-proxies-tls","title":"HTTP client customization (timeouts, proxies, TLS)","text":"

You can supply and tune a java.net.http.HttpClient.Builder:

import java.net.http.HttpClient;\nimport java.time.Duration;\n\nDoclingServeApi api = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"https://serve.example.com\")\n    .httpClientBuilder(HttpClient.newBuilder()\n        .connectTimeout(Duration.ofSeconds(20))\n        // .proxy(ProxySelector.of(new InetSocketAddress(\"proxy\", 8080)))\n        // .sslContext(customSslContext)\n    )\n    .build();\n
"},{"location":"docling-serve/serve-client/#requestresponse-logging","title":"Request/response logging","text":"

Enable lightweight logging for diagnostics:

DoclingServeApi noisy = DoclingServeClientBuilderFactory.newBuilder()\n    .baseUrl(\"http://localhost:8000\")\n    .logRequests()\n    .logResponses()\n    .build();\n
"},{"location":"docling-serve/serve-client/#health-checks","title":"Health checks","text":"
import ai.docling.serve.api.health.HealthCheckResponse;\n\nHealthCheckResponse health = api.health();\nSystem.out.println(\"Service status: \" + health.getStatus());\n
"},{"location":"docling-serve/serve-client/#working-with-sources-and-targets","title":"Working with sources and targets","text":"

All request/response types come from docling-serve-api. Common patterns:

import ai.docling.serve.api.convert.request.source.HttpSource;\nvar httpSource = HttpSource.builder()\n    .url(URI.create(\"https://example.com/file.pdf\"))\n    // .header(\"Authorization\", \"Bearer ...\")\n    .build();\n
import java.util.Base64;\nimport ai.docling.serve.api.convert.request.source.FileSource;\nbyte[] bytes = /* read file */\nvar fileSource = FileSource.builder()\n    .filename(\"report.pdf\")\n    .base64String(Base64.getEncoder().encodeToString(bytes))\n    .build();\n
import ai.docling.serve.api.convert.request.target.InBodyTarget;\nvar target = InBodyTarget.builder().build();\n
import ai.docling.serve.api.convert.request.target.PutTarget;\nvar put = PutTarget.builder()\n    .uri(URI.create(\"https://storage.example.com/out/report.md\"))\n    // .header(\"Authorization\", \"Bearer ...\")\n    .build();\n
"},{"location":"docling-serve/serve-client/#error-handling-tips","title":"Error handling tips","text":"

Transport errors (DNS, TLS, connection reset, timeouts) are thrown as standard Java exceptions from HttpClient. Conversion may also return structured errors in the response body \u2014 inspect ConvertDocumentResponse#getErrors() even when content is present:

var result = api.convertSource(request);\nif (result.getErrors() != null && !result.getErrors().isEmpty()) {\n  result.getErrors().forEach(err ->\n      System.err.println(\"Component=\" + err.getComponentType()\n          + \", Module=\" + err.getModuleName()\n          + \", Message=\" + err.getErrorMessage()));\n}\n
"},{"location":"docling-serve/serve-client/#version-compatibility","title":"Version compatibility","text":"

The client is tested against all published versions of Docling Serve each week. Below are the latest run results:

"},{"location":"docling-serve/serve-client/#results-for-ghcriodocling-projectdocling-serve-as-of-2025-12-02t010531617877845z","title":"Results for ghcr.io/docling-project/docling-serve as of 2025-12-02T01:05:31.617877845Z","text":"

Here are the results:

Tag Result Details v1.0.1 \u2705 SUCCESS Click for run details v1.1.0 \u2705 SUCCESS Click for run details v1.0.0 \u2705 SUCCESS Click for run details v1.2.1 \u2705 SUCCESS Click for run details v1.2.2 \u2705 SUCCESS Click for run details v1.2.0 \u2705 SUCCESS Click for run details v1.3.1 \u2705 SUCCESS Click for run details v1.3.0 \u2705 SUCCESS Click for run details v1.4.0 \u2705 SUCCESS Click for run details v1.5.0 \u2705 SUCCESS Click for run details v1.4.1 \u2705 SUCCESS Click for run details v1.5.1 \u2705 SUCCESS Click for run details v1.6.0 \u2705 SUCCESS Click for run details v1.7.0 \u2705 SUCCESS Click for run details v1.7.1 \u2705 SUCCESS Click for run details v1.7.2 \u2705 SUCCESS Click for run details v1.8.0 \u2705 SUCCESS Click for run details v1.9.0 \u2705 SUCCESS Click for run details"},{"location":"docling-serve/serve-client/#details","title":"Details","text":""},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev101","title":"ghcr.io/docling-project/docling-serve:v1.0.1","text":"Click to expand ###### Message Click to collapse
Tag v1.0.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:59886 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:59890 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:59890 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev110","title":"ghcr.io/docling-project/docling-serve:v1.1.0","text":"Click to expand ###### Message Click to collapse
Tag v1.1.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:40006 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:40014 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:40014 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev100","title":"ghcr.io/docling-project/docling-serve:v1.0.0","text":"Click to expand ###### Message Click to collapse
Tag v1.0.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:38522 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:38534 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:38534 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev121","title":"ghcr.io/docling-project/docling-serve:v1.2.1","text":"Click to expand ###### Message Click to collapse
Tag v1.2.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49312 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49328 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49328 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev122","title":"ghcr.io/docling-project/docling-serve:v1.2.2","text":"Click to expand ###### Message Click to collapse
Tag v1.2.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50440 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50452 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50452 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev120","title":"ghcr.io/docling-project/docling-serve:v1.2.0","text":"Click to expand ###### Message Click to collapse
Tag v1.2.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49238 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49250 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49250 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev131","title":"ghcr.io/docling-project/docling-serve:v1.3.1","text":"Click to expand ###### Message Click to collapse
Tag v1.3.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49294 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49304 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49304 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev130","title":"ghcr.io/docling-project/docling-serve:v1.3.0","text":"Click to expand ###### Message Click to collapse
Tag v1.3.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60976 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60982 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60982 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev140","title":"ghcr.io/docling-project/docling-serve:v1.4.0","text":"Click to expand ###### Message Click to collapse
Tag v1.4.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:39904 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:39920 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:39920 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev150","title":"ghcr.io/docling-project/docling-serve:v1.5.0","text":"Click to expand ###### Message Click to collapse
Tag v1.5.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:34606 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:34620 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:34620 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev141","title":"ghcr.io/docling-project/docling-serve:v1.4.1","text":"Click to expand ###### Message Click to collapse
Tag v1.4.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:46264 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:46272 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:46272 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev151","title":"ghcr.io/docling-project/docling-serve:v1.5.1","text":"Click to expand ###### Message Click to collapse
Tag v1.5.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:43484 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:43496 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:43496 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev160","title":"ghcr.io/docling-project/docling-serve:v1.6.0","text":"Click to expand ###### Message Click to collapse
Tag v1.6.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50858 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50872 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50872 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev170","title":"ghcr.io/docling-project/docling-serve:v1.7.0","text":"Click to expand ###### Message Click to collapse
Tag v1.7.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:54056 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:54060 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:54060 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev171","title":"ghcr.io/docling-project/docling-serve:v1.7.1","text":"Click to expand ###### Message Click to collapse
Tag v1.7.1 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:01:17,311 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,314 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:33120 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:33136 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:33136 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev172","title":"ghcr.io/docling-project/docling-serve:v1.7.2","text":"Click to expand ###### Message Click to collapse
Tag v1.7.2 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:32,060 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,064 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:32,291 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,292 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60552 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60562 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60562 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev180","title":"ghcr.io/docling-project/docling-serve:v1.8.0","text":"Click to expand ###### Message Click to collapse
Tag v1.8.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:37,497 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,499 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:37,712 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,713 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:51968 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:51980 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:51980 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"docling-serve/serve-client/#ghcriodocling-projectdocling-servev190","title":"ghcr.io/docling-project/docling-serve:v1.9.0","text":"Click to expand ###### Message Click to collapse
Tag v1.9.0 is ok\n
###### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:05:21,583 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,584 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49084 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49094 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49094 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/","title":"Results for ghcr.io/docling-project/docling-serve as of 2025-12-02T01:05:31.617877845Z","text":"

Here are the results:

Tag Result Details v1.0.1 \u2705 SUCCESS Click for run details v1.1.0 \u2705 SUCCESS Click for run details v1.0.0 \u2705 SUCCESS Click for run details v1.2.1 \u2705 SUCCESS Click for run details v1.2.2 \u2705 SUCCESS Click for run details v1.2.0 \u2705 SUCCESS Click for run details v1.3.1 \u2705 SUCCESS Click for run details v1.3.0 \u2705 SUCCESS Click for run details v1.4.0 \u2705 SUCCESS Click for run details v1.5.0 \u2705 SUCCESS Click for run details v1.4.1 \u2705 SUCCESS Click for run details v1.5.1 \u2705 SUCCESS Click for run details v1.6.0 \u2705 SUCCESS Click for run details v1.7.0 \u2705 SUCCESS Click for run details v1.7.1 \u2705 SUCCESS Click for run details v1.7.2 \u2705 SUCCESS Click for run details v1.8.0 \u2705 SUCCESS Click for run details v1.9.0 \u2705 SUCCESS Click for run details"},{"location":"includes/docling-serve/serve-compatibility/#details","title":"Details","text":""},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev101","title":"ghcr.io/docling-project/docling-serve:v1.0.1","text":"Click to expand #### Message Click to collapse
Tag v1.0.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:59886 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:59890 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:59890 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev110","title":"ghcr.io/docling-project/docling-serve:v1.1.0","text":"Click to expand #### Message Click to collapse
Tag v1.1.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:40006 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:40014 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:40014 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev100","title":"ghcr.io/docling-project/docling-serve:v1.0.0","text":"Click to expand #### Message Click to collapse
Tag v1.0.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:38522 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:38534 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:38534 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev121","title":"ghcr.io/docling-project/docling-serve:v1.2.1","text":"Click to expand #### Message Click to collapse
Tag v1.2.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49312 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49328 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49328 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev122","title":"ghcr.io/docling-project/docling-serve:v1.2.2","text":"Click to expand #### Message Click to collapse
Tag v1.2.2 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50440 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50452 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50452 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev120","title":"ghcr.io/docling-project/docling-serve:v1.2.0","text":"Click to expand #### Message Click to collapse
Tag v1.2.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49238 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49250 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49250 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev131","title":"ghcr.io/docling-project/docling-serve:v1.3.1","text":"Click to expand #### Message Click to collapse
Tag v1.3.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49294 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49304 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49304 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev130","title":"ghcr.io/docling-project/docling-serve:v1.3.0","text":"Click to expand #### Message Click to collapse
Tag v1.3.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60976 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60982 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60982 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev140","title":"ghcr.io/docling-project/docling-serve:v1.4.0","text":"Click to expand #### Message Click to collapse
Tag v1.4.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:39904 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:39920 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:39920 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev150","title":"ghcr.io/docling-project/docling-serve:v1.5.0","text":"Click to expand #### Message Click to collapse
Tag v1.5.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:34606 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:34620 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:34620 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev141","title":"ghcr.io/docling-project/docling-serve:v1.4.1","text":"Click to expand #### Message Click to collapse
Tag v1.4.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:46264 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:46272 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:46272 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev151","title":"ghcr.io/docling-project/docling-serve:v1.5.1","text":"Click to expand #### Message Click to collapse
Tag v1.5.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:43484 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:43496 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:43496 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev160","title":"ghcr.io/docling-project/docling-serve:v1.6.0","text":"Click to expand #### Message Click to collapse
Tag v1.6.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:50858 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:50872 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:50872 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev170","title":"ghcr.io/docling-project/docling-serve:v1.7.0","text":"Click to expand #### Message Click to collapse
Tag v1.7.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:54056 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:54060 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:54060 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev171","title":"ghcr.io/docling-project/docling-serve:v1.7.1","text":"Click to expand #### Message Click to collapse
Tag v1.7.1 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:01:17,311 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,314 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,419 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:01:17,463 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:33120 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:33136 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:33136 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev172","title":"ghcr.io/docling-project/docling-serve:v1.7.2","text":"Click to expand #### Message Click to collapse
Tag v1.7.2 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:32,060 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,064 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,216 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:32,291 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:32,292 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:60552 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:60562 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:60562 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev180","title":"ghcr.io/docling-project/docling-serve:v1.8.0","text":"Click to expand #### Message Click to collapse
Tag v1.8.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:04:37,497 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,499 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,635 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:04:37,712 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:04:37,713 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:51968 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:51980 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:51980 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"},{"location":"includes/docling-serve/serve-compatibility/#ghcriodocling-projectdocling-servev190","title":"ghcr.io/docling-project/docling-serve:v1.9.0","text":"Click to expand #### Message Click to collapse
Tag v1.9.0 is ok\n
#### Docling server logs click to expand
Starting production server \ud83d\ude80\n\nServer started at http://0.0.0.0:5001\nDocumentation at http://0.0.0.0:5001/docs\nScalar docs at http://0.0.0.0:5001/scalar\n\nLogs:\nINFO:     Started server process [1]\nINFO:     Waiting for application startup.\n[INFO] 2025-12-02 01:05:21,583 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,584 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_infer.onnx\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,653 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_infer.onnx\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] base.py:22: Using engine_name: onnxruntime\n[INFO] 2025-12-02 01:05:21,689 [RapidOCR] main.py:53: Using /opt/app-root/src/.cache/docling/models/RapidOcr/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_infer.onnx\nINFO:     Application startup complete.\nINFO:     Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)\nINFO:     172.17.0.1:49084 - \"GET /health HTTP/1.1\" 200 OK\nINFO:     172.17.0.1:49094 - \"GET /health HTTP/1.1\" 200 OK\nWARNING:docling_core.types.doc.document:Parameter `strict_text` has been deprecated and will be ignored.\nINFO:     172.17.0.1:49094 - \"POST /v1/convert/source HTTP/1.1\" 200 OK\n
"}]} \ No newline at end of file diff --git a/0.3.1/testcontainers/index.html b/0.3.1/testcontainers/index.html index 69d5b246..babe6076 100644 --- a/0.3.1/testcontainers/index.html +++ b/0.3.1/testcontainers/index.html @@ -919,6 +919,7 @@

Testcontainers#

+

docling-testcontainers version

The docling-testcontainers module provides a ready-to-use Testcontainers integration for running a Docling Serve instance in your tests. It wraps the official container image and exposes a simple Java API so you can spin up Docling as part of your JUnit test lifecycle and exercise client code against a real server.

If you need to talk to a running server from your application code, pair this module with the reference HTTP client: - docling-serve-client

diff --git a/0.3.1/whats-new/index.html b/0.3.1/whats-new/index.html index be0b7988..2830135b 100644 --- a/0.3.1/whats-new/index.html +++ b/0.3.1/whats-new/index.html @@ -78,7 +78,7 @@
- + Skip to content @@ -475,6 +475,30 @@ + + @@ -758,6 +782,30 @@ + + @@ -779,9 +827,15 @@ -

What's New in Docling Java 0.3.1#

+

What's New in Docling Java#

Docling Java 0.3.1 provides a number of new features, enhancements, and bug fixes. This page includes the highlights of the release, but you can also check out the full release notes for more details about each new feature and bug fix.

Docling Serve#

+

0.3.1#

+ +

0.3.0#

@@ -758,6 +782,30 @@ + + @@ -779,9 +827,15 @@ -

What's New in Docling Java 0.3.1#

+

What's New in Docling Java#

Docling Java 0.3.1 provides a number of new features, enhancements, and bug fixes. This page includes the highlights of the release, but you can also check out the full release notes for more details about each new feature and bug fix.

Docling Serve#

+

0.3.1#

+ +

0.3.0#