Параметры
Все поля запроса chat completions — что роутер проверяет, что меняет, что передает провайдеру и где работает каждое поле.
Как роутер обрабатывает параметры
- Проверяет роутер:
model,models,messages,stream,max_tokens,max_completion_tokens,tools,response_formatиprovider. Неверный тип или значение — это400, где поле названо вerror.metadata.fields. - Передаются как есть: любое другое поле уходит провайдеру без изменений. Поддерживает ли его модель, зависит от модели: смотрите
supported_parametersмодели вGET /api/v1/modelsили в каталоге. Неподдерживаемые параметры модель игнорирует. - Удаляются в регионе Россия: для моделей
ru-1/…иru-2/…роутер молча удаляетprovider,models,route,transforms,plugins,usage,include_reasoning,reasoning,web_search_options,predictionиdebug.reasoning.effortпревращается вreasoning_effort.
В карточках ниже Регионы показывает, где работает поле: Глобальный (ID вида vendor/model) и Россия (ru-1/…, ru-2/…).
Модель и сообщения
modelstring- Регионы
- Глобальный, Россия
ID модели из каталога. Обязателен, если не передан models.
modelsstring[]- Регионы
- Глобальный, Россия
Резервные модели, которые пробуются по порядку после model, если у модели нет маршрута или она дала сбой до первого токена. Всего не больше 3 попыток на запрос. См. Модели и маршрутизация.
messagesobject[]Обязательный- Регионы
- Глобальный, Россия
Диалог. У каждого сообщения должна быть role. См. Chat completions.
streamboolean- По умолчанию
false- Регионы
- Глобальный, Россия
Отправлять ответ в виде server-sent events. См. Потоковый ответ.
Длина ответа
max_tokensinteger- По умолчанию
4096- Диапазон
- 1 to 65536
- Регионы
- Глобальный, Россия
Максимум токенов, которые может сгенерировать модель. Перед запросом роутер резервирует средства на это число токенов (не больше собственного лимита вывода модели), поэтому меньшее значение требует и меньшего баланса. Значения больше 65536 отклоняются с 400.
max_completion_tokensinteger- Диапазон
- 1 to 65536
- Регионы
- Глобальный, Россия
Новое название того же лимита. Если заданы оба, к обоим применяется меньшее значение.
Сэмплирование
temperaturenumber- Диапазон
- 0 to 2
- Регионы
- передается без проверки
Случайность ответа: ниже — предсказуемее, выше — разнообразнее. Значение по умолчанию зависит от модели, обычно 1.
top_pnumber- Диапазон
- 0 to 1
- Регионы
- передается без проверки
Nucleus sampling: учитываются только токены в пределах этой суммарной вероятности. Меняйте либо temperature, либо top_p, но не оба.
top_kinteger- Регионы
- передается без проверки
Учитываются только K самых вероятных токенов. 0 отключает ограничение. Поддерживают не все модели.
frequency_penaltynumber- Диапазон
- -2 to 2
- Регионы
- передается без проверки
Штрафует токены пропорционально тому, сколько раз они уже встречались; положительные значения уменьшают повторы.
presence_penaltynumber- Диапазон
- -2 to 2
- Регионы
- передается без проверки
Штрафует любой уже встречавшийся токен; положительные значения подталкивают модель к новым темам.
repetition_penaltynumber- Диапазон
- 0 to 2
- Регионы
- передается без проверки
Уменьшает повтор токенов из входных данных; 1 означает отсутствие штрафа. В основном для открытых моделей.
min_pnumber- Диапазон
- 0 to 1
- Регионы
- передается без проверки
Минимальная вероятность токена относительно самого вероятного.
seedinteger- Регионы
- передается без проверки
Делает сэмплирование воспроизводимым, если провайдер это поддерживает. Одинаковые seed и параметры обычно, но не всегда, дают одинаковый ответ.
stopstring | string[]- Регионы
- передается без проверки
Последовательности, на которых генерация останавливается; сама последовательность не возвращается.
logit_biasobject- Регионы
- передается без проверки
ID токенов и смещение от -100 до 100 для каждого: делает эти токены более или менее вероятными.
logprobsboolean- Регионы
- передается без проверки
Возвращать логарифмы вероятностей выходных токенов. top_logprobs (от 0 до 20) дополнительно возвращает самые вероятные альтернативы.
Инструменты и структурированный вывод
toolsobject[]- Регионы
- Глобальный, Россия
Функции, которые может вызвать модель, в формате OpenAI. Непустой список отправляет запрос только на маршруты с поддержкой инструментов. См. Вызов инструментов.
tool_choicestring | object- Регионы
- передается без проверки
auto, none, required или объект с именем одной функции.
parallel_tool_callsboolean- Регионы
- передается без проверки
Может ли модель запросить несколько вызовов инструментов в одном ответе.
response_formatobject- Регионы
- Глобальный, Россия
{"type": "json_object"} запрашивает валидный JSON; {"type": "json_schema", "json_schema": …} запрашивает JSON по схеме и отправляет запрос только на маршруты с поддержкой структурированного вывода. См. Структурированный вывод.
Рассуждения
reasoningobject- Регионы
- Глобальный
Управляет рассуждениями моделей: effort (minimal, low, medium, high), или max_tokens для бюджета рассуждений, exclude: true, чтобы не включать рассуждения в ответ, enabled. В регионе Россия сохраняется только effort — как reasoning_effort. См. Рассуждения.
reasoning_effortstring- Регионы
- передается без проверки
Сокращение OpenAI для reasoning.effort.
Маршрутизация и приватность
providerobject- Регионы
- Глобальный, Россия
Куда может уйти запрос. Сам роутер применяет:
only,ignore,order: списки slug провайдеров; slugruобозначает регион Россия;allow_fallbacks(boolean):falseоставляет один маршрут на модель;zdr(boolean):trueотправляет запрос только моделям с эндпоинтом без хранения данных (ZDR);data_collection(allowилиdeny):denyисключает провайдеров, которые могут хранить данные или обучаться на них.
Остальные ключи объекта уходят в регион Глобальный как есть, без гарантий. См. Модели и маршрутизация и Без хранения данных (ZDR).
Другие поля
userstring- Регионы
- передается без проверки
Ваш ID конечного пользователя. Роутер его не хранит; некоторые провайдеры используют его для выявления злоупотреблений.
usageobject- Регионы
- Глобальный
Игнорируется: роутер всегда запрашивает usage, и в каждом ответе есть usage с cost.
stream_optionsobject- Регионы
- передается без проверки
include_usage в потоке всегда включен: последний чанк перед [DONE] содержит usage.
Поля, которых нет в этом списке, передаются провайдеру как есть. Роутер никогда не возвращает ошибку из-за неизвестного поля, но модель может его проигнорировать.