Top-p / Nucleus Sampling (Ядерная выборка)

Параметр, ограничивающий выбор следующего слова только самыми вероятными вариантами. Контролирует разнообразие ответов модели.

Top-p (nucleus sampling) — это параметр генерации текста, который ограничивает выбор следующего слова только теми вариантами, чья суммарная вероятность не превышает заданного порога p.

Как это работает

Когда модель выбирает следующее слово, она рассматривает все возможные варианты и их вероятности. Top-p отсекает маловероятные варианты:

  • Top-p = 0.1 — модель выбирает из слов, покрывающих 10% вероятности. Обычно это 1-3 самых вероятных слова. Ответы максимально предсказуемые.
  • Top-p = 0.9 — модель рассматривает больше вариантов, суммарно покрывающих 90% вероятности. Ответы более разнообразные.
  • Top-p = 1.0 — модель рассматривает все возможные слова. Никаких ограничений.

Пример

Допустим, модель предсказывает следующее слово после «Кошка сидела на»:

СловоВероятностьВключено при top-p = 0.8
окне45%Да
крыше25%Да
стуле15%Включено (сумма = 85%)
заборе8%Нет
луне4%Нет

При top-p = 0.8 модель выберет одно из первых трёх слов, а «заборе» и «луне» даже не будут рассматриваться.

Top-p vs Температура

Оба параметра управляют разнообразием, но по-разному. Обычно рекомендуется настраивать один из них, а второй оставлять по умолчанию. Например, OpenAI советует менять либо температуру, либо top-p, но не оба сразу.

Связанные термины

  • Температура (Temperature) — другой параметр контроля случайности генерации
  • Токены — единицы текста, из которых модель выбирает при генерации
  • Инференс — процесс генерации ответа моделью