Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.reducto.ai/llms.txt

Use this file to discover all available pages before exploring further.

Reducto continuously improves the models powering document processing. This page explains how versioning works and how to control which version you use. For the current status of each model version, see Model Versions.

How Versioning Works

Each model version progresses through four stages:
  1. Alpha: New version available for opt-in testing via the alpha config
  2. Default: Automatically used for all requests
  3. Deprecated: Old default, still accessible via alpha config
  4. Removed: No longer available
Requesting an unknown or removed version returns an error listing the available versions.

Rollout Process

New model versions follow a 4-week rollout window:
  1. Weeks 1-2 (Alpha): The new version is available for opt-in testing. You can pin to the new version via the alpha config to evaluate it against your workloads before it becomes the default.
  2. Week 3 (Default): The new version becomes the default for all requests. The previous default is demoted to deprecated status.
  3. Weeks 3-4 (Deprecated): The previous default remains accessible via version pinning for 2 weeks after being replaced. Use this window to migrate any workflows that depend on the old version’s behavior.
This gives you a guaranteed 4-week window, 2 weeks before and 2 weeks after a version becomes the default, to test and transition between versions.
Reducto is deployed as a monolith, so fully frozen snapshots of previous versions are not available outside of on-prem/VPC deployments. Version pinning during the rollout window is the supported mechanism for managing behavioral changes.

Pinning a Version

To pin a specific version, pass it in your request’s settings.alpha config:
# Layout version pinning (parse)
result = client.parse.run(
    input="https://example.com/document.pdf",
    settings={
        "alpha": {
            "layout_model": "v2"
        }
    }
)

# Extract version pinning (requires citations enabled)
result = client.extract.run(
    input="https://example.com/document.pdf",
    instructions={"schema": {...}},
    settings={
        "citations": {"enabled": True},
        "alpha": {
            "extract_model": "v2"
        }
    }
)
Model versioning only changes processing behavior. It does not break the API contract. If a pinned version is unknown or has been removed, the request returns an error listing the available versions.