← к ленте
Лента Hirify — без алгоритмической мути. Смотреть всё →
ИИ🔥

DSpark: оптимизация параллельного драфтинга для LLM

Обзор метода DSpark, улучшающего параллельный драфтинг в LLM через гибридную архитектуру и предсказание уверенности токенов.

🔧 Метод Параллельный драфтинг хорош тем, что он действительно параллелен, но не учитывает последовательную зависимость между токенами. А авторегрессионную модель нужно гонять каждый раз для каждого токена. Отсюда предлагают гибридное решение — такую же параллельную тушку, как в DFlash, поверх которой обучают легковесный авторегрессионный модуль. Рассматривают два варианта: * 🔹 Простая линейная марковская голова (с малоранговым боттлнеком), которая принимает на вход прошлый токен. * 🔹 Небольшая RNN. Далее, основываясь на народной мудрости и опыте, делают два важных замечания: * 📈 Acceptance length сильно разнится между областями. У кода следующие токены более предсказуемы, и она больше; в диалогах — меньше. * 📦 Чем больше размер батча, тем меньше выигрыш от использования спекдека и тем более заметно ощущается стоимость верификации. Отсюда возникает идея обучить дополнительную голову, которая будет предсказывать, будет ли токен отринут или нет. За счет этого можно не утруждать таргет проверкой того, что наверняка не примется. Так как предсказания классификатора выдают уверенность выше, чем надо (overconfidence), полученные вероятности дополнительно калибруют на некоторой выборке. Оптимальные длины драфтов подбирают при помощи некоего жадного алгоритма. На вход подаются текущий размер батча, текущие длины драфтов и предсказанные уверенности, а на выходе — оптимальные длины, достигающие максимального throughput. 🧮 Лосс-функция состоит из трех членов: * 📌 Стандартная кросс-энтропия. * 📌 Total Variation между драфтом и таргетом. * 📌 Confidence Loss (бинарная кросс-энтропия). Итоговый лосс является взвешенной суммой всего перечисленного. 📊 Эксперименты Сначала тестируют предложенный подход на Qwen3-{4B, 8B, 14B} и Gemma4-12B против DFlash и EAGLE-3 в качестве бейзлайнов. DFlash и DSpark используют один и тот же параллельный бэкбон. Все модели обучаются на одних и тех же данных. ✅ У DSpark консистентно выше acceptance length (примерно на 16–18%). Далее авторы исследуют acceptance в зависимости от позиции и замечают, что DFlash более уверенно предсказывает первые токены по сравнению с EAGLE-3 благодаря более мощной модели, но acceptance rate токена падает с глубиной. У EAGLE-3 он может даже расти, но из-за меньшей точности на первых токенах драфта итоговая acceptance length оказывается меньше. DSpark же имеет хороший acceptance в начале, который еще и практически не убывает. Уже 2 слоя DSpark якобы не хуже 5 слоев DFlash. В качестве авторегрессионной части пробуют марковскую голову и RNN. RNN дает чуть больший acceptance, но имеет больший оверхед и сложнее в реализации, поэтому останавливаются на марковской голове. 📈 Повышение порога confidence (стоит ли вообще верифицировать данный токен) увеличивает acceptance length. Потом авторы масштабируют историю на DeepSeek-V4, и DSpark выдает заметно лучшее соотношение throughput/latency по сравнению с MTP-бейзлайном. ⚙️ Из технических сложностей стоит отметить невозможность работать с CUDA-графами из-за динамических размеров входов и сложности с Zero-Overhead Scheduling. Чтобы решить вторую проблему, используют verification capacity с двух шагов назад (ZOS требует знания размера батча заранее). 💡 Выводы Результат и наблюдения, безусловно, ценные — как любят и умеют делать ребята из DeepSeek. В основе метода все еще лежит DFlash, так что не стоит утверждать, что это принципиально новая парадигма. И у DFlash не так много ручек, которые нужно крутить, чтобы выжать максимальный перф.

Кратко (AI)

В посте рассматривается метод DSpark, который улучшает параллельный драфтинг в LLM за счет добавления легковесного авторегрессионного модуля и классификатора уверенности токенов. Авторы показывают, что такой подход повышает длину принятия токенов и общую пропускную способность моделей по сравнению с аналогами вроде DFlash и EAGLE-3.