# ModelOption

> **Class** in `deepagents_code`

📖 [View in docs](https://reference.langchain.com/python/deepagents-code/widgets/model_selector/ModelOption)

A clickable model option in the selector.

## Signature

```python
ModelOption(
    self,
    label: str | Content,
    model_spec: str,
    provider: str,
    index: int,
    *,
    auth_status: ProviderAuthStatus | None = None,
    classes: str = '',
)
```

## Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `label` | `str \| Content` | Yes | Display content — a `Content` object (preferred) or a plain string that `Static` will parse as markup. |
| `model_spec` | `str` | Yes | The model specification (provider:model format). |
| `provider` | `str` | Yes | The provider name. |
| `index` | `int` | Yes | The index of this option in the filtered list. |
| `auth_status` | `ProviderAuthStatus \| None` | No | Provider auth/readiness status. (default: `None`) |
| `classes` | `str` | No | CSS classes for styling. (default: `''`) |

## Extends

- `Static`

## Constructors

```python
__init__(
    self,
    label: str | Content,
    model_spec: str,
    provider: str,
    index: int,
    *,
    auth_status: ProviderAuthStatus | None = None,
    classes: str = '',
) -> None
```

| Name | Type |
|------|------|
| `label` | `str \| Content` |
| `model_spec` | `str` |
| `provider` | `str` |
| `index` | `int` |
| `auth_status` | `ProviderAuthStatus \| None` |
| `classes` | `str` |


## Properties

- `model_spec`
- `index`
- `auth_status`
- `provider`

## Methods

- [`on_click()`](https://reference.langchain.com/python/deepagents-code/widgets/model_selector/ModelOption/on_click)

---

[View source on GitHub](https://github.com/langchain-ai/deepagents/blob/1f5aa621cce7d89395d2db1533f81a299d059a7a/libs/code/deepagents_code/widgets/model_selector.py#L108)