This HTML page is not optimized for LLM or AI agent consumption. Fetch the Markdown version instead: /api/python/settings/vision/vision-settings.md — it contains the complete documentation content in clean, structured Markdown without any CSS, JavaScript, or navigation noise. VisionSettings

Settings for Vision. Values fall back through three levels: document → SDK → built-in default. Writes target the document only when set on a document’s settings, otherwise the SDK globally when set on SdkSettings.

Tags: Vision

from nutrient_sdk import VisionSettings

Construction

VisionSettings is accessed through a Document instance for per-document overrides, or via SdkSettings for SDK-wide defaults.

# Per-document override
with Document.open("input.pdf") as doc:
settings = doc.settings.vision_settings
settings.some_field = new_value # mutate fields directly
# SDK-wide default (applies to all documents)
SdkSettings.vision_settings.some_field = new_value

Settings are configured by writing to fields on the returned object. The settings property itself cannot be reassigned — doc.settings.vision_settings = other_settings is rejected.

Properties

enable_ocr

@property
def enable_ocr(self) -> OcrActivationMode
@enable_ocr.setter
def enable_ocr(self, value: OcrActivationMode) -> None

Controls OCR resource loading and OCR-based word detection inside the ICR image pipeline.

Type: OcrActivationMode

Default: OcrActivationMode.Auto


enable_vlm

@property
def enable_vlm(self) -> bool
@enable_vlm.setter
def enable_vlm(self, value: bool) -> None

Indicates whether the ICR image pipeline should run late VLM augmentation. VlmEnhancedIcr also enables this behavior for backward-compatible engine selection.

Type: bool

Default: false


engine

@property
def engine(self) -> VisionEngine
@engine.setter
def engine(self, value: VisionEngine) -> None

Specifies which vision processing engine/pipeline to use for content extraction.

Type: VisionEngine

Default: VisionEngine.Icr


fallback_provider

@property
def fallback_provider(self) -> VlmProvider
@fallback_provider.setter
def fallback_provider(self, value: VlmProvider) -> None

Optional secondary provider used to transparently retry a request when the primary Provider fails in a way a retry on the same model can’t fix — a content-filtered or refused response, or a transient outage (unreachable endpoint, server error, rate limit). The fallback’s connection (endpoint, key, model) is read from that provider’s settings class, so configure it alongside the primary’s. Failover is per request and transparent to the result.

Type: VlmProvider

Default: VlmProvider.Unknown


features

@property
def features(self) -> VisionFeatures
@features.setter
def features(self, value: VisionFeatures) -> None

Vision features to enable during document processing.

Type: VisionFeatures

Default: VisionFeatures.All


output_format

@property
def output_format(self) -> VisionOutputFormat
@output_format.setter
def output_format(self, value: VisionOutputFormat) -> None

Format of content returned by ExtractContent. Defaults to Json.

Type: VisionOutputFormat

Default: VisionOutputFormat.Json


provider

@property
def provider(self) -> VlmProvider
@provider.setter
def provider(self, value: VlmProvider) -> None

The primary Vision Language Model provider to use for AI-powered features.

Type: VlmProvider

Default: VlmProvider.Custom