Температура
Температура — гиперпараметр сэмплирования языковых моделей, на который делятся логиты перед применением softmax: высокое значение делает распределение токенов более равномерным и разнообразным, низкое — более сфокусированным; при температуре, стремящейся к 0, модель всегда выбирает наиболее вероятный токен.
Температура (temperature) в языковых моделях — скалярный коэффициент T, применяемый к логитам перед softmax по формуле p_i = exp(z_i / T) / Σ exp(z_j / T). Термин заимствован из статистической механики, где температура управляет распределением частиц по энергетическим состояниям: при высокой температуре состояния занимаются равновероятно, при низкой — система стремится к минимуму энергии.
При T < 1 (например, 0,2–0,5) распределение обостряется: высоковероятные токены получают ещё большую долю, генерация становится предсказуемой и повторяемой. При T > 1 (1,2–2,0) распределение сглаживается, возрастает разнообразие, но снижается связность. При T → 0 сэмплирование вырождается в жадное декодирование (greedy decoding) — всегда выбирается токен с максимальной вероятностью; это детерминированный режим.
Выбор температуры критически зависит от задачи. Для задач с однозначными ответами — математика, код, извлечение фактов — используют T в диапазоне 0–0,3. Для диалоговых систем — T ≈ 0,7–1,0. Для творческих задач (сторителлинг, генерация идей) — T ≈ 1,0–1,3. Чрезмерно высокая температура провоцирует галлюцинации и грамматические ошибки.
В API OpenAI, Anthropic Claude, Google Gemini температура — один из базовых параметров каждого запроса. Большинство чат-интерфейсов по умолчанию используют T ≈ 1,0. Исследования 2024–2025 годов показывают, что оптимальная температура зависит от размера модели и домена, что стимулирует разработку адаптивных и per-token схем управления температурой.