A JetBrains lançou e abriu o código do Mellum2.1, um modelo pequeno feito para agentes de programação que rodam localmente. Ele mantém a arquitetura de mistura de especialistas (MoE) do Mellum2, com 12B de parâmetros no total e 2,5B ativos, licença Apache 2.0, pesos no Hugging Face e, segundo o model card, classificado como “modelo de raciocínio” (thinking model).
O blog oficial o descreve de forma bem direta: ele consegue circular por uma base de código, alterar arquivos e depois verificar as próprias mudanças. A geração anterior não conseguia chegar a esse ponto, e a JetBrains admite no texto que o Mellum2 não atingiu o nível desejado ao trabalhar dentro de repositórios.
Arquitetura intacta, o que mudou foi o treinamento
O Mellum2.1 e o Mellum2 usam o mesmo esqueleto: 28 camadas, 64 especialistas com 8 ativados por vez, atenção GQA, janela deslizante de 1024 em 3 de cada 4 camadas e contexto de 131072. Toda a mudança está no pós-treinamento.
Segundo a JetBrains, o aprendizado por reforço deixou de ser uma etapa curta no fim do treinamento e passou a ser o corpo principal dele. As tarefas cobrem matemática, programação competitiva, ciência, chamadas de ferramentas e engenharia de software. Os dados misturam conjuntos públicos de aprendizado por reforço com tarefas criadas pela própria equipe, e cada fonte foi filtrada antes de entrar no treinamento, porque dados públicos costumam trazer testes escritos de forma errada, respostas impossíveis de verificar e dificuldade inadequada.
A parte de engenharia de software foi treinada em repositórios de código reais: o modelo recebe um shell e ferramentas de edição de arquivos, e só ganha recompensa quando os testes passam. A equipe montou uma infraestrutura própria para isso, e o trecho do blog diz que o treinamento executou “millions of sandboxed runs across thousands of environments”, isto é, milhões de execuções em sandbox em milhares de ambientes.
Onde as pontuações subiram
O model card traz uma tabela comparativa medida pela própria equipe, com a geração anterior Mellum2 Thinking, o Gemma 4 E4B e o Qwen3.5 9B como adversários. O maior avanço está nas tarefas de agente:
| Benchmark | Mellum2.1 | Mellum2 | Qwen3.5 9B |
|---|---|---|---|
| SWE-bench Verified | 47,0 | 2,0 | 50,0 |
| SWE-bench Pro | 28,0 | 0,0 | 38,0 |
| Terminal-Bench 2.1 | 17,4 | 0,6 | 21,7 |
| LiveCodeBench v6 | 82,0 | 69,4 | 75,4 |
| BFCL v4 | 62,3 | 49,6 | 58,5 |
As avaliações de agente usam de forma padronizada o framework de execução de código aberto Pi v0.73.1, com ferramentas de shell e de arquivos, contexto de 114K e no máximo 16K tokens por rodada. Todas as pontuações foram obtidas pela própria JetBrains e, até agora, não há reprodução por terceiros.
Lado a lado com o Qwen3.5 9B
Comparando com o Qwen3.5 9B, o modelo de mesmo porte mais citado como referência, os pontos fortes e fracos do Mellum2.1 ficam bem claros.
Escrever uma função isolada, resolver problemas de competição e chamar ferramentas: aí o Mellum2.1 lidera, com 6,6 pontos a mais no LiveCodeBench, quase 10 pontos a mais no MBPP+ e cerca de 4 pontos a mais no BFCL. Trabalhar de forma contínua dentro de um repositório: aí ele ainda fica atrás, com 3 pontos a menos no SWE-bench Verified, 10 a menos no SWE-bench Pro e mais de 4 a menos no Terminal-Bench. A diferença em raciocínio geral é maior: 64,6 contra 77,8 no GPQA Diamond e 83,3 contra 86,7 no AIME. No XSTest, teste de recusa por segurança, os 88,8 pontos dele também ficam abaixo de Qwen e Gemma.
A aposta da JetBrains é a velocidade. O blog afirma que, em testes de alta carga em uma H200, o Mellum2.1 foi o mais rápido do grupo, atendendo por unidade de tempo cerca de duas vezes mais tokens que o Qwen3.5 9B; em cenários de requisição única, a previsão de vários tokens pode acelerar mais ou menos 1,6 vez. O motivo é fácil de deduzir: um modelo denso de 9B calcula todos os parâmetros para cada token, enquanto o Mellum2.1 aciona só 2,5B por vez. Numa conta aproximada, o custo de cálculo por token fica em cerca de três décimos do outro, ao preço de manter todos os 12B de pesos na memória de vídeo, algo em torno de 24GB em bfloat16.
Isso define o lugar em que ele se encaixa: na máquina do próprio desenvolvedor ou na rede interna da empresa, cuidando de um grande volume de pequenas alterações repetitivas e chamadas de ferramentas, deixando as refatorações complexas entre vários arquivos para modelos maiores. No blog, a JetBrains também ressalta que a implantação local mantém código e dados inteiramente nas mãos do usuário.
Como usar agora
O model card traz o comando de implantação com vLLM, e Transformers e SGLang também funcionam. As versões GGUF para llama.cpp, Ollama e LM Studio, além das cabeças MTP para decodificação especulativa no vLLM, aparecem como “em breve” na documentação oficial, sem data definida. Para a maioria de quem quer testar no notebook, será preciso esperar o GGUF sair para ficar prático.
Fontes: blog oficial da JetBrains, model card no Hugging Face (conferência dos parâmetros de arquitetura e das pontuações), CocoLoop; relatório técnico do Mellum2 (conferência da arquitetura da geração anterior).