Reasoning-модели тратят часть выходного бюджета на внутреннюю работу перед ответом или между вызовами tools. Более высокий effort обычно увеличивает качество сложных задач, но также задержку и расход.
В разных API#
Chat Completions часто использует top-level reasoning_effort.
Responses использует объект:
{
"reasoning": {
"effort": "medium"
}
}Anthropic Messages использует thinking и, у новых моделей, отдельный effort в output configuration.
Некоторые совместимые модели возвращают reasoning в reasoning_content. Это не универсальное поле и не гарантируется при кросс-диалектном преобразовании.
Уровни effort#
Допустимые уровни зависят от модели. Возможны none, minimal, low, medium, high, xhigh и max, но ни одна модель не обязана поддерживать их все.
Практический старт:
low— быстрые задачи, лёгкое планирование и простые tools;medium— основной баланс для анализа и агентной работы;high— сложная отладка, исследование и многошаговые решения;xhighилиmax— только если собственные тесты показывают пользу.
Не требуйте raw chain of thought#
Не используйте внутреннее рассуждение как обязательный пользовательский вывод, аудиторский журнал или доказательство корректности.
Для наблюдаемости сохраняйте:
итоговый ответ;
вызовы инструментов и их результаты;
reasoning summary, если модель его поддерживает;
usage и статус завершения;
собственные проверки результата.
Длинные агентные циклы#
При продолжении Responses не отбрасывайте типизированные reasoning и function Items, если вы вручную переносите контекст. При продолжении Messages сохраняйте thinking blocks и их подписи без изменений.
Снижение effort не исправляет плохой prompt. Сначала задайте цель, ограничения, формат результата и критерий готовности.