llama.cpp podporuje od sestavení b10665 DSpark pro Nemotron 3.5
Sestavení llama.cpp b10665 z 28. srpna umí vedle hlavního Nemotronu 3.5 načíst samostatný draft model DSpark od Nvidie. Ten přidá 1,35 GB dat k 21,58 GB cílového repozitáře. Autor změny naměřil na jedné kartě L40S průměrně 1,31násobnou rychlost generování; výsledek zatím nikdo nezopakoval.

Projekt llama.cpp zveřejnil 28. srpna v 00.17 UTC na GitHubu průběžné sestavení b10665. Umí načíst samostatný draft model DSpark, který NVIDIA vydala k Nemotronu 3.5 Lightning. GitHub sestavení označuje jako prerelease, tedy průběžnou verzi, ne označené stabilní vydání.
Draft model při spekulativním dekódování navrhne několik tokenů dopředu. Velký cílový model je ověří v jedné dávce a nesprávné návrhy zahodí. Výstup se tím nemá měnit; smyslem je omezit počet pomalých průchodů velkým modelem. Obecný princip DSpark a checkpoint zabudovaný přímo ve vahách jsme popsali u DeepSeeku V4-Pro. Nemotron jde jinou cestou: draft se stahuje zvlášť.
K hlavnímu modelu přibude 1,35 GB
Repozitář draft modelu Nvidie obsahuje jediný soubor vah o 1 349 057 504 bajtech. Celý repozitář včetně konfigurace a licence zabírá 1 349 077 661 bajtů, tedy 1,35 GB. Cílový checkpoint NVFP4 má ve veřejném rozhraní Hugging Face celkem 21 583 785 362 bajtů. Draft tak přidává asi 6,3 % k objemu cílového repozitáře; jde o náš podíl z uvedených velikostí.
NVIDIA na kartě uvádí 967 milionů parametrů, z nichž 615 milionů neleží ve slovníkových vektorech. Draft má šest vrstev, pracuje s blokem osmi tokenů a konfigurace uvádí target_layer_ids 1, 5, 19, 29, 41 a 51. Všechny jeho vrstvy používají posuvné okno 1 024 tokenů. Samotný Nemotron 3.5 má 30 miliard parametrů, ale pro každý token zapíná tři miliardy.
Oficiální repozitáře nabízejí váhy ve formátu safetensors, nikoli hotové soubory GGUF pro llama.cpp. Dokumentace llama.cpp proto počítá s převodem cílového i draft modelu a se dvěma cestami při spuštění serveru. DSpark se zapíná volbou --spec-type draft-dspark; počet návrhů omezuje --spec-draft-n-max. Pro Nemotron ale změna nepřidala samostatný hotový návod a my jsme převod ani běh nezkoušeli.
Podpora mění převod i výpočet pozornosti
Změna číslo 27804 zasáhla šest souborů a přidala 71 řádků. Nemotronův draft používá kauzální pozornost, tedy dovolí každé pozici vidět jen předchozí tokeny. Dosavadní větev DFlash v llama.cpp ji vypínala. Konvertor proto nově zapisuje tento údaj do GGUF a server ho při načtení přečte.
Nemotron používá také takzvané attention sinks. Jsou to naučené hodnoty, k nimž se pozornost může obracet, i když nenesou běžný obsah vstupu. Nemotron je má pro každou hlavu pozornosti a llama.cpp je předává výpočtu jako volitelný tenzor. Přibyla také škála kvantizované Markovovy hlavy, která propojuje sousední návrhy v bloku.
Confidence head, tedy část odhadující pravděpodobnost přijetí návrhu, je nově volitelná. Když ve vahách není a parametr --spec-draft-p-min je vyšší než nula, server skončí s konkrétní chybou a radí nastavit nulu. Bez téhle kontroly by parametr sliboval chování, pro které model nemá potřebné váhy.
Na L40S vyšlo zrychlení od 14 do 48 procent
Autor změny porovnal běžný a spekulativní běh na jedné kartě NVIDIA L40S. Jako cílový model použil komunitní kvantizaci Nemotronu 3.5 ve formátu Q4_K_M a otázky rozdělil do jedenácti skupin sady SPEED-Bench. Nejde o měření Nvidie ani o nezávislý test redakce.
Průměrná rychlost generování vzrostla ze 164,92 na 216,56 tokenu za sekundu, tedy 1,31krát. Nejmenší zisk vyšel u otázek a psaní, shodně 1,14krát; největší u vyhledávání s doplněním kontextu, 1,48krát. Průměrná latence klesla ze 4,025 na 3,238 sekundy. Přijatých bylo 44,32 % navržených tokenů.
Čísla mají úzký rozsah platnosti. Měření používá jednu kartu, jednu kvantizaci a konkrétní sadu úloh. Karta modelu Nvidie uvádí průměrnou přijatou délku 3,75 tokenu při návrhu sedmi, ale to je jiná veličina než podíl přijatých tokenů v testu autora změny. Tyto dvě hodnoty se proto nedají vydávat za vzájemné potvrzení.
Model existoval dřív než jeho podpora v llama.cpp
NVIDIA zveřejnila draft model 11. srpna. Jeho karta už mezi nástroji pro běh jmenuje llama.cpp, konkrétní podpora pro tuto variantu se však do hlavní větve dostala až sloučením změny 27. srpna ve 23.49 UTC. Automatické sestavení b10665 následovalo o 28 minut později.
Nemotron 3.5 Lightning je v llama.cpp dostupný i bez draftu. DSpark přidává další soubor vah a další výpočet, který se vrátí jen tehdy, když server přijme dost návrhů. Pro jednu L40S takový zisk v testu vznikl. Pro jiné karty, delší souběh požadavků nebo jinou kvantizaci zatím veřejné měření není.
Zdroje
- llama.cpp, změna číslo 27804 a sestavení b10665
- NVIDIA, karta draft modelu DSpark včetně konfigurace a seznamu souborů
- Týmy NVIDIA Nemotron a SGLang, popis Nemotronu 3.5 Lightning, 11. srpna 2026
- Dokumentace spekulativního dekódování v llama.cpp