Stock image illustrating data
FIELD NOTE · COVER · APR 29, 2026 · ISSUE LEAD
FIELD NOTE·Apr 29, 2026·7 MIN

vLLM at 10K QPS: What 50-Engineer ML Teams Learned Scaling Open-Weight LLM Inference

It runs on your H100 cluster, but the audit trail lives in your runbook.

Saanvi Rao·
FIELD NOTEAPR 29, 2026 · SAANVI RAO

vLLM has grown into one of the most active open-source AI projects built and maintained by a diverse community of many dozens of academic institutions and companies from over 2000 contributors.

vLLM Docs

What AutoKaam Thinks
  • Your GPU spend drops 5-10x not from raw speed but from PagedAttention’s memory efficiency—teams that skip tuning KV-cache size bleed throughput silently.
  • Speculative decoding works, but only if your draft model latency is sub-5ms; otherwise you’re adding overhead, not reducing it.
  • The real tax isn’t the code—it’s the tribal knowledge now locked in three engineers’ runbooks. If they leave, you’re back to square one.
  • Pin vLLM early, audit every patch, and treat the version lockfile like production config—because it is.
10K QPS
Peak throughput
ML TEAMS vs INFRA TAX
Named stake

The SRE lead in Munich put it bluntly: “We didn’t scale vLLM. We survived it.”

His team had just breached 10K QPS on a 16-node H100 cluster running Llama-3.3 and Qwen-MoE for a European logistics routing engine. No fanfare. No press release. Just a Slack thread titled “vLLM throughput plateaued at 9.8K, then jumped to 10.3K after cache tuning.” The tone was flat. The subtext: we’re still not sleeping.

This isn’t about flashy demos. It’s about the thousand tiny decisions that turn open-weight models from lab curiosities into production infrastructure. vLLM, the Berkeley-born serving engine, has become the quiet workhorse beneath that shift. Its PagedAttention and continuous batching aren’t just academic wins,they’re the reason a 50-person ML org can serve high-throughput inference without burning €2M/month on GPUs.

But the source docs don’t tell you what happens when speculative decoding backfires. Or how prefix caching silently collapses under long-context loads. Or why your “seamless Hugging Face integration” still requires three custom kernels to hit SLOs.

That’s where the field notes begin.

The Deployment

vLLM started as a research project at UC Berkeley’s Sky Computing Lab. Today, it’s the default choice for teams self-hosting Llama, Mistral, Qwen, and other open-weight models at scale. The official docs cite “state-of-the-art serving throughput” and “efficient attention memory management” via PagedAttention,a technique that slashes KV-cache fragmentation, letting the same cluster handle 5-10x more requests than naive Hugging Face serving.

Teams deploy vLLM for low-latency, high-volume inference: chat routers, document processors, agent backbones. The architecture supports continuous batching, speculative decoding, and hybrid parallelism across distributed nodes. It integrates with OpenAI-compatible APIs, Anthropic Messages, and gRPC, making it a plug-compatible upgrade from cloud-hosted models,on paper.

In practice, deployment is never that clean. The Munich team, for example, spent three weeks tuning KV-cache sizing after their initial rollout plateaued at 6.2K QPS. “We were hitting memory limits on decode tokens,” the lead said. “PagedAttention helps, but only if you set the block size right for your context window distribution. We were using 16, but our legal docs ran 32K tokens. Switched to 32, added chunked prefill, and jumped to 9.1K.”

They weren’t alone. A 30-engineer team in Edinburgh running vLLM for NHS triage bot routing hit similar walls. Their breakthrough? Disaggregating prefill and decode stages across GPU tiers. “We run prefill on 80GB H100s, decode on 40GBs,” one engineer explained. “The latency delta is negligible, but the cost per QP drops 40%.”

Speculative decoding,where a smaller draft model pre-generates tokens later verified by the target model,worked for both teams. But only after they enforced strict latency SLAs on the draft model. “If the draft model takes more than 5ms,” the Munich lead said, “you’re adding overhead, not saving time.”

[[IMG: an ML engineer in a Berlin data center monitoring vLLM throughput metrics on a dual-screen setup, coffee cup beside keyboard, rack lights glowing behind]]

Why It Matters

The real story here isn’t that vLLM scales. It’s that it scales for teams without a 200-person infra org. That’s a seismic shift.

Five years ago, running LLM inference at 10K QPS meant either deep pockets for cloud API calls or a massive internal build-out. Today, a mid-sized firm can self-host the same workload on a modest H100 cluster,if they master the levers vLLM exposes.

But mastery isn’t baked in. PagedAttention isn’t a magic switch. It’s a tuning knob. Same with speculative decoding, prefix caching, and continuous batching. The throughput gains are real, but they’re earned, not granted.

What we’re seeing is the emergence of a new operational discipline: LLM SRE. It’s not quite DevOps, not quite ML engineering. It’s the craft of keeping inference stable when every parameter,cache size, batch shape, draft model fidelity,can silently degrade performance.

Compare this to the early days of Kubernetes. The promise was “run anywhere, scale effortlessly.” The reality? Teams spent years building runbooks for node pressure, eviction policies, and CNI bottlenecks. vLLM is entering that same phase: the tool is mature, but the operational playbook is still being written in Slack threads and post-mortems.

The vendor pattern this echoes? Early Redis adoption. Everyone knew Redis was fast. Few realized that how you structured keys, set TTLs, or sharded instances could turn a 10x speedup into a production outage. vLLM is no different. The docs say “easy to use.” The field says “easy to misconfigure at scale.”

And unlike Redis, the failure modes here are probabilistic. A poorly tuned KV-cache doesn’t crash the system,it just lets latency creep from 120ms to 320ms, degrading user experience without triggering alerts. That’s noise, not fire. And noise is harder to fix.

This also reshapes the competitive landscape. Cloud providers profit from opaque, usage-based pricing. vLLM’s efficiency gains erode that margin. Every 2x throughput boost means 50% fewer GPU-hours billed. For a team spending $500K/month on inference, that’s $3M saved annually.

That’s the real threat to GCP, Azure, and AWS: not that vLLM exists, but that it’s good enough for mid-tier workloads. And “good enough” is all most operators need.

What Other Businesses Can Learn

If you’re running or considering vLLM in production, here’s what the field has learned,beyond the docs.

First: tune your KV-cache block size to your actual context distribution. Default settings assume uniform prompt lengths. Real workloads don’t. The Munich team analyzed their token histograms and found 68% of requests were under 8K tokens, but 12% were over 24K. They split their deployment: one vLLM instance for short-context, another with larger block size for long. Result? 22% higher throughput on the same hardware.

Second: chunked prefill is non-negotiable for long documents. When ingesting medical records or contracts, don’t wait for the entire context to load before starting decode. vLLM’s chunked prefill lets you stream the first segments into KV-cache while the rest are still processing. The Edinburgh team cut median latency by 54% on 16K+ token inputs.

Third: speculative decoding only wins if your draft model is fast and accurate. One UK fintech team tried using a quantized Llama-3.1 8B as a draft model for a 70B target. It backfired. The draft model was slow (8.7ms avg) and generated low-quality proposals, forcing frequent rollbacks. They switched to a distilled 1.8B model running on smaller GPUs, tuned for sub-4ms latency. Throughput jumped 37%.

Fourth: use xgrammar for structured output, not regex. Teams parsing JSON or XML responses often fall back to regex post-processing. That’s brittle. vLLM’s xgrammar integration constrains generation to valid schemas, reducing malformed outputs by 90%+ and cutting post-process CPU load.

Fifth: treat version upgrades like security patches. A patch that improves FP8 quantization might degrade AWQ performance. Always test across your real-world prompt mix,don’t trust synthetic benchmarks. One manufacturing firm in Stuttgart saw a 15% throughput drop after upgrading to v0.5.4 because a kernel optimization didn’t play well with their MoE routing logic. They rolled back, pinned the version, and haven’t upgraded since.

“The bump is mechanical. The audit is not. Every repo that imports the SDK has to be touched, tested, and redeployed.”

That quote,adapted from a prior cycle,holds here. The code change to adopt vLLM might be trivial. The operational burden isn’t.

[[IMG: a data engineer in a Toronto office reviewing vLLM performance logs on a laptop, sticky notes with cache tuning parameters on the desk, window showing city skyline at dusk]]

Looking Ahead

The vLLM team is working on disaggregated prefill, decode, and encode stages,a move that could let firms further optimize GPU spend by matching workload phase to hardware tier. Early tests show 18-27% cost savings when decode runs on older A100s while prefill stays on H100s.

But the next frontier isn’t infrastructure. It’s knowledge transfer.

Right now, the highest-performing vLLM deployments depend on tribal expertise. The engineer who tuned the KV-cache. The SRE who debugged the speculative decoding rollback storm. If they leave, the system regresses.

The real win won’t be another 10% throughput boost. It’ll be when that knowledge is codified,into linters, auto-tuners, or policy engines that bake best practices into the stack.

Until then, the 10K QPS badge isn’t just about scale. It’s about survival.