Обзор
Управлять длиной ответа модели полезно по нескольким причинам: это помогает контролировать стоимость (так как оплата идет за токен), снижает задержку и повышает производительность (короткие ответы возвращаются быстрее), а также сохраняет релевантность, предотвращая слишком длинный или многословный вывод.
Для этого можно использовать лимиты токенов, настройки рассуждений и подробности, четкие инструкции, примеры и stop-последовательности. Самые актуальные и полные сведения всегда смотрите в официальном справочнике API на platform.openai.com.
Задайте максимальную длину вывода
Responses API
Используется для моделей GPT-5 и большинства моделей o-series: применяйте max_output_tokens, чтобы ограничить число токенов, которые сгенерирует модель. Для запросов compaction_trigger либо не указывайте max_output_tokens, либо задайте значение не меньше 20000; меньшие значения отклоняются. Responses API не поддерживает несколько завершений (n).
API завершения чата
Используется для устаревших GPT-3.5, GPT-4o и иногда для o-series.
Для моделей рассуждений, таких как o3 и o4-mini, используйте
max_completion_tokens(псевдонимmax_tokens).Для более ранних моделей и моделей без рассуждений
max_tokensпо-прежнему работает.Поддерживает
stopиn(несколько завершений).
Примечание. Настройки «минимальное число токенов» нет. Если вам нужна минимальная длина, укажите ее в промпте.
Ограничения токенов по группам моделей
Актуальные ограничения токенов, размеры контекста и лимиты вывода см. в документации по конкретной модели.
Короткие примеры
Responses API
{ "model": "gpt-5", "input": "Кратко изложи выводы примерно в 80 словах.", "max_output_tokens": 120 }Chat Completions (модель рассуждений)
{ "model": "o3-mini", "messages": [{"role": "user", "content": "Напиши пять вариантов по одной строке."}], "max_completion_tokens": 100 }Специальные параметры моделей GPT-5: verbosity и reasoning.effort
Эти параметры доступны только в моделях GPT-5 (gpt-5.2, gpt-5.2-chat-latest, gpt-5.2 pro и т. д.). Модели O-series и устаревшие модели их не поддерживают.
`verbosity` принимает значения "low", "medium" (по умолчанию) или "high". Этот параметр влияет на уровень детализации, но не на жесткие ограничения.
{ "model": "gpt-5", "input": "Объясни PageRank на общем уровне.", "text": { "verbosity": "low" }, "max_output_tokens": 200 }`reasoning.effort` управляет тем, сколько токенов рассуждений генерируется до выдачи ответа. GPT-5.2 поддерживает none,low, medium, high,and xhigh. gpt-5.2-pro поддерживает только medium, high,and xhigh. Более ранние модели рассуждений поддерживают только low, medium и high.
{ "model": "gpt-5", "input": "Сколько золота потребуется, чтобы покрыть Статую Свободы слоем толщиной 1 мм?", "reasoning": { "effort": "minimal" } }Можно установить `reasoning.effort` равным none, чтобы модель вела себя как модель без рассуждений в сценариях, чувствительных к задержке.
Давайте конкретные инструкции
Укажите точную длину или формат, который вам нужен. Примеры:
«Перечисли ровно пять вариантов».
«Напиши резюме из 50 слов».
«Не более 100 токенов. Если нужно больше, напишите: «Нужно больше места».»
Используйте примеры одинаковой длины
Few-shot примеры, соответствующие желаемой длине, помогают модели продолжать заданный шаблон.
Стратегически используйте stop-последовательности
Используйте stop, чтобы остановить генерацию, когда модель достигнет разделителя или границы нумерованного списка.
{ "stop": ["\n###", "6."] }Несколько кандидатов
Chat Completions:
nвозвращает несколько завершений за один вызов.Responses API:
nне поддерживается; если нужно больше одного вывода, выполните несколько вызовов.
