Температура модели: почему один вопрос даёт разные ответы
Задаёте боту один и тот же вопрос дважды — и получаете два разных ответа. За это отвечает невидимая ручка с физическим названием «температура». Покрутишь в одну сторону — сухой предсказуемый ответ, в другую — креатив и сюрпризы.
Одна невидимая ручка решает, будет модель занудно-предсказуемой или дерзко-изобретательной — и называется она температурой.
Температура управляет тем, насколько смело модель отступает от самого вероятного слова. Низкая — осторожность и повторяемость, высокая — риск и разнообразие.
Откуда вообще берётся выбор
Мы помним: на каждом шаге модель не выдаёт одно слово, а оценивает вероятности множества возможных продолжений. Скажем, после «Лучший напиток утром — это» она прикидывает: «кофе» 55%, «чай» 30%, «вода» 10%, «какао» 3%, дальше всякая экзотика. Дальше надо как-то выбрать одно. Вот тут и вступает температура.
Что делает ручка
Температура — это число, обычно от 0 до 2, которое искажает картину вероятностей перед выбором.
- Низкая температура (около 0): модель почти всегда хватает самый вероятный вариант. Разрыв между лидером и остальными как будто увеличивается — фаворит побеждает железно. Ответы становятся предсказуемыми и стабильными.
- Высокая температура (около 1 и выше): шансы выравниваются. Менее очевидные слова получают реальную возможность выскочить. Ответы делаются разнообразными, живыми, иногда неожиданными — а порой странными.
Бытовая аналогия — азартность игрока. Холодный, расчётливый игрок при низкой температуре всегда ставит на фаворита. Горячий, азартный при высокой — нет-нет да и поставит на тёмную лошадку, потому что «а вдруг».
Важно: температура ничего не добавляет в знания модели и не делает её умнее. Она лишь решает, насколько охотно модель отходит от самого вероятного слова на каждом шаге. Сами вероятности продолжений модель прикидывает одинаково — а температура только по-разному «перетасовывает» этот список перед тем, как из него вытянуть очередной токен. Поэтому одна и та же модель с разной температурой — это не разный ум, а разный темперамент.
Почему «температура»
Название пришло из физики. Там у горячих частиц больше энергии, они мечутся хаотичнее; у холодных — порядок и предсказуемость. Здесь та же метафора: «горячая» модель ведёт себя хаотичнее и непредсказуемее, «холодная» — упорядоченно и однообразно.
Когда какую крутить
Универсального «правильного» значения нет — оно зависит от задачи.
| Задача | Какая температура | Почему |
| Факт, перевод, код | низкая | нужен точный, воспроизводимый ответ |
| Деловое письмо | средняя | и корректно, и не сухо |
| Стихи, идеи, сюжеты | высокая | нужны разнообразие и неожиданность |
Если вам нужно, чтобы скрипт извлёк дату из текста, креатив тут вреден — ставьте холод. Если просите придумать десять названий для кафе, а получаете три раза подряд одно и то же — добавьте жара.
Крайности опасны
Ровный ноль делает модель максимально предсказуемой, но скучной: на длинных текстах она склонна повторяться и ходить по кругу. Слишком высокая температура, наоборот, развязывает ей руки до такой степени, что в текст лезут несуразицы и бессвязица — выравнивая шансы, мы даём дорогу не только смелым, но и совсем неуместным словам. Поэтому на практике держатся золотой середины, сдвигая ручку под конкретную задачу.
Кстати, именно температура отвечает за то, что один вопрос даёт разные ответы. При нулевой температуре ответы будут почти одинаковы от раза к разу. Чуть подняли — и каждый запуск немного свой. Это не каприз модели, а сознательно встроенная доля случайности.
Запомните образ: температура — это градус смелости модели. Холодно — она цитирует самый ожидаемый ответ. Горячо — рискует и удивляет. Хороший пользователь подбирает градус под задачу, а не воюет с разбросом ответов.