Что такое speculative decoding и EAGLE
Что такое speculative decoding для LLM inference, как он ускоряет decode, и что за идея у EAGLE-подобных методов?
Ответить самому
Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.
Короткий ответ
Speculative decoding генерирует несколько draft tokens дешевой моделью, а target model считает распределения для draft-последовательности одним forward pass и принимает/отклоняет токены по acceptance rule. Ускорение есть при высоком acceptance rate.
Полный разбор
Autoregressive decode медленный, потому что большая модель обычно добавляет один токен за forward pass. Speculative decoding добавляет draft model: маленькая модель быстро предлагает несколько следующих токенов, а target model считает распределения для всей draft-последовательности одним батчевым forward pass. После этого токены принимаются или отклоняются по acceptance rule на основе target/draft probabilities; greedy token matching - только упрощенный частный случай.
Ускорение зависит от того, насколько часто draft угадывает target distribution, от стоимости draft model и от overhead верификации. Метод хорошо работает, когда draft близок к target или задача имеет предсказуемое продолжение.
EAGLE-подобная идея: использовать легкую feature-level draft model, которая предсказывает будущие hidden states/features target model и из них строит speculative candidates. Это не "бесплатное знание будущих hidden states", а отдельный быстрый предиктор для улучшения acceptance rate при небольшом overhead.
Теория
Speculative decoding сохраняет распределение target model при корректной acceptance scheme, но меняет вычислительный граф decode.
Типичные ошибки
- Сказать, что маленькая модель просто заменяет большую.
- Не объяснить verification target model.
- Игнорировать acceptance rate как главный фактор ускорения.
Как отвечать на собеседовании
- Опиши pipeline: draft -> verify -> accept/reject.
- Скажи, когда метод не ускорит: плохой draft или большой overhead.