A Ant Group e a comunidade vLLM abriram em conjunto o código do Humming, uma biblioteca de kernels para inferência quantizada. O código fica na organização do projeto vLLM e pode ser instalado diretamente com pip install humming-kernels. A partir do vLLM 0.29.0, o pacote de instalação da versão CUDA já traz essa dependência; basta adicionar --linear-backend humming ou --moe-backend humming para alternar.
O blog lista como colaboradores da Ant Jinzhen Lin, Zekai Gu e Zhilin Huang; do lado da comunidade, aparecem Michael Goin, da Red Hat, e outros.
Uma biblioteca para uma longa lista de formatos
O velho problema da inferência quantizada é a quantidade de formatos: pesos de 4 bits com ativações de 16 bits exigem um conjunto de kernels, ativações de 8 bits exigem outro, e FP4, MXFP4 e NVFP4 têm cada um a sua forma de escrita. A ideia do Humming é separar a “descrição da quantização” da “execução do kernel” e montar os kernels concretos a partir de componentes compartilhados. Nas palavras do texto original, "separating quantization descriptions from execution choices".
Hoje há suporte às combinações WnA16, W8A8, W4A8 e W4A4, com tipos de dados de INT1 a INT8, de FP4 a FP8, além de MXFP4, MXINT4 e NVFP4. Em hardware, a biblioteca cobre todas as arquiteturas da Nvidia a partir da Turing, das H20 e H200 (Hopper) à B300 (Blackwell) e à SM120 de consumo.
Algumas comparações em multiplicação de matrizes de uma única camada (todas medidas pela própria equipe do projeto; as condições estão nos gráficos do texto original):
| Cenário | Comparado com | Aceleração |
|---|---|---|
| W4A16 denso, lotes pequenos | cuBLAS | cerca de 3 a 4 vezes na maioria dos dispositivos |
| W4A8-MXFP4, H200 | DeepGEMM W8A8 | cerca de 4,5 vezes |
| MoE W4A16, B300, lotes grandes | Marlin | cerca de 5 vezes |
O teste de ponta a ponta usou o DeepSeek-V4.1-Flash, 8 GPUs H20, paralelismo de tensor 8. Ao trocar a parte MoE de Marlin W4A16 por Humming W4A8, a vazão de saída aumentou de cerca de 14% a 43% e a latência do primeiro token caiu de cerca de 25% a 32%, com ganho maior quanto maior a concorrência.
O que isso significa para quem implanta na China
A plataforma de testes do blog parece escolhida a dedo para a realidade dos clusters de inferência chineses. A H20 é a placa da Nvidia feita para o mercado chinês: o poder de cálculo foi cortado, mas a largura de banda da memória foi mantida, de modo que a quantização em poucos bits é quase obrigatória para rodar modelos grandes. O teste de ponta a ponta usa ainda o modelo MoE da própria DeepSeek, e muitas equipes no país têm exatamente essa combinação em mãos.
Outro detalhe são os dispositivos nacionais compatíveis com CUDA: o blog inclui na lista de suporte o Zhenwu 810E, da T-Head, braço de chips da Alibaba, e o roteiro prevê adaptar mais dispositivos PPU da T-Head, como o Zhenwu M890. Ant e T-Head pertencem ao ecossistema Alibaba; até onde essa frente avançará dependerá do ritmo de incorporação ao projeto principal.
Para equipes que já usam o vLLM, o custo de migração está sobretudo na validação: formatos que o Humming lê diretamente dispensam requantizar o modelo; formatos sem suporte nativo no vLLM, como GPTQ INT3, podem seguir pelo caminho de compatibilidade --quantization humming.
As limitações declaradas
O blog lista as limitações com clareza. As novas instruções da B300 deixaram de suportar cálculo em INT8, então a multiplicação de matrizes INT8 só roda com instruções antigas e tem desempenho nitidamente menor; a próxima geração, Rubin, não suporta os dois formatos ocultos de Tensor Core da Blackwell. A configuração dos kernels hoje é escolhida por regras heurísticas, e os autores admitem que não conseguem chegar ao ótimo global; o ajuste automático ainda não está concluído.
A velocidade de compilação é outro atrativo. Em uma H200 com o cache desligado, um único kernel W4A16 compilado com Humming e NVRTC leva apenas 1,88 segundo; no aquecimento do modelo, os kernels que cobrem todos os tamanhos de uma camada ficam prontos em cerca de 2 a 4 segundos. Para equipes que trocam de modelo e de formato com frequência para experimentar, isso economiza mais tempo do que os números de vazão.
Fontes: blog oficial do vLLM, repositório do Humming no GitHub, CocoLoop; vazão, latência e tempos de compilação seguem os critérios de teste divulgados pela equipe do projeto.