DFlash2 draft для Nemotron 3.5 Super VL
ускорение спекулятивного декодирования
Неофициальный DFlash2 draft для nvidia/NVIDIA-Nemotron-3.5-Super-VL-120B-A12B-NVFP4 от shadowpa0327. Это спекулятивное декодирование: черновик на 1,16 млрд параметров предлагает токены, а целевая 120B-модель их проверяет. Обучен на ответах самой целевой модели в thinking-режиме; работает только с текстом, изображения и tool-calling не оценивались.
🧐 Ключевые особенности
- 🤖 5 слоёв Qwen3-стиля: hidden 4096, MLP 12288, 32 query / 8 KV heads, sliding window 2048.
- 🔥 DFlash2 block 16: 15 draft-токенов, grouped convolution kernel 2 / group 16, selector rank 256 по top-16.
- 👀 Читает слои 5, 25, 45, 65, 85 из 88; mask token 990; свои embedding и output head не поставляет — использует целевые.
- 🗿 Обучение: 577 694 строки (1,02 млрд токенов, 725 млн обучено) из open-perfectblend, OpenCodeInstruct и UltraChat, ответы target с thinking.
- ⛔ main — step 75 000 из 90 264 (83%), но ещё не served/evaluated; результаты ниже — на step-51000.
🚀 Пример
python -m sglang.launch_server --model-path nvidia/NVIDIA-Nemotron-3.5-Super-VL-120B-A12B-NVFP4 --trust-remote-code --tp-size 2 --speculative-algorithm DFLASH --speculative-draft-model-path <this repo> --speculative-dflash-block-size 16 --speculative-draft-model-quantization unquant
Подробнее
Принятых токенов за шаг проверки: 5,08 при temperature 0 и 4,51 при temperature 1 (240 промптов, thinking on, до 2048 новых токенов, concurrency 16, SGLang 0.5.21 на 2×H100).Для сравнения: LiLiCorr draft — 4,93/4,58, block-8 DFlash2 с обычным CE — 4,40/4,07.
Block 16 принимает больше за шаг, но шаг дороже: в грубом тесте throughput на concurrency 16 декодирование было на 7–9% медленнее block-8. Per-token latency не измерялась.
Обучение остановлено на step 75 000 ради освобождения GPU; LR уже был 3,8e-5 на cosine schedule. Лицензия целевой — OpenMDW-1.1, данные — Apache-2.0/CC-BY-4.0/MIT.








Комментарии