Subscribe
vLLM 0.29 makes Model Runner V2 the default for every model
Developers3 min read

vLLM 0.29 makes Model Runner V2 the default for every model

594 commits in a fortnight, ten model architectures deleted, and the launch command in half the tutorials on the internet is now deprecated.

In briefvLLM v0.29.0 was released on September 9, 2026 with 594 commits from 277 contributors, 91 of them new1Model Runner V2 is now the default for all models, completing a rollout begun with pooling models2MRV1 remains in use for some ROCm models and for features MRV2 does not yet support3
Updated · Sep 11, 2026, 10:11 ETThis story was revised after publication. The sources block reflects the current version.
An aisle of server racks in a data centre
Photo: Christopher Bowns (CC BY-SA 2.0)

Which line in vLLM's new release notes should worry you? Not any of the new models. It is the one announcing that Model Runner V2 is now the default for every model.

That is a change of engine, not a feature.

vLLM shipped v0.29.0 on the morning of 9 September 2026, carrying 594 commits from 277 contributors. Its new runner has been rolling out since pooling models moved over, and this release finishes the job, bringing CUDA graph memory profiling for KV cache auto-sizing, batch-sharded sampling that cuts per-step logits memory, prompt embeds, and padded full-cudagraph dispatch for uniform decode under speculative decoding.

Meanwhile the old runner survives only for a handful of ROCm models and for features the new one has not caught up on. And the notes do not say which features. If you run vLLM on AMD hardware, that is the sentence to read twice.

The breaking list is short and expensive

Ten deprecated model architectures are removed. Not renamed, removed. FlexOlmo, Olmo3 and Hunyuan V1 and VL now run through the Transformers modeling backend rather than native implementations. The PyAV video decoder backend is gone entirely.

And python -m vllm.entrypoints.openai.api_server is deprecated in favour of vllm serve.

That last one is the quiet tax (nobody writes a changelog entry for the afternoon it costs you). Nearly every Dockerfile, Slurm script and tutorial written before this summer starts the server the old way:

# deprecated in 0.29.0
python -m vllm.entrypoints.openai.api_server --model openbmb/MiniCPM5-2B

# the supported form
vllm serve openbmb/MiniCPM5-2B

The best change in the release sounds like the dullest

Prefix-cache NONE_HASH is now deterministic by default, so anyone running a distributed KV cache no longer has to pin PYTHONHASHSEED across every worker to get cache hits.

If you have ever debugged a cluster where one node quietly refused to reuse anybody else's prefixes, you know roughly how many hours that single environment variable has cost the field. FlashInfer all-reduce is on by default for tensor-parallel CUDA groups too, with an environment variable to back out.

The cadence is the context the notes leave out, so we counted it

Six minor releases since late June, spaced between twelve and sixteen days apart, five times running. Call it forty-odd commits a day landing in the serving layer underneath most open-weights inference. The previous release carried 584 commits from 270 contributors, so this one is not an unusual bulge. Rather it is the ordinary rate, with a default flip inside it.

Our read is that these release notes have become an upgrade hazard list wearing a feature list's clothes, and the project does not present them that way. Running pip install -U vllm in production this week changes the runner executing your model, the launcher your scripts call, and possibly whether your architecture still exists at all.

Which is a fair thing for a fast-moving project to do before 1.0, and probably unavoidable. And it is not a fair thing for a reader to meet in paragraph nine of the highlights. We wrote about the upside of the same velocity in MiniCPM5-2B lands on stable vLLM the day it ships.

So here is a falsifiable one. Two of the last five minor releases needed a patch within three days, and this is the largest default change of the year. We expect a 0.29.1 before 23 September. If it never arrives, the rollout was as careful as the phased plan suggests, and we will say so.

What is coming next is more interesting than what shipped

On 8 September the project demonstrated Hybrid HiSparse, which lets a request keep decoding after its KV cache stops fitting in high-bandwidth memory by spilling its coldest pages out to host memory.

vLLM@vllm_project

Sparse MLA only attends to the top-K tokens, so the rest of the KV need not live on the GPU. Hybrid HiSparse in vLLM builds on that, and a request keeps decoding after its KV stops fitting in HBM.

It keeps KV on the GPU while there is room. Under pressure a request releases its coldest pages to host memory, keeps a small hot buffer of what the indexer asks for, and keeps decoding instead of being preempted.

📊 Demonstrated on GLM 5.3, one 8× H200 node, full 1M context. Same host memory, configured concurrency 32: KV offloading kept 5-6 requests running. Hybrid HiSparse kept 19-25.

🔹 Hot pages are ordinary KV blocks from the same pool (Hybrid Memory Allocator)
🔹 One fused kernel resolves resident, hot and missing rows, CUDA-graph capturable
🔹 Prefix caching, OffloadingConnector, P/D imports and MTP keep working

Built by @RedHat_AI and @PrimeIntellect with the vLLM community. Planned for v0.30; pinned commit, flags and calculator are in the post👇
🔗 t.co/6y7u5Hfc8c

on X · 28.3K views · captured Nov 5, 2026

On one eight-GPU node running GLM 5.3 at full context, plain KV offloading held five or six concurrent requests. HiSparse held between nineteen and twenty-five. All of it is planned for v0.30.

Fourteen days, then.

Sources

01
vLLM v0.29.0 was released on September 9, 2026 with 594 commits from 277 contributors, 91 of them new“khluu released this 09 Sep 08:54 ... Highlights This release features 594 commits from 277 contributors (91 new)!” — github.com · primary · Sep 10
02
Model Runner V2 is now the default for all models, completing a rollout begun with pooling models“Model Runner V2 is now the default for all models ( #53183 ), completing the rollout that began with pooling models ( #48290 ). MRV2 also gained CUDA graph memory profiling for KV cache auto-sizing ( #53306 ), batch-sharded sampling that…” — github.com · primary · Sep 10
03
MRV1 remains in use for some ROCm models and for features MRV2 does not yet support“MRV1 remains in use for a few ROCm models and features MRV2 does not yet support.” — github.com · primary · Sep 10
Show all 8 sources
04
The release removes ten deprecated model architectures, drops the PyAV video decoder and deprecates the api_server module in favour of vllm serve“Breaking changes : ten deprecated model architectures removed ( #53608 ); FlexOlmo, Olmo3 and Hunyuan V1/VL migrated to the Transformers modeling backend ( #53615 ); PyAV video decoder backend removed ( #54231 ); python -m…” — github.com · primary · Sep 10
05
Prefix-cache NONE_HASH is deterministic by default so distributed KV cache users no longer need to pin PYTHONHASHSEED, and FlashInfer all-reduce is enabled by default for TP CUDA groups“New defaults : FlashInfer all-reduce enabled by default for TP CUDA groups, opt out with VLLM_ALLREDUCE_USE_FLASHINFER=0 ( #52998 ); prefix-cache NONE_HASH is deterministic by default so distributed KV cache users no longer need to pin…” — github.com · primary · Sep 10
06
The previous release, v0.28.0, carried 584 commits from 270 contributors“Highlights This release features 584 commits from 270 contributors (76 new)!” — github.com · primary · Sep 10
07
vLLM minor releases in 2026 have been spaced 12, 16, 14, 16 and 14 days apart from v0.24.0 to v0.29.0“v0.29.0 2026-09-09T08:54:49Z / v0.28.0 2026-08-26T09:46:30Z / v0.27.1 2026-08-11T10:47:49Z / v0.27.0 2026-08-10T21:18:11Z / v0.26.0 2026-07-27T01:06:58Z / v0.25.1 2026-07-14T08:51:20Z / v0.25.0 2026-07-11T20:06:44Z / v0.24.0…” — api.github.com · primary · Sep 10
08
Hybrid HiSparse held 19-25 concurrent requests where KV offloading held 5-6, on one 8xH200 node running GLM 5.3 at 1M context, and is planned for v0.30“Demonstrated on GLM 5.3, one 8× H200 node, full 1M context. Same host memory, configured concurrency 32: KV offloading kept 5-6 requests running. Hybrid HiSparse kept 19-25. ... Planned for v0.30; pinned commit, flags and calculator are…” — x.com · primary · Sep 10
More on Developer tools and Open-weight modelsAll Developer tools stories →
You’re 60% through. Stories like this one, Mon · Wed · Fri, with every claim sourced.