Что такое DSpark?
DSpark – это framework для спекулятивного декодирования, который ускоряет вывод больших языковых моделей без изменения самой модели. Он добавляет к уже существующим весам V4 небольшую “draft‑модель”, которая генерирует блок токенов, после чего основной (целевой) модель проверяет этот блок за один проход.
Кратко о главных плюсах
- Параллельный «draft‑бэкбоун» + лёгкий последовательный «head» уменьшают падение качества к концу блока.
- Head уверенности и планировщик, учитывающий загрузку GPU, проверяют больше токенов, когда есть свободные ресурсы, и меньше – при пиковой нагрузке.
- В офлайн‑тестах принятый длина блока выросла на 26–31 % по сравнению с Eagle3 и на 16–18 % по сравнению с DFlash.
- В продакшене на DeepSeek‑V4 генерация для одного пользователя стала на 60–85 % быстрее, чем у базового MTP‑1.
- Качество вывода полностью сохраняется, а все чекпойнты и код открыты.
Как работает спекулятивное декодирование
Идея проста: небольшая draft‑модель предлагает блок токенов, а полная модель проверяет их за один проход. При отклонении принимается самая длинная приемлемая часть и добавляется один «бонусный» токен, что гарантирует отсутствие потери качества.
Какие проблемы решает DSpark?
Скорость вывода определяется формулой L = (T₍draft₎ + T₍verify₎) / τ, где τ – количество принятых токенов за один цикл. Ускорение достигается тремя способами:
- Сократить время черновой генерации (
T₍draft₎). - Повысить количество принятых токенов (
τ). - Сократить время проверки (
T₍verify₎).
DSpark одновременно тянет все три рычага.
Семиауторегрессивное генерирование
Ранее были два типа драфтеров:
- Автографические (Eagle3) – каждое предсказание зависит от предыдущих, но стоимость растёт с размером блока.
- Параллельные (DFlash) – генерируют весь блок за один проход, однако качество убывает к концу блока.
DSpark сочетает оба подхода: мощный параллельный бэкбоун (например, DFlash) создает «сырой» логит для каждой позиции, а лёгкий последовательный head (по умолчанию Markov‑head, смотрящий только на предыдущий токен) корректирует его, удерживая высокий уровень принятия даже в глубине блока.
Уверенность и планировщик
Блоки, сгенерированные draft‑моделью, оцениваются head‑ом уверенности. Этот head предсказывает, какой токен выживет после проверки. Предсказания калибруются с помощью Sequential Temperature Scaling, что снижает ошибку калибровки до ~1 %.
Планировщик, учитывающий загрузку GPU, динамически задаёт длину проверяемого префикса. Когда GPU простаивает – проверяется больше токенов, когда загружено – проверяется меньше, что экономит ресурсы без потери качества.
Метрики
В офлайн‑тестах (математика, код, чат) DSpark превзошёл базовые модели:
- Принятая длина блока выросла в среднем на 30 % по сравнению с Eagle3.
- По сравнению с DFlash – на 17 %.
- Увеличение блока с 4 до 16 токенов добавило всего 0.2–1.3 % к латентности, но дало до 30 % прироста принятых токенов.
- В продакшене на DeepSeek‑V4‑Flash и V4‑Pro ускорение per‑user составило 60–85 % при том же уровне нагрузки.
Практические примеры
Кодогенерация: высокая согласованность токенов позволяет планировщику проверять длинные префиксы, ускоряя поток вывода.
Открытый чат: с порогом уверенности 0.45 приемлемая длина выросла с 45.7 % до 95.7 %, так как «неуверенные» токены отбрасываются.
Математическое рассуждение: средняя принятая длина увеличилась с 76.9 % до 92.5 %, что ускорило генерацию пошаговых решений.
Как попробовать DSpark
Проект DeepSpec предоставляет готовый код для подготовки данных, обучения и оценки draft‑моделей.
- Установите зависимости:
python -m pip install -r requirements.txt - Запустите обучение (пример для Qwen3‑4B):
bash scripts/train/train.sh - Оцените полученный чекпойнт:
bash scripts/eval/eval.sh
Для продакшн‑использования достаточно подсоединить draft‑модуль к уже существующим весам V4. Инструкция по инференсу лежит в каталоге inference репозитория.
Ссылки
- DSpark paper: PDF
- DeepSpec GitHub: github.com/deepseek-ai/DeepSpec
- Модельные чекпойнты (Hugging Face): DeepSeek‑V4‑Pro‑DSpark




















