vLLM 0.29 zapíná Model Runner V2, který dokumentace dál označuje za neúplný
vLLM 0.29.0 změnilo 9. září výchozí cestu, která připravuje vstupy a spouští model na akcelerátoru. Model Runner V2 má zjednodušit asynchronní provoz a šetřit paměť, k V1 se však program vrací u nepodporovaných funkcí a dvou architektur DeepSeek na AMD.
vLLM vydalo 9. září 2026 verzi 0.29.0. Server pro obsluhu jazykových modelů v ní zapíná Model Runner V2 jako výchozí cestu pro všechny modely. Slovo „všechny“ se však týká modelů, ne každé možné konfigurace. Kód se za několika podmínek vrátí k předchozí verzi runneru.

Samostatný záznam na PyPI potvrzuje, že jde o vydanou, nikoli pouze ohlášenou verzi. Balíčky se tam objevily čtyři minuty po vydání na GitHubu. K dispozici jsou balíčky wheel pro 64bitové procesory x86 a Arm spolu se zdrojovým archivem; podporovaný rozsah zůstal na Pythonu 3.10 až 3.14. Balíček pro x86 měří 315 961 042 bajtů, asi o 1,46 MB více než u verze 0.28.0.
Runner převádí rozhodnutí plánovače na práci akcelerátoru
Model runner stojí mezi plánovačem požadavků a samotným výpočtem modelu. Připravuje vstupní tenzory, spravuje stav aktivních požadavků, spouští průchod modelem a zpracuje logity, tedy číselné podklady pro výběr dalšího tokenu. Změna runneru proto nezasahuje formát rozhraní API, ale vnitřní cestu každého požadavku přes procesor a akcelerátor.
Návrhový dokument MRV2 popisuje dvě hlavní opravy. Aktivní požadavek dostane po dobu svého života stálý řádek ve stavových tenzorech, takže se při každém kroku nemusí přeskládat celá dávka. Druhá verze navíc počítá s asynchronním plánováním od začátku: procesor chystá další krok, zatímco grafický akcelerátor dokončuje ten současný.
Dokumentace přitom sama říká, že MRV2 ještě nemá všechny funkce, neprošel důkladným testováním a některá návrhová rozhodnutí zůstávají otevřená. Vydání 0.29 tedy nepovýšilo hotovou náhradu, která starou cestu maže. Změnilo pravidlo výběru ve prospěch novějšího základu.
Výchozí volbu přepisují tři skupiny výjimek
Návrh číslo 53183, který přepnutí provedl, změnil pět souborů a do hlavní větve se dostal 27. srpna. První přednost má proměnná VLLM_USE_V2_MODEL_RUNNER, přes kterou může provozovatel volbu vynutit. Bez ní se konfigurace v kódu verze 0.29.0 ptá na platformu, dostupné knihovny a použité funkce.
Na akcelerátorech AMD se k V1 vracejí architektury DeepSeek V3.2 a DeepSeek V4; komentář v kódu uvádí chybějící podporu nebo nižší výkon MRV2. Stejně dopadne instalace bez překladače Triton. Další návrat vyvolá například běžný torch.compile, sekvenční paralelismus přes více karet, pipeline parallelism spuštěný přes external_launcher nebo spekulativní dekódování metodami n-gram a n-gram GPU. Program u těchto případů vypíše varování a vybere V1.
Seznam není jen pozůstatek staré větve. Proti 0.28.0 z něj zmizel prefill context parallelism bez MLA, protože nová verze už tuto kombinaci do MRV2 pustí. Naopak dvě výjimky pro DeepSeek na AMD přibyly přímo v návrhu, který měl runner zapnout všem modelům.
Úspory paměti zatím dokládá projekt sám
Vydání připisuje MRV2 profilování grafů CUDA pro automatickou volbu velikosti KV cache a dělené vzorkování, které rozprostře paměť pro logity mezi karty tensorového paralelismu. Návrhový dokument k tomu popisuje výběr nejpravděpodobnějších tokenů bez vytvoření celé tabulky logaritmických pravděpodobností a dělení dlouhých promptů na menší kusy. Jde o tvrzení a popis projektu, ne o nezávislé srovnání vydání 0.29.
Jedno veřejné měření dokonce ukazuje, proč nelze z nového výchozího nastavení odvodit vyšší výkon pro každou sestavu. Autor otevřeného hlášení číslo 55139 zkusil GPT-OSS-20B na kartách A100 s tensorovým i pipeline paralelismem po dvou. U 90 stejných požadavků naměřil MRV2 výkon 501 výstupních tokenů za sekundu a MRV1 915. První token naopak v průměru dorazil dříve s MRV2: za 1 176 proti 1 360 milisekundám. Výsledek nikdo nezopakoval v nezávislé laboratoři a hlášení zůstává otevřené.
Na WSL2 chybí automatický návrat
Druhý otevřený případ se týká WSL2 na Windows. Model Runner V2 používá UVA, jednotný adresní prostor pro přístup akcelerátoru do paměti procesoru. Autor hlášení číslo 54652 na dvou kartách RTX 4090 popsal pád ještě před spuštěním serveru, protože vLLM ve WSL2 vypnulo připnutou paměť a MRV2 ji vzápětí vyžadoval. Stejnou sestavu podle něj rozběhlo vynucení V1.
Hlášení vzniklo nad nočním sestavením před 0.29.0, ale ve vydaném rozhodování stále není kontrola dostupnosti UVA. Otevřený návrh na automatický návrat k V1 se do značky vydání nedostal. Nová výchozí cesta tak rozšiřuje nasazení MRV2, současně však ponechává provozovateli starý runner jako únikovou cestu. Samotné číslo verze nezaručuje, že v konkrétní konfiguraci poběží rychleji nebo že se V2 vůbec použije.
Zdroje
- vLLM 0.29.0 – datum vydání a přehled změn Model Runneru V2
- Návrh #53183 a konfigurace ve vydané značce – pravidlo výběru a výjimky
- Návrhový dokument Model Runneru V2 – stavové tenzory, asynchronní běh a meze návrhu
- vLLM 0.29.0 na PyPI – nezávislý záznam vydaných balíčků a podporovaných verzí Pythonu
- Měření pipeline parallelismu a reprodukce na WSL2 – veřejné zprávy uživatelů, obě bez uzavřeného řešení