← Writing
AI

Serving open LLMs on Cloud Run with vLLM

Sep 10, 2026 1 min read
Serving open LLMs on Cloud Run with vLLM

Paying per token is fine until it isn’t. Once traffic is predictable, hosting an open model yourself can be dramatically cheaper — if you get the serving layer right.

Why vLLM

The naive way to serve a model wastes most of the GPU. vLLM fixes the two things that matter most: paged attention for memory efficiency, and continuous batching so requests don’t wait in line for a whole batch to finish.

Why Cloud Run

I want the model to scale to zero when nobody’s using it and spin up on demand. Cloud Run gives me that with a container and a GPU, no cluster to babysit.

gcloud run deploy vllm-server \
  --image=$IMAGE --gpu=1 --gpu-type=nvidia-l4 \
  --concurrency=8 --min-instances=0

The interesting tuning is in --concurrency and vLLM’s --max-num-seqs: too low and the GPU idles, too high and latency spikes. I’ll write up the throughput curves separately.

More in the vllm-cloud-run repo.