Что такое top-p — и почему в новых моделях эту ручку выкрутили с корнем

Смотри, какая ирония. Про top-p пишут во всех гайдах по API: «покрути top-p, и модель станет точнее». А в самых свежих моделях Anthropic — Opus 4.8, Sonnet 5 — эту ручку просто убрали. Отправишь top_p в запросе — получишь ошибку 400 вместо ответа.
Ручку, которую все советуют крутить, выкрутили с корнем. Давай разберёмся, что она делала — и почему её не жалко.
Что такое top-p простыми словами
Модель не выбирает следующее слово. Она раскладывает все слова по вероятностям: «дом» — 40%, «дым» — 12%, «дракон» — 0,003%. И так далее, до самого дна словаря.
Дальше из этой стопки надо что-то вытянуть. Если тянуть честно по вероятностям, однажды выпадет и «дракон» — редко, но выпадет. Один такой промах ломает весь ответ.
top-p (его умное имя — nucleus sampling) решает это грубо и эффективно: отрезает хвост.
Работает так. Складываем вероятности сверху вниз, пока сумма не дойдёт до p. Всё, что не влезло, — выбрасываем. При top_p = 0.9 модель берёт минимальный набор вариантов, который в сумме даёт 90% вероятности, и тянет только из него. «Дракон» остаётся за бортом.
Крайние значения полезно помнить:
top_p = 1.0— не режем ничего. Все слова в игре, включая дно.top_p = 0.9— рабочая классика. Хвост срезан, разнообразие живо.top_p = 0.1— оставили только самую верхушку. Ответы предсказуемые до скуки.
Заметь: размер «выжившего» набора плавает. Там, где модель уверена, 90% набирается одним словом. Там, где сомневается, — двадцатью. Это и есть фишка: порог не в количестве вариантов, а в вероятности.
Чем top-p отличается от температуры
Обе ручки лезут в одну и ту же стопку вероятностей, но делают разное.
Температура меняет форму стопки. Низкая — разрыв между лидером и остальными растёт, фаворит побеждает почти всегда. Высокая — вероятности выравниваются, у аутсайдеров появляется шанс. Температура никого не удаляет, она перевешивает.
top-p обрезает стопку. Форму не трогает, просто выкидывает хвост.
Разница на практике: температура давит на весь ответ целиком, top-p убирает только редкую дичь. Хочешь живой текст без внезапного «дракона» — это про top-p, а не про температуру.
Порядок тоже важен: сначала применяется температура, потом top-p режет уже изменённое распределение.
Почему нельзя крутить обе сразу
Это главный совет, который стоило дать первым: меняй одну ручку, вторую оставь по умолчанию.
Причина не в мистике, а в том, что эффекты перемножаются и становятся нечитаемыми. Высокая температура плюс низкий top-p — модель разогналась, а ей тут же отрезали всё, кроме верхушки: получаются обычные слова в странном порядке. Низкая температура плюс высокий top-p — резать уже нечего, распределение и так схлопнулось в одного фаворита.
В обоих случаях ты не поймёшь, какая ручка дала результат. И воспроизвести не сможешь.
Поэтому: крутишь temperature — оставь top_p = 1.0. Крутишь top_p — оставь температуру по умолчанию. Ровно это годами и советуют в документации всех провайдеров.
А если ручек больше нет
Тут и приходит поворот из начала. У свежих моделей Anthropic (Opus 4.8, Opus 4.7, Sonnet 5) параметры temperature, top_p и top_k не просто игнорируются — их удалили. Запрос с ними падает с ошибкой 400 invalid_request_error. Не «модель их не заметила», а «модель отказывается разговаривать».
Это не каприз. Логика простая: сэмплинг — слишком тупой инструмент для того, зачем его обычно крутили.
Ты ставил температуру в ноль ради стабильности? Она никогда не гарантировала одинаковых ответов — почему ИИ даёт разные ответы — так что гарантия была воображаемой. Ты поднимал температуру ради креатива? Скажи об этом словами: «предложи четыре разных варианта, не похожих друг на друга» работает точнее любого ползунка.
Так что новая расстановка сил такая:
- Модели, где ручки есть (большинство, включая OpenAI) — правило «одна за раз» в силе.
- Свежие модели Anthropic — ручек нет, поведением управляешь промптом.
И это, пожалуй, лучший итог для новичка. Пока все спорили, что крутить, ответом оказалось «объясни задачу нормально».
Какое значение top-p ставить по умолчанию?
Никакое — оставь 1.0 (то есть не трогай). Ручка нужна ровно тогда, когда модель периодически вставляет неуместное редкое слово. Тогда попробуй 0.9. Если ответы стали пресными — верни обратно.
top-p и top-k — это одно и то же?
Нет. top-k оставляет фиксированное число вариантов: «ровно 40 штук, остальное режем». top-p оставляет столько, сколько нужно, чтобы набрать заданную вероятность, — то есть подстраивается под уверенность модели. Поэтому top-p обычно ведёт себя разумнее.
Короткие уроки-истории, симулятор агента и ежедневная практика — в нашем мобильном приложении. Бесплатно.





