---
title: "VisionSettings"
canonical_url: "https://www.nutrient.io/api/python/settings/vision/vision-settings/"
md_url: "https://www.nutrient.io/api/python/settings/vision/vision-settings.md"
last_updated: "2026-06-12T15:43:20.748Z"
description: "Settings for Vision. Values fall back through three levels: document → SDK → built-in default."
---

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`

```python

from nutrient_sdk import VisionSettings

```

## Construction

`VisionSettings` is accessed through a [`Document`](/api/python/document/) instance for per-document overrides, or via [`SdkSettings`](/api/python/settings/document/sdk-settings/) for SDK-wide defaults.

```python

# 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

```python

@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`](/api/python/enums/ocr-activation-mode/)

**Default:** `OcrActivationMode.Auto`

---

### enable_vlm

```python

@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. also enables this behavior for backward-compatible engine selection.

**Type:** `bool`

**Default:** `false`

---

### engine

```python

@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`](/api/python/enums/vision-engine/)

**Default:** `VisionEngine.Icr`

---

### features

```python

@property
def features(self) -> VisionFeatures

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

```

Vision features to enable during document processing.

**Type:** [`VisionFeatures`](/api/python/enums/vision-features/)

**Default:** `VisionFeatures.All`

---

### output_format

```python

@property
def output_format(self) -> VisionOutputFormat

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

```

Format of content returned by. Defaults to.

**Type:** [`VisionOutputFormat`](/api/python/enums/vision-output-format/)

**Default:** `VisionOutputFormat.Json`

---

### provider

```python

@property
def provider(self) -> VlmProvider

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

```

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

**Type:** [`VlmProvider`](/api/python/enums/vlm-provider/)

**Default:** `VlmProvider.Custom`

---

---

## Related pages

- [Vision](/api/python/settings/vision.md)

