В примерах ниже
$TEXT_MODEL — переменная окружения с идентификатором модели из GET /api/v1/models. Идентификаторы не зашивают в код: состав каталога меняется. Разбор — в разделе Модели и цены.Что это такое
Обычная модель выдаёт текст напрямую. Рассуждающая делает паузу, формулирует промежуточные шаги, проверяет себя и только потом пишет ответ. Пользователю это видно как пауза перед первым токеном ответа. Практические следствия:- Время до первого токена заметно больше, чем у обычной модели. При
stream: trueэто нормально, а не зависание. - Текст рассуждений не обязателен в ответе — см. раздел ниже.
- Стоимость растёт вместе с глубиной рассуждения, иногда в разы относительно обычного ответа той же длины.
Включение: reasoning_effort
Есть два равнозначных способа задать глубину. Значение effort, отличное от none, включает рассуждение.
Полная форма объекта
reasoning:
Ответ
cURL
reasoning и reasoning_content — один и тот же текст под двумя именами. Дублирование сделано для совместимости с разными SDK: часть читает reasoning, часть — reasoning_content. Берите любое, но не складывайте.Сколько токенов ушло на рассуждение
usage.completion_tokens_details.reasoning_tokens — объём рассуждения. Это подмножество completion_tokens, а не отдельная категория сверх него.
Python
Стоимость
Рассуждение тарифицируется по ставке выходных токенов, а у рассуждающих моделей выход обычно дороже всего. Механика простая: поднимаетеeffort — платите больше, потому что модель производит больше выходных токенов.
Иллюстрация без конкретных цен: при cost_completion из каталога и ответе, где 150 из 400 выходных токенов пришлись на рассуждение, в счёт уйдут все 400 по выходной ставке. Поднятие effort с low до high на одной и той же задаче обычно даёт рост выхода в разы при практически неизменном входе.
Python
effort, а минимальным, который решает задачу. На большинстве запросов low или medium дают тот же итоговый ответ, что и high, за в разы меньшую цену. Замерьте на своей выборке запросов долю рассуждения и итоговое качество — вместе.
Выбор уровня по классу задачи
Высокий
effort не делает модель «умнее в целом» — он даёт ей больше места на вывод. Если задача не выигрывает от развёрнутого хода мысли, вы платите за пустые токены.Рассуждение может не вернуться
Поэтому:- не стройте продукт, который показывает ход мысли пользователю — можете получить пустой блок;
- не рассчитывайте стоимость по видимому тексту: сверяйтесь с
usage; - для отладки используйте
usage.completion_tokens_details.reasoning_tokensкак признак того, что рассуждение шло.
В потоке
Что дальше
Модели и цены
Ставка за выход и контекстное окно
Учёт средств
Как читать
usage и costКэширование
Снижение цены длинного стабильного префикса
Запрос чату
Поля
reasoning и reasoning_effort