Урок 6Новое

Стратегии декодирования

Методы выбора токенов

Проблема: Модель знает, что после «Погода сегодня» могут подойти несколько слов: «солнечная», «дождливая», «холодная», «хорошая»... Как она выбирает именно одно?

Решение: Автокомплит на телефоне

Помнишь, как телефон подсказывает слова, когда ты пишешь сообщение? Он показывает 3 варианта, и ты нажимаешь на один. LLM работает так же, только выбирает автоматически! Декодирование — это финальный шаг инференса, где распределение вероятностей превращается в конкретный токен.

Почему это важно?

Стратегия декодирования определяет «характер» выдачи модели:

  • Бот поддержки: жадный декодинг для стабильных, предсказуемых ответов
  • Креативное письмо: сэмплинг с высокой температурой для неожиданных идей
  • Генерация кода: beam search для поиска самого корректного решения
  • Перевод: beam search для сохранения смысла и грамматики

Представьте это как автокомплит телефона с разными стратегиями выбора:

  • 1. Жадный (greedy): всегда бери самое вероятное слово. Быстро, но скучно — тексты становятся однообразными
  • 2. Случайный (sampling): кидай кубик среди топ-вариантов. Креативнее, но может уйти не туда
  • 3. Top-K: рассматривай только K самых вероятных слов, потом выбирай случайно. Баланс между контролем и творчеством
  • 4. Top-P (nucleus): бери слова, пока их суммарная вероятность не достигнет P%. Умная адаптация к контексту
  • 5. Beam Search: попробуй несколько путей параллельно, выбери лучший в целом. Используется для перевода и важных задач

Где это применяется?

    Интересный факт: ChatGPT по умолчанию использует Top-P sampling с P=1, то есть рассматривает почти все варианты, но предпочитает более вероятные. Вот почему на один и тот же вопрос можно получить разные ответы!

    Попробуйте сами!

    Ниже — интерактивная демонстрация. Посмотри, как разные стратегии декодирования влияют на генерируемый текст. Попробуй жадный vs случайный — почувствуй разницу!

    Стратегии декодирования

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

    Выберите стратегию
    Greedy

    Всегда выбирать самый вероятный токен. Детерминистично, но может повторяться.

    Распределение вероятностей токенов
    Paris
    45%
    the
    20%Исключены
    France
    12%Исключены
    city
    8%Исключены
    a
    6%Исключены
    capital
    4%Исключены
    beautiful
    3%Исключены
    known
    2%Исключены
    Допустимые: 1 / 8
    Сравнение стратегий
    СтратегияДетерминизмРазнообразиеПрименение
    GreedyНизкоеФакты, код
    Beam SearchСреднееПеревод, суммаризация
    TemperatureНастраиваетсяВсё
    Top-kСреднееКреатив
    Top-pАдаптивноеЧаты, креатив
    Ключевая идея

    Greedy лучше всего для фактологических запросов. Top-p (nucleus) sampling самый популярный для креативных задач — он адаптируется к каждому распределению вместо фиксированного отсечения как Top-k.

    Попробуй сам

    Интерактивное демо этой техники

    Сравнение техник
    Демо режим
    Предзаписанные ответы
    ЗадачаНачинающийТекст

    Написать начало фантастического рассказа

    Без техники
    Без техники
    Промпт
    Напиши начало фантастического рассказа о космосе. (temperature: 0, top_p: 1.0)
    Ответ

    Космический корабль "Надежда" летел через бескрайние просторы космоса. Капитан Иванов сидел в своём кресле и смотрел на звёзды. Впереди была долгая дорога. Экипаж готовился к высадке на новую планету.

    Токены:20/45
    Время:420ms
    Качество:
    С Декодирование
    С техникой
    Промпт
    Напиши начало фантастического рассказа о космосе. Удиви меня необычным сюжетным ходом. (temperature: 0.9, top_p: 0.95)
    Ответ

    Маяк на Энцеладе замолчал в четверг. Не то чтобы кто-то заметил — автоматические станции молчат и перезапускаются постоянно. Но этот маяк передавал одну и ту же фразу 340 лет подряд. А теперь он начал передавать другую. На языке, которого в базах данных человечества не существовало.

    👁️Greedy decoding (temperature=0) всегда выбирает самый вероятный токен → предсказуемый, шаблонный текст
    🧠Nucleus sampling (top_p=0.95, temperature=0.9) позволяет менее вероятным токенам «пробиться» → неожиданные повороты
    Для творческих задач рандомизация = креативность. Для фактических задач — greedy decoding надёжнее
    Токены:25/65
    Время:520ms
    Качество:
    Почему это работает

    Greedy decoding (temperature=0) даёт предсказуемый текст. Nucleus sampling (temperature=0.9, top_p=0.95) позволяет модели «рисковать» — идеально для творческих задач, где клише недопустимы.

    1 / 2

    Квиз по уроку

    1 из 3

    1.В чём ключевое различие между жадным декодированием и лучевым поиском?

    Практика

    Создайте бесплатный аккаунт для решения челленджей

    4 челленджей с AI-проверкой для этого урока

    Связанные уроки:InferenceLlm Settings

    Этот урок — часть структурированного курса по LLM.

    Мой путь обучения