Colibrì roda o GLM-5.2 com 16 GB de RAM usando SSD

Um motor de inferência de código aberto chamado Colibrì ultrapassou recentemente as 37 mil estrelas e os 4 mil forks no GitHub. Sua proposta é direta: permitir que grandes modelos MoE, com centenas de bilhões a mais de um trilhão de parâmetros, rodem no computador de uma pessoa comum. No caso do GLM-5.2, da Zhipu, o projeto indica configuração mínima de 16 GB de RAM, com 24 GB recomendados, sendo a placa de vídeo opcional.

O projeto foi criado em 1º de julho por Vincenzo Fornaro, é escrito inteiramente em C, não tem dependências externas em tempo de execução e é distribuído sob licença Apache 2.0. A versão 1.12.0, lançada em 20 de setembro, incorporou 81 pull requests; a versão 1.12.1, de 24 de setembro, somou outras 96, das quais 80 vieram de colaboradores externos.

Os pesos ficam no disco, e só se lê a camada usada

A característica dos modelos MoE é ter um número total de parâmetros enorme, mas usar de fato apenas uma pequena parte a cada token. O GLM-5.2 tem 744 bilhões de parâmetros no total, mas cada passagem ativa apenas cerca de 40 bilhões. A ideia do Colibrì é não carregar o modelo inteiro na memória: os pesos completos, quantizados em int4, ficam num SSD NVMe — cerca de 372 GB no caso do GLM-5.2 e 419 GB no do GLM-5.3.

O projeto trata VRAM, RAM e SSD como um armazenamento unificado de três camadas, algo que o autor chama de "compilação just-in-time dos pesos". Na prática, isso envolve: um cache LRU separado por camada, manter fixos na memória os especialistas mais usados, pré-carregar com uma camada de antecedência os especialistas provavelmente necessários a seguir, unir numa única leitura os especialistas exigidos por vários tokens, sobrepor a leitura em disco ao cálculo, e suportar leitura paralela em striping com dois SSDs.

O README é claro quanto ao compromisso de velocidade: se o armazenamento rápido não for suficiente, o sistema simplesmente fica mais lento, sem perda de precisão do modelo. Quanto à velocidade em si, o projeto "não oferece nenhuma garantia".

Qual é a velocidade real

O projeto apresenta várias medições:

  • 6 RTX 5090, com todos os pesos residentes na memória: de 5,8 a 6,8 tokens por segundo
  • Desktop só com CPU e 128 GB de RAM, após aquecer o cache: cerca de 1,8 por segundo
  • Uma única RTX 5070 Ti: 1,07 por segundo
  • Máquina de desenvolvimento do autor, com 25 GB de RAM, em partida a frio: de 0,05 a 0,1 por segundo

A versão 1.11.0, de meados de setembro, adicionou suporte ao DeepSeek V4.1 Flash, com 552 bilhões de parâmetros e 510 GB de uso em disco, que numa máquina só com CPU lê diretamente os pesos oficiais, sem conversão de formato. Segundo os registros do autor, a latência de partida a frio de uma única rodada caiu de 78,7 para 25,1 segundos, e em cinco rodadas seguidas de conversa a taxa se estabilizou entre 1,14 e 1,58 tokens por segundo.

A principal novidade da versão 1.12.0 é o chamado modo brio: quem faz a chamada fornece um conjunto limitado de opções de resposta, e o motor apenas lê a probabilidade de cada opção, sem gerar texto por amostragem — o número de tokens gerados é zero, e a resposta não pode sair das opções dadas. Para a maioria dos usuários locais, isso é bem mais prático do que esperar uma resposta palavra por palavra.

A lista de modelos suportados é quase um catálogo de modelos abertos chineses

O Colibrì atualmente suporta nove famílias de modelos: GLM-5.2/5.3 e a versão com visão GLM-5.3-Flash, DeepSeek V4 Flash e V4.1 Flash, Kimi K3, Qwen3.6 e Qwen3.8-Flash-Next, além de Inkling e OLMoE. Com exceção desses dois últimos, todos vêm de empresas chinesas: Zhipu, DeepSeek, Moonshot AI e Alibaba.

Para desenvolvedores na China, isso tem uma dupla utilidade. Primeiro, os dados não saem da máquina: em escritórios de advocacia, hospitais ou fábricas que não podem enviar documentos para a nuvem, uma estação de trabalho com 128 GB de RAM e um SSD de 1 TB já basta para rodar localmente um GLM de 744 bilhões de parâmetros. Segundo, a barreira de entrada cai: para um modelo como o Kimi K3, com 2,8 trilhões de parâmetros e cerca de 1,6 TB de pesos em int4, exigindo pelo menos 32 GB de RAM, antes disso era praticamente impossível para uma pessoa rodá-lo na própria máquina.

As limitações são igualmente claras. Numa velocidade de um a dois tokens por segundo, escrever uma resposta de mil palavras leva mais de dez minutos; a documentação do projeto não estima o desgaste de um SSD sob leitura aleatória intensa e prolongada. O próprio autor lembra ainda que os ganhos de velocidade obtidos com decodificação especulativa são valores medidos, que não necessariamente se repetem em outra máquina.

Fontes: README do projeto Colibrì, notas de lançamento do Colibrì 1.11 a 1.12.1, QbitAI, CocoLoop; os números de velocidade seguem as configurações de teste publicadas pelo projeto, e o número de estrelas vem da página do GitHub.