Skip to main content
A Document Pre-Trained Transformer (DPT) is the model that powers the Parse API. The model identifies a document’s layout, transcribes the content into Markdown in reading order, and records where every block sits on the page. The Parse API has two model families:
  • DPT-3 Pro delivers the highest parsing quality. This is the default model.
  • DPT-3 Verity parses digitally created text documents with lower latency and lower credit consumption. This model is in preview.
Set the model with the model parameter on Parse and Parse Jobs requests. Requests that omit model use the latest DPT-3 Pro snapshot.

DPT-3 Pro vs. DPT-3 Verity

DPT-3 Pro and DPT-3 Verity both run on the same endpoints, accept the same file types, and return the same response shape. They differ in what they read and what they return: DPT-3 Pro handles more document styles and content types, while DPT-3 Verity returns results faster, consumes fewer credits, and adds per-word confidence scores.

DPT-3 Pro

DPT-3 Pro is the default model and the right choice for most workloads. Use it for scanned or handwritten documents, non-Latin scripts, math formulas, and complex forms. It generates detailed descriptions for figures, formats the Markdown output with headings, bold, underline, and italics, and grounds text down to the visual line.

DPT-3 Verity

DPT-3 Verity is optimized for digitally created text documents, such as generated PDFs and Office files, and has lower latency than DPT-3 Pro. In the Markdown output, it often renders the bracketed descriptions of visual content (logos, scan codes, and the visual marks in attestations) as generic markers such as [VISUAL_TEXT] rather than descriptive phrases. DPT-3 Verity grounds text, marginalia, and table cells at the word level: the atomic_grounding array has one entry per word, and each entry carries a confidence value between 0 and 1 that reflects how certain the model is that it transcribed the word correctly. See Atomic Grounding. DPT-3 Verity consumes fewer credits than DPT-3 Pro. For rates, see Credit Consumption.
DPT-3 Verity was renamed from DPT-3 Fast. Requests that pin the earlier dpt-3-fast values keep working, so no code change is required.

Model Versions and Snapshots

The following table lists the available model values for Parse and Parse Jobs:
Some snapshots have been superseded: a newer snapshot replaced them, and they no longer appear in the table above. If you pin a superseded snapshot, your requests still succeed. The API resolves the name to the current snapshot and reports the current version in metadata.model_version. Update pinned code to a value from the table.

Why Model Versioning Matters

When integrating the API, you have two options for specifying the model:
  1. Use a general model name (like dpt-3-pro or dpt-3-pro-latest) to always get the newest version. This automatically gives you improvements and updates, but parsing results may change when new model versions are released.
  2. Use a specific snapshot (like dpt-3-pro-20260710) to pin to an exact model version. Your results stay consistent for as long as the snapshot is available, but you won’t receive improvements.
If you use only a general model name like dpt-3-pro in production, your application may produce different results when we release model updates. Consider whether you need consistent results or prefer to receive the latest improvements.

Understanding Snapshots and -latest

Snapshots are frozen versions of a model released on specific dates. A snapshot’s parsing behavior never changes while it is available, making your results predictable. When a snapshot is superseded, its name resolves to the current snapshot instead of failing. The latest suffix always points to the most recent snapshot of that model family, and the bare family name is equivalent to -latest. Whichever form you send, the response reports the snapshot that actually ran in metadata.model_version, so pinned code can detect a change.

Set the Model

Supply the value in the model form field on the request. For the full request reference, see Parse Input Parameters. To set the model in the Python and TypeScript libraries, see Python Library and TypeScript Library. To select the model in the Playground, use the model drop-down menu. For example, this request creates a Parse Job that uses the latest DPT-3 Pro snapshot: