Se seu app fala com um LLM através da API do OpenAI, você já conhece a conta: cada request é mais uma linha na fatura. E para um monte de workloads — ferramentas internas, batch jobs, pipelines de RAG, qualquer coisa com volume previsível — você está alugando algo que poderia ter como próprio.
vLLM é o projeto que torna ter um LLM próprio realista. Nasceu no Sky Computing Lab da UC Berkeley e hoje é um dos projetos open source de IA mais ativos que existem. É um inference and serving engine de alto throughput para LLMs. Tradução: é a peça que pega um modelo open-weights e o converte em um endpoint de API rápido e pronto para produção, rodando sobre hardware que você controla.
O truque se chama PagedAttention
A razão pela qual vLLM é rápido não é mágica, é gerenciamento de memória. Servir um LLM envolve fazer malabarismos com o KV cache — a memória de trabalho do modelo para cada request em voo. As implementações ingênuas desperdiçam quantidades enormes de GPU RAM em fragmentação e sobre-alocação. vLLM pega emprestada uma ideia dos sistemas operacionais: pagine o KV cache da mesma forma que um SO pagina a memória virtual, alocando-o em blocos pequenos em vez de um único bloco contíguo gigante. Isso é PagedAttention, descrito no paper do time de 2023 (Kwon et al.), e é por isso que vLLM consegue manter muito mais requests rodando em paralelo sobre a mesma placa.
Você não precisa entender as entranhas para aproveitar isso. Só precisa saber que é daí que vem o throughput.
Você não fica preso a um único fabricante de GPU
Esta é a parte que importa se você está planejando infraestrutura de verdade. vLLM roda em GPUs NVIDIA, GPUs AMD e CPUs x86/ARM/PowerPC — além de plugins de hardware para Google TPUs, Intel Gaudi, Huawei Ascend, Apple Silicon e mais. E suporta mais de 200 arquiteturas de modelos no Hugging Face out of the box: a família Qwen, Llama, Mistral, gpt-oss e a maioria do que você realmente gostaria de self-hostear.
Essa amplitude é exatamente o ponto. Você não está apostando sua stack em um único chip nem em um único modelo.
Colocar em funcionamento
Em uma máquina com GPUs NVIDIA, o caminho recomendado usa uv:
uv venv --python 3.12 --seed
source .venv/bin/activate
uv pip install vllm --torch-backend=auto
A flag --torch-backend=auto inspeciona seu driver CUDA e escolhe o build correto do PyTorch automaticamente — uma coisa a menos para errar. (Plataformas não-CUDA têm suas próprias instruções de instalação na documentação.)
Agora sirva um modelo. Este comando único o baixa do Hugging Face e levanta um servidor compatível com OpenAI em localhost:8000:
vllm serve Qwen/Qwen2.5-1.5B-Instruct
A migração é apenas uma linha
Aqui está o porquê de “compatível com OpenAI” ser o feature estrela e não uma nota de rodapé. Seu código existente não muda — você só aponta o cliente para outro lugar:
from openai import OpenAI
client = OpenAI(
base_url="http://localhost:8000/v1",
api_key="EMPTY", # vLLM não requer autenticação por padrão
)
resp = client.chat.completions.create(
model="Qwen/Qwen2.5-1.5B-Instruct",
messages=[
{"role": "system", "content": "Você é um assistente útil."},
{"role": "user", "content": "Explique o que é PagedAttention."},
],
)
print(resp.choices[0].message.content)
Você muda o base_url e o mesmo SDK que seu time já usa agora bate em um modelo que você hospeda. O streaming funciona. O endpoint antigo de completions funciona. Quer autenticação? Levante com --api-key sk-sua-chave. O endpoint de chat completions, o de completions e um endpoint para listar modelos estão todos lá.
Uma ressalva honesta
vLLM foi pensado para GPUs de servidor dedicadas — pense em uma H100 alugada, não em seu laptop. É um engine para infraestrutura, que é exatamente por isso que brilha quando um time levanta um serviço de inferência compartilhado. Se o que você quer é um modelo rodando localmente em uma GPU de consumidor para uso pessoal, ferramentas como Ollama ou LM Studio são a melhor opção, e até os guias próximos ao próprio vLLM te mandam para lá. Tenha claro qual problema você está resolvendo, e vLLM encaixa sem atrito.
Para um time com volume estável de LLM e um orçamento de GPU já em movimento, a conta é simples: vLLM converte o «pagar para OpenAI para sempre» em «rode você, sobre o hardware e os modelos que você escolhe». E isso não é pouca coisa.
