stamatios
← Voltar ao feed
Motor repleto de pequenas engrenagens girando em sincronia, versão 0.28.0 do vLLM com centenas de mudanças
Open Source

vLLM 0.28.0 reúne 584 commits de 270 colaboradores

resumo de ~3 min

Visão geral

O vLLM 0.28.0 foi lançado com 584 commits de 270 colaboradores, dos quais 76 contribuem pela primeira vez. A versão traz melhorias de desempenho para modelos específicos, avanços em decodificação especulativa, suporte ampliado de hardware e ajustes de API, além de mudanças que quebram compatibilidade.

Otimizações para modelos específicos

O destaque é um esforço de otimização para o Kimi-K3: suporte a Decode Context Parallel (DCP), kernels fundidos FlashKDA para decode e prefill, suporte a ativação SiTU no MegaMoE, GEMM-RS para paralelismo de sequência, all-gathers combinados com aceleração de 1,5x a 3x no nível de kernel, um orçamento adaptativo de tokens especulativos que melhora o TTFT do DSpark em cerca de 60% e sharding opcional de shared-expert que economiza aproximadamente 17 GiB de memória por GPU. O Kimi-K3 agora também roda em ROCm com o V2 model runner.

Para o DeepSeek V4, o sparse MLA funciona de ponta a ponta para decode simples, MTP e decodificação especulativa DSpark, com suporte a AMD Quark NVFP4, prompts e mapeamentos de reasoning-effort, otimizações de kernels de metadados sparse top-k, regiões CUDA graph reduzidas no modo eager e habilitação em ROCm nos chips gfx11 e gfx950.

Decodificação especulativa e Model Runner V2

Na área de decodificação especulativa, a versão inclui o DFlash2 com convolução local e um seletor de candidatos, verificação agendada por confiança no DSpark e agendamento assíncrono habilitado automaticamente para draft models.

O Model Runner V2 amadureceu com suporte a desagregação E/P/D, offloading de pesos, cache KV para MTP de múltiplas camadas, CUDA graphs para encoder, pooling token-wise no decoder, modelos de pooling via Transformers, modelos sem atenção e suporte a thinking_token_budget.

Cache KV em camadas e frontend Rust

O offloading de cache KV em camadas ganhou suporte a descarga em disco, gerenciadores de camada secundária fora da árvore via module_path, resultados parciais de carregamento, métricas de tiering e um layout canônico de CPU para offload independente de paralelismo. Na integração com Mooncake, há suporte a tenant ID e wheels oficiais na imagem Docker.

O frontend em Rust recebeu um renderizador standalone, inferência multimodal de imagem via gRPC, roteamento explícito por rank em data parallel, controle de ciclo de vida para RL e schemas protobuf publicados no Buf.

Hardware e defaults

Para NVIDIA, há suporte a FlashInfer XQA em SM12x, kernel fundido CuTeDSL em SM100 e configs de tuning FP8 para o GB10. No AMD ROCm, a stack subiu para torch 2.12 e triton 3.7, com AITER e inferência FP8 habilitados no GFX120x. No Intel XPU, há um backend linear com blockwise GEMM e pesos MXFP8 para o DeepSeek V4. No CPU, um backend MLA permite rodar DeepSeek-V2/V3, e GPTQ e AWQ foram habilitados em s390x.

Os novos defaults incluem max_num_batched_tokens elevado de 8192 para 16384, prefix caching habilitado por padrão para modelos Mamba e captura de CUDA graph padrão em 1024 no Blackwell.

API, segurança e breaking changes

Na API, há prioridade de requisição via cabeçalho HTTP, count_reasoning_tokens no parser de streaming e melhorias na API Anthropic (erros 4xx em /v1/messages, preservação de disable_parallel_tool_use) e Cohere. Em saída estruturada, stop tokens são mascarados no xgrammar até a gramática terminar, e bytes NUL e IDs de token negativos são rejeitados.

Em segurança, foi corrigido um DoS via falsificação de sample-rate que burlava o limite de duração do decode de áudio; _load_ov2_processor passou a ser protegido por resolve_trust_remote_code, e a documentação agora avisa que --api-key não protege todos os endpoints.

As breaking changes incluem: suporte a bitsandbytes migrado para plugin fora da árvore, atualização do Transformers para 5.15.0, remoção do calculate_kv_scales e do override_attention_dtype, e remoção de código MoE legado. A imagem de runtime subiu para Ubuntu 24.04.