AI Smart Extract
AI Smart Extract turns PDF documents into structured data your systems can use directly. You give it a document and a schema that describes the fields you need, and it returns those fields and line items. For an invoice, that means the sender, the totals, and the individual line items. Each value comes with a confidence score and its location on the page, so you can review and trust the result. AI Smart Extract works with both digital PDFs and scanned documents.
AI Smart Extract is in the Early Access Program (EAP) and is under active development. It’s a pre-release preview, not the final product, and it doesn’t yet represent how AI Smart Extract will look or behave at general availability. Pdftools may change or remove anything described on this page, including the features, APIs, configuration, extraction output, deployment, and this documentation itself, without notice. Don’t build production workloads on it.
Access requires an evaluation license key from Pdftools sales. To request access, contact sales.
Run AI Smart Extract locally
The smart-extract-samples repository packages the product as a self-contained Docker stack for evaluation. A single command starts the following components:
- Extraction worker: The HTTP API, with an OpenAPI and Swagger reference.
- Web UI: Upload documents, build extraction schemas, and view extracted fields with their bounding boxes.
- Inference engine: The bundled vision language model (VLM). It runs in Docker with Ollama by default, or with vLLM on an NVIDIA GPU.
- Observability stack: Grafana, Prometheus, Loki, and Tempo for metrics, logs, and traces.
Quick start
Set up AI Smart Extract and start all services with two commands.
Prerequisites
Make sure you meet the following prerequisites:
- Docker with Compose v2 is installed.
- You have an evaluation license key from Pdftools sales.
- You have cloned the smart-extract-samples repository and opened a terminal in its root directory.
Start AI Smart Extract
To set up and start AI Smart Extract, complete the following steps:
-
Write your license key into a local
.envfile:./smart-extract.sh setup --license-key "LICENSE_KEY"Replace
LICENSE_KEYwith the evaluation license key you received from Pdftools sales. -
Start all services:
./smart-extract.sh upThe command waits until every service reports healthy. The first start downloads the model into the bundled engine, so it can take a few minutes.
When the command finishes, the following services are available:
- Web UI:
http://localhost:3000 - Swagger UI:
http://localhost:8000/docs, the full API reference - OpenAPI 3.x specification:
http://localhost:8000/openapi.json - Grafana:
http://localhost:3001, with the Smart Extract Overview dashboard - Prometheus:
http://localhost:9090
Deployment variants
Choose the variant that matches your hardware:
| Variant | Inference | Runs on |
|---|---|---|
ollama (default) | Ollama in Docker | Any machine |
ollama-local | Your machine’s own Ollama | macOS, or any host running Ollama |
vllm | vLLM in Docker | NVIDIA GPU |
For per-variant setup, ports, GPU prerequisites, API examples, and configuration, refer to the smart-extract-samples repository. The running worker serves the complete API reference at /docs (Swagger UI) and /openapi.json.
Licensing
AI Smart Extract is a commercial product by Pdftools. Running it requires a valid license key. Without a valid key, the service starts but reports unhealthy and rejects extraction requests. To get an evaluation key, contact sales.