> ## Documentation Index
> Fetch the complete documentation index at: https://openrouter.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Modality

Restrict to models for a modality surface: `text` / `image_output` match output modality, `image` / `audio` match input modality, and `tool_calling` keeps only rows that recorded at least one tool call. Exact dataset — cannot be combined with `category` or `language_type`.

## Example Usage

```python theme={null}
from openrouter.operations import Modality

# Open enum: unrecognized values are captured as UnrecognizedStr
value: Modality = "text"
```

## Values

This is an open enum. Unrecognized values will not fail type checks.

* `"text"`
* `"image"`
* `"image_output"`
* `"audio"`
* `"tool_calling"`
