> Для получения чистого Markdown любой страницы добавьте .md к URL страницы.  
> Для полного индекса документации см. https://api.vega.chat/docs/llms.txt.  
> Для полного содержания документации см. https://api.vega.chat/docs/llms-full.txt.  
> Для интеграции AI‑клиента (Claude Code, Cursor и др.) подключитесь к MCP‑серверу по адресу https://api.vega.chat/docs/_mcp/server.

# Auto Router

[Auto Router](https://api.vega.chat/openrouter/auto) (`openrouter/auto`) автоматически выбирает лучшую модель для вашего запроса, используя технологию [NotDiamond](https://www.notdiamond.ai/).

## Обзор

Вместо того чтобы вручную выбирать модель, позвольте Auto Router проанализировать ваш запрос и подобрать оптимальную модель из тщательно отобранного набора высококачественных вариантов. Маршрутизатор учитывает такие факторы, как сложность запроса, тип задачи и возможности модели.

## Использование

Установите модель в `openrouter/auto`:

```typescript title="TypeScript SDK"
import { OpenRouter } from '@openrouter/sdk';

const client = new OpenRouter({
  apiKey: '<VEGA_API_KEY>',
});

const completion = await client.chat.send({
  model: 'openrouter/auto',
  messages: [
    {
      role: 'user',
      content: 'Explain quantum entanglement in simple terms',
    },
  ],
});

console.log(completion.choices[0].message.content);
// Проверяем, какая модель была выбрана
console.log('Model used:', completion.model);
```

```typescript title="TypeScript (fetch)"
const response = await fetch('https://api.vega.chat/api/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <VEGA_API_KEY>',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'openrouter/auto',
    messages: [
      {
        role: 'user',
        content: 'Explain quantum entanglement in simple terms',
      },
    ],
  }),
});

const data = await response.json();
console.log(data.choices[0].message.content);
// Проверяем, какая модель была выбрана
console.log('Model used:', data.model);
```

```python title="Python"
import requests
import json

response = requests.post(
  url="https://api.vega.chat/api/v1/chat/completions",
  headers={
    "Authorization": "Bearer <VEGA_API_KEY>",
    "Content-Type": "application/json",
  },
  data=json.dumps({
    "model": "openrouter/auto",
    "messages": [
      {
        "role": "user",
        "content": "Explain quantum entanglement in simple terms"
      }
    ]
  })
)

data = response.json()
print(data['choices'][0]['message']['content'])
# Проверяем, какая модель была выбрана
print('Model used:', data['model'])
```

## Ответ

Ответ содержит поле `model`, показывающее, какая именно модель была использована:

```json
{
  "id": "gen-...",
  "model": "anthropic/claude-sonnet-4.5",  // Выбранная модель
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "..."
      }
    }
  ],
  "usage": {
    "prompt_tokens": 15,
    "completion_tokens": 150,
    "total_tokens": 165
  }
}
```

## Как это работает

1. **Анализ запроса**: ваш запрос анализируется системой маршрутизации NotDiamond.  
2. **Выбор модели**: оптимальная модель подбирается в зависимости от требований задачи.  
3. **Перенаправление запроса**: ваш запрос отправляется выбранной модели.  
4. **Отслеживание ответа**: в ответе присутствует метаданные, указывающие, какая модель использовалась.

## Поддерживаемые модели

Auto Router выбирает из тщательно отобранного набора высококачественных моделей, включая:

Слоги моделей меняются по мере выхода новых версий. Примеры ниже актуальны на 4 декабря 2025 года. Проверяйте [страницу моделей](/aimodels) для получения списка последних доступных моделей.

* Claude Sonnet 4.5 (`anthropic/claude-sonnet-4.5`)  
* Claude Opus 4.5 (`anthropic/claude-opus-4.5`)  
* GPT-5.1 (`openai/gpt-5.1`)  
* Gemini 3.1 Pro (`google/gemini-3.1-pro-preview`)  
* DeepSeek 3.2 (`deepseek/deepseek-v3.2`)  
* И другие топовые модели  

Набор моделей может обновляться по мере появления новых вариантов.

## Настройка разрешённых моделей

Вы можете ограничить набор моделей, из которых Auto Router может выбирать, используя параметр `plugins`. Это удобно, если нужно ограничить маршрутизацию определёнными провайдерами или семействами моделей.

### Через API‑запрос

Используйте шаблоны с подстановочными знаками для фильтрации моделей. Например, `anthropic/*` соответствует всем моделям Anthropic:

```typescript title="TypeScript SDK"
const completion = await client.chat.send({
  model: 'openrouter/auto',
  messages: [
    {
      role: 'user',
      content: 'Explain quantum entanglement',
    },
  ],
  plugins: [
    {
      id: 'auto-router',
      allowed_models: ['anthropic/*', 'openai/gpt-5.1'],
    },
  ],
});
```

```typescript title="TypeScript (fetch)"
const response = await fetch('https://api.vega.chat/api/v1/chat/completions', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer <VEGA_API_KEY>',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'openrouter/auto',
    messages: [
      {
        role: 'user',
        content: 'Explain quantum entanglement',
      },
    ],
    plugins: [
      {
        id: 'auto-router',
        allowed_models: ['anthropic/*', 'openai/gpt-5.1'],
      },
    ],
  }),
});
```

```python title="Python"
response = requests.post(
  url="https://api.vega.chat/api/v1/chat/completions",
  headers={
    "Authorization": "Bearer <VEGA_API_KEY>",
    "Content-Type": "application/json",
  },
  data=json.dumps({
    "model": "openrouter/auto",
    "messages": [
      {
        "role": "user",
        "content": "Explain quantum entanglement"
      }
    ],
    "plugins": [
      {
        "id": "auto-router",
        "allowed_models": ["anthropic/*", "openai/gpt-5.1"]
      }
    ]
  })
)
```

### Через пользовательский интерфейс настроек

Вы также можете задать набор разрешённых моделей по умолчанию в [настройках плагинов](https://api.vega.chat/settings/plugins):

1. Перейдите в **Settings > Plugins**  
2. Найдите **Auto Router** и нажмите кнопку настройки  
3. Введите шаблоны моделей (по одному в строке)  
4. Сохраните изменения  

Эти значения применяются ко всем вашим API‑запросам, если не переопределены в конкретном запросе.

### Синтаксис шаблонов

| Шаблон            | Соответствует                              |
| ----------------- | ------------------------------------------ |
| `anthropic/*`     | Все модели Anthropic                       |
| `openai/gpt-5*`   | Все варианты GPT‑5                         |
| `google/*`       | Все модели Google                          |
| `openai/gpt-5.1`  | Точное совпадение только этой модели       |
| `*/claude-*`      | Любой провайдер, у которого в названии модели есть `claude` |

Если шаблоны не заданы, Auto Router использует все поддерживаемые модели.

## Компромисс стоимость / качество

Регулируйте степень оптимизации Auto Router по соотношению стоимости и качества с помощью параметра `cost_quality_tradeoff` (целое число от 0 до 10):

* **0** = чистое качество — всегда выбирает самую мощную модель, независимо от цены  
* **10** = максимальная экономия — выигрывает самая дешевая модель  
* Промежуточные значения плавно комбинируют сигналы качества и стоимости  

По умолчанию значение **7**, что обеспечивает баланс между экономией и высоким качеством вывода.

### Через API‑запрос

```typescript title="TypeScript SDK"
const completion = await client.chat.send({
  model: 'openrouter/auto',
  messages: [
    {
      role: 'user',
      content: 'Summarize this paragraph',
    },
  ],
  plugins: [
    {
      id: 'auto-router',
      cost_quality_tradeoff: 3, // Приоритет качества над стоимостью
    },
  ],
});
```

```typescript title="TypeScript (fetch)"
const response = await fetch('https://api.vega.chat/api/v1/chat/completions', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer <VEGA_API_KEY>',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'openrouter/auto',
    messages: [
      {
        role: 'user',
        content: 'Summarize this paragraph',
      },
    ],
    plugins: [
      {
        id: 'auto-router',
        cost_quality_tradeoff: 3,
      },
    ],
  }),
});
```

```python title="Python"
response = requests.post(
  url="https://api.vega.chat/api/v1/chat/completions",
  headers={
    "Authorization": "Bearer <VEGA_API_KEY>",
    "Content-Type": "application/json",
  },
  data=json.dumps({
    "model": "openrouter/auto",
    "messages": [
      {
        "role": "user",
        "content": "Summarize this paragraph"
      }
    ],
    "plugins": [
      {
        "id": "auto-router",
        "cost_quality_tradeoff": 3
      }
    ]
  })
)
```

### Через пользовательский интерфейс настроек

Вы также можете задать значение компромисса по умолчанию в [настройках плагинов](https://api.vega.chat/settings/plugins) в разделе **Auto Router**. Значение, указанное в конкретном запросе, переопределит это значение.

## Ценообразование

Вы платите стандартную ставку за ту модель, которая была выбрана. За использование Auto Router отдельной платы нет.

## Сценарии применения

* **Общие приложения**: когда заранее неизвестно, какие запросы будут отправлять пользователи  
* **Оптимизация расходов**: позволяете маршрутизатору выбирать более экономичные модели для простых задач  
* **Оптимизация качества**: гарантируете, что сложные запросы направляются к мощным моделям  
* **Эксперименты**: исследуете, какие модели лучше подходят под ваш кейс

## Ограничения

* Маршрутизатор требует формат `messages` (не `prompt`)  
* Поддерживается потоковая передача  
* Все стандартные возможности VEGA (вызов инструментов и т.д.) работают с выбранной моделью

## Связанные материалы

* [Body Builder](/docs/guides/routing/routers/body-builder) — генерация нескольких параллельных API‑запросов  
* [Latest Model Resolution](/docs/guides/routing/routers/latest-resolution) — автоматический выбор новейшей версии семейства моделей  
* [Model Fallbacks](/docs/guides/routing/model-fallbacks) — настройка резервных моделей  
* [Provider Selection](/docs/guides/routing/provider-selection) — управление используемыми провайдерами