Параметры запроса
Открыть .md

Параметры запроса

Какие параметры шлюз передаёт модели на каждом эндпоинте, какие вырезает и какие отклоняет.

Шлюз передаёт модели только параметры из списка своего эндпоинта. Параметр вне списка молча вырезается: запрос выполняется, как если бы его не было. Поэтому параметр, который вы привыкли передавать в одном формате, в другом может тихо пропасть: например, seed принимает только /v1/chat/completions, а max_tokens в /v1/responses называется max_output_tokens.

Передаются модели

Шлюз проверяет только поле model; значения остальных параметров проверяет провайдер модели. Если он отклонил значение, ответ — 400 с кодом unsupported_value или invalid_value (см. Ошибки).

/v1/chat/completions

model, messages, stream, temperature, top_p, max_tokens, max_completion_tokens, stop, seed, n, presence_penalty, frequency_penalty, logit_bias, logprobs, top_logprobs, response_format, tools, tool_choice, parallel_tool_calls, functions, function_call, prediction, reasoning_effort, verbosity, prompt_cache_retention, top_k, min_p, repetition_penalty, thinking, enable_thinking, thinking_budget, reasoning

/v1/messages

model, messages, system, max_tokens, stop_sequences, stream, temperature, top_p, top_k, tools, tool_choice, thinking, cache_control, output_config (только effort и format; устаревшее output_format переносится в output_config.format)

/v1/responses

model, input, instructions, stream, temperature, top_p, top_logprobs, max_output_tokens, max_tool_calls, tools, tool_choice, parallel_tool_calls, reasoning, text, truncation, include, prompt_cache_retention

/v1/images/generations

model, prompt, n (приводится к диапазону 1–10), size, aspect_ratio, resolution, quality, background, image, images, output_format, output_compression, response_format

/v1/videos

model, prompt, seconds, duration, duration_seconds, size, aspect_ratio, resolution, image, images, video, input_reference, negative_prompt, seed

Особые случаи

  • stream_options вырезается, но "include_usage": true в /v1/chat/completions соблюдается: usage придёт последним чанком потока.
  • user, safety_identifier, prompt_cache_key и metadata провайдеру не передаются — шлюз ставит свои идентификаторы. Разные значения prompt_cache_key по-прежнему дают разные разделы кэша.
  • В /v1/responses store всегда false: переписка у провайдера не хранится.
  • Вырезаются без ошибки параметры, меняющие тариф или маршрут у провайдера: service_tier, inference_geo, speed, models, provider, route, transforms, plugins, а также веб-поиск и исполнение кода (web_search_options, mcp_servers, container и подобные).

Инструменты

В tools остаются только инструменты, которые исполняет ваш код или которые стоят одних токенов. Встроенные инструменты провайдера (веб-поиск, исполнение кода, поиск по файлам, MCP) молча убираются из списка.

ЭндпоинтОстаются в tools
/v1/chat/completionsfunction, custom
/v1/messagesваши инструменты (без type или custom) и клиентские инструменты Anthropic: bash_*, text_editor_*, memory_*, computer_*, browser_toolset_*, tool_search_tool_*
/v1/responsesfunction, custom, namespace, apply_patch, local_shell, computer, tool_search, shell с локальным окружением

Если после этого список опустел, tools, tool_choice и parallel_tool_calls удаляются, и модель отвечает без инструментов. Но если tool_choice требует вызвать инструмент, которого не осталось (required, конкретный инструмент, any), запрос отклоняется — см. ниже.

Отклоняются с ошибкой 400

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

ЭндпоинтЧто отклоняется
/v1/chat/completionsaudio, modalities с "audio", "deferred": true; части сообщений input_audio и file с file_id
/v1/messagescompaction; блоки image и document с source.type: "file", блоки container_upload
/v1/responses"background": true, previous_response_id, conversation, prompt; элементы input типа item_reference, части input_file и input_image с file_id
все текстовыеtools не массивом; tool_choice, требующий инструмент, которого нет в списке

В ответе приходит код unsupported_parameter и в поле param — имя параметра или путь к части сообщения, например messages[3].content[1]. Историю разговора передавайте целиком в каждом запросе: состояние на стороне провайдера шлюз не хранит.

Обновлено 29 сентября 2026 г.