Por Dentro do vLLM: Anatomia de um Sistema de Inferência de LLM de Alto Throughput

vLLM é um dos mecanismos de inferência de código aberto mais usados para LLMs, e o post recente de Aleksa Gordić fornece uma explicação técnica sólida de seus internals. É voltado para desenvolvedores curiosos sobre como os mecanismos modernos de LLM são construídos, ou aqueles que consideram contribuir para vLLM, SGLang e projetos similares. A análise está fixada no commit 42172ad (9 de agosto de 2025) e foca no novo mecanismo V1 (V0 está obsoleto).
Componentes Principais do Mecanismo
O artigo começa com a configuração síncrona offline, usando um objeto simples LLM. O construtor do mecanismo é dividido em várias partes-chave:
- Configuração do vLLM – Todos os ajustes para modelo, cache, paralelismo, etc.
- Processador – Converte entradas brutas em solicitações do núcleo do mecanismo via validação e tokenização.
- Cliente do Núcleo do Mecanismo – No exemplo, é um
InprocClientque roda no mesmo processo; para produção, você migraria para um cliente multiprocesso comoDPLBAsyncMPClient. - Processador de Saída – Converte saídas do núcleo do mecanismo em saídas de solicitação voltadas ao usuário.
O núcleo do mecanismo em si contém o executor de modelo (dirigindo passagens para frente), um gerenciador de saída estruturada (para decodificação guiada) e um agendador com filas de espera/execução. O agendador usa uma política (FCFS ou prioridade) e inclui o gerenciador de cache KV.
Atenção Paginada e Cache KV
O gerenciador de cache KV é o coração da atenção paginada. Ele mantém uma free_block_queue de blocos disponíveis, muitas vezes centenas de milhares, dependendo da VRAM e do tamanho do bloco. O tamanho do bloco para um transformer padrão (não-MLA) é calculado como:
2 * block_size * num_kv_heads * head_size * dtype_num_bytes
que para configurações padrão produz um tamanho de bloco prático. Esse mecanismo de paginação permite gerenciamento eficiente de memória e alta taxa de transferência.
Recursos Avançados
O post não para no básico. Ele descreve recursos avançados que tornam o vLLM pronto para produção:
- Prefill em blocos – Divide prompts longos em blocos para intercalar com a geração.
- Cache de prefixo – Reutiliza o cache KV para prefixos compartilhados de prompts.
- Decodificação guiada – Restringe a saída a um esquema ou gramática.
- Decodificação especulativa – Usa um modelo rascunho para acelerar a geração.
- P/D desagregado – Separa prefill e decodificação em diferentes GPUs.
Também cobre escalabilidade para configurações multi-GPU e multi-nó, além da camada de serviço para lidar com tráfego web concorrente. Benchmarks e ajuste automático são mencionados para medir latência e taxa de transferência.
Para desenvolvedores construindo ou estendendo sistemas de inferência de LLM, isso dá um modelo mental claro de como o vLLM orquestra agendamento, memória e execução. É o primeiro de uma série, então espere mergulhos mais profundos em subsistemas individuais posteriormente.
📖 Leia a fonte completa: HN LLM Tools
👀 See Also

Desenvolvedor Cria Linguagem de Programação GALA com Claude Code, Observa que Tipagem Forte Melhora Confiabilidade do Código Gerado por IA
Um desenvolvedor criou o GALA, uma linguagem de programação funcional que transpila para Go, usando extensivamente o Claude Code. A linguagem apresenta tipos selados, correspondência de padrões exaustiva, imutabilidade por padrão e mônadas, com o Claude ajudando a implementar inferência de tipos, transformadores de correspondência de padrões e corrigindo mais de 40 bugs.

Histórico de Arquivos do Claude: Extensão do VS Code para Rastrear Sessões de Código do Claude
Uma extensão do VS Code chamada Claude File History rastreia todas as sessões do Claude Code que tocaram seus arquivos, permitindo que você encontre conversas passadas, visualize o que foi discutido e retome conversas com um duplo clique.

alogin: Um Gateway de Segurança Baseado em Go para Agentes de IA com Intervenção Humana
alogin é um gateway de segurança de código aberto baseado em Go que fornece um canal seguro entre agentes de IA e infraestrutura, apresentando suporte integrado a servidor MCP para Claude Desktop, medidas de segurança com intervenção humana e armazenamento criptografado de credenciais.

Servidor MCP para Projetos TypeScript Substitui o Padrão Grep do Claude Code por Consultas Indexadas de Símbolos
Um desenvolvedor criou um servidor MCP que substitui o padrão de grep-e-adivinhação do Claude Code por buscas indexadas de símbolos para projetos TypeScript. A ferramenta mantém um índice SQLite em tempo real de símbolos, locais de chamada, importações e hierarquia de classes, reduzindo o uso de tokens em 63-79% em testes.