Когда спекулятивное декодирование ускоряет сервинг LLM?

Автоматический перевод

Эта статья была автоматически переведена с оригинальной английской версии.

Спекулятивное декодирование может ускорить генерацию, если предлагать несколько токенов-кандидатов дёшево и целевая модель принимает достаточное их число. Целевая модель проверяет кандидатов вместе и может возвращать несколько выходных токенов за раунд. Дополнительная работа по подготовке предложений может, наоборот, замедлить сервинг, если доля принятых токенов низкая или целевая модель уже эффективно работает с большими батчами.

Прежде чем выбирать этот метод для сервиса, проведите бенчмарк полного цикла генерации, включая подготовку предложений и отклонение кандидатов.

Разберитесь в раунде проверки

Черновая модель предлагает K токенов. Целевая модель оценивает позиции кандидатов за один прямой проход по батчу. Модифицированный сэмплинг с отбраковкой принимает кандидатов слева направо, используя оба распределения. После первого отклонения он выбирает корректирующий токен из остаточного распределения целевой модели и отбрасывает последующих кандидатов. Если все кандидаты приняты, он также может выбрать один дополнительный токен целевой модели.

Алгоритм спекулятивного сэмплинга Чена и соавторов сохраняет целевое распределение при выполнении предположений алгоритма, с учётом численных особенностей оборудования. Простое сравнение токенов-кандидатов с токенами, выбранными целевой моделью, — это другой алгоритм сэмплинга. Проверьте поведение сэмплинга и поддерживаемые настройки выбранной реализации.

Авторы статьи сообщили о 2–2.5x ускорении декодирования для протестированной целевой модели Chinchilla-70B с черновой моделью 4B, батчем размера один и K=4 на TPU v4. Этот исторический результат показывает, что механизм может помочь, но не прогнозирует результат для другой пары моделей.

Проверьте, от чего зависит выигрыш

ПоказательИнтерпретация
Принятые токены за раунд проверкиКакой объём результата компенсирует затраты на выполнение целевой модели
Время подготовки предложенийСтоимость предложения кандидатов
Время проверки и коррекцииРабота целевой модели и дополнительные затраты на отклонённых кандидатов
Throughput и латентность при разном числе одновременных запросовСохраняется ли выигрыш при реалистичных батчах
Качество выполнения задач и настройки сэмплингаСохраняет ли выбранный метод предполагаемое поведение

Методы с черновой моделью — один из вариантов. EAGLE-3 объединяет несколько уровней признаков целевой модели и напрямую предсказывает черновые токены; другие подходы используют дополнительные головы предсказания или поиск совпадений с промптом. Их доли принятых токенов и затраты на выполнение различаются.

Протестируйте репрезентативные примеры кода, обычного текста, structured outputs и длины контекста. Начните с небольшого числа предлагаемых токенов, затем меняйте его вместе с числом одновременных запросов. Больше кандидатов не поможет, если стоимость их подготовки и проверки превышает сэкономленную работу.

Инженерное руководство: спекулятивное декодирование объясняет последовательность принятия токенов и варианты метода.