IA nativa é avançado o suficiente para quase parecer um hack de vida. Você pode fazer brainstorming, analisar documentos complexos, gerar e executar códigos complexos em sua máquina e obter insights que o ajudam a tomar decisões importantes, tudo isso sem custar um centavo, desde que você tenha computação e armazenamento. Não é nenhuma surpresa que o cenário de IA nativa esteja evoluindo rapidamente, e hoje em dia não temos mais opções de modelos de peso aberto capazes.
No entanto, essa abundância me coloca em um dilema entre os três modelos de codificação mais procurados no momento. Entre Qwen3-Coder, Devstral-Small-2 e GPT-EUAé difícil escolher um que seja melhor que o outro com base em apenas algumas horas ou dias. Então, depois de uma semana inteira de trabalho, finalmente decidi qual deles ganharia um lugar permanente na minha pilha de IA local.
Três dos melhores modelos de peso aberto testados
Mas como posso compará-los razoavelmente?
Parece que toda semana um novo modelo aberto afirma ser um modelo de codificação, e Qwen3-Coder, Devstral Small-2 e GPT-OSS têm falado bastante sobre isso em subs de IA e fóruns de tecnologia.
O plano para escolher o melhor dos três era ver como cada modelo lidava com a codificação da semana. Ao longo desta semana, dei a esses três modelos o mesmo desafio, pedindo-lhes que construíssem o aplicativo Pygame do zero, avaliando-os sobre o quão bem funcionava e com base se os modelos introduziam um comportamento que eu claramente não solicitei.
Um dos aspectos mais inevitáveis do uso de IA generativa para gerar código é, obviamente, a detecção e eliminação eficiente de erros. Durante esse tempo, pedi a Claude Fable 5 para inserir maliciosamente três erros lógicos separados no script autogerado de cada modelo e, em seguida, devolvi a cada modelo seu próprio arquivo, que relatou nada mais do que “há um bug e precisa ser corrigido”.
E finalmente faço uma verificação de refatoração para cada modelo. O assunto era um script Python de 120 linhas que simulava o pipeline de pedidos de uma pequena loja online que comparava a fila de pedidos dos clientes com o estoque, rejeitava pedidos com produtos desconhecidos ou estoque insuficiente, aplicava descontos apropriados à categoria, adicionava despesas de envio em uma escala móvel e imprimia um relatório de receita e estoque no final. Foi escrito como um iniciante escreveria com pressa, o que o torna um verdadeiro candidato para limpeza.
|
Modelo |
Dia de Olam |
Tamanho no disco |
|---|---|---|
|
GPT-EUA |
gpt-oss: 20b |
13GB |
|
Devstral Pequeno 2 |
devstral-small-2: Mais recente |
15 GB |
|
Codificador Qwen3 |
codificador qwen3: 30b |
18 GB |
Qwen3-Coder 30B foi o mais rápido, mas…
O menos confiável dos três
Kwen causou a primeira impressão mais forte, sendo o mais apressado dos três. O programa, que era um jogo simples do Snake feito em Pygame, era o maior e mais bonito de todos. Qwen produziu um quadro de 800×600 com uma grade desenhada com elementos estilísticos distintos, e cada resposta foi recebida mais rapidamente do que qualquer concorrente. Se eu tivesse decidido apenas com base na apresentação e na velocidade, teria tido um vencedor neste momento.
No entanto, o modelo atual exigia mais “testes”, por falta de palavra melhor. Sua arena permitiu que a cobra se teletransportasse através das paredes, o que, como qualquer um saberia, é uma situação lamentável. Na próxima rodada de depuração, o código gerado corrigiu todos os erros lógicos que Claude havia inserido no código original, mas seu diagnóstico escrito era amplamente inconsistente com os erros descritos. A explicação mais provável para isso é que Qwen não encontrou nenhum erro e simplesmente substituiu as seções suspeitas de sua memória sobre como deveria ser a lógica de Snake, e isso fez com que ele entrasse no código correto.
O teste de refatoração foi uma verdadeira decepção. Seu script Python refatorado travou na primeira linha com um erro de escopo. Um modelo que responde rapidamente, parece polido e não consegue explicar suas edições é uma adição arriscada.
|
Inspeção |
Mais detalhes |
O resultado |
|---|---|---|
|
Inseto plantado nº 1 |
Teste de desova de alimentos excluído no segmento da cauda |
Corrigido no código, não diagnosticado |
|
Inseto plantado nº 2 |
A chave certa é verificada Abaixo em vez de Para a esquerda |
Corrigido no código, não diagnosticado |
|
Inseto plantado nº 3 |
Snake inicializou um segmento menor que o comprimento especificado |
Encontrado e corrigido |
|
Refatoração |
Travou imediatamente com erro de escopo variável |
Fracassado |
Devstral Small 2 enviou o patch mais quebrado
Realmente impossível recomendar
A Devstral tem uma reputação baseada em casos de uso de agentes, então eu esperava que ela brilhasse quando entregasse seu arquivo com erros. Ele encontrou exatamente um dos três insetos plantados, então inverteu a verificação de direção e diagnosticou bem, explicando o mecanismo para a virada de 180 graus que o bug pretendido por Claude causaria. Em seguida, anunciou com segurança que o código havia sido corrigido, mas os outros dois permaneceram intactos no mesmo script que devolveu, um dos quais foi reproduzido literalmente. Foi muito engraçado porque o código quebrado marcado como corrigido é o pior resultado que o assistente de depuração pode produzir.
Agora, eu teria descartado isso como algo único, mas uma rodada de remodelação repetiu o padrão novamente. Sua descrição simples de script de 120 linhas em inglês era precisa por si só, mas o código reestruturado travou na fase de resumo porque um parâmetro foi esquecido.
|
Inspeção |
Mais detalhes |
O resultado |
|---|---|---|
|
Inseto plantado nº 1 |
A comida pode aparecer logo abaixo da cabeça da cobra |
Atrasado |
|
Inseto plantado nº 2 |
O teste de autocolisão pulou o segmento, permitindo que a cobra passasse por si mesma |
Atrasado |
|
Inseto plantado nº 3 |
Para a esquerda a chave é verificada para cima, não Certo |
Encontrado e corrigido |
|
Refatoração |
Falha na fase de resumo |
Fracassado |
O GPT-OSS 20B era o menor modelo, e ainda assim…
Ele varreu todas as rodadas perfeitamente
GPT-OSS foi o único modelo que me confundiu. Conquistou gerações porque se baseou no bom senso. Snake Pygame foi o único dos outros onde as paredes realmente mataram você, o único com um mapa reverso adequado que bloqueava giros instantâneos e o único que testou a desova de comida contra todo o corpo da cobra com um ajudante especial. Como em todos os testes, esse comportamento não foi especificado e não esteve relacionado ao segurar as mãos.
A rodada de depuração também foi limpa. Todos os três erros plantados foram identificados com causas raízes exatas, verificados em relação ao meu diff e corrigidos sem tocar em uma única linha que não estivesse quebrada. Literalmente não há espaço para reclamações aqui.
O refatorador o selou como sendo executado byte por byte de forma idêntica ao original, enquanto sua explicação simples em inglês foi a única coisa que notou detalhes como dados de script que nunca sobreviveram. Tudo isso veio do menor download dos três, incluindo meu RTX 4070 Ti Super de 16GB com espaço de sobra. Este modelo provou que simplesmente não há concorrência.
|
Inspeção |
Mais detalhes |
O resultado |
|---|---|---|
|
Inseto plantado nº 1 |
O mapa de direção oposta indicado Para a esquerda por si só, quebrando a proteção de rotação |
Encontrado, corrigido, devidamente explicado |
|
Inseto plantado nº 2 |
Uma cauda perdida aparece em um galho comido, a cobra nunca cresceu |
Encontrado, corrigido, devidamente explicado |
|
Inseto plantado nº 3 |
Verifique a parede um a um, permitindo um passo além do limite |
Encontrado, corrigido, devidamente explicado |
|
Refatoração |
A saída é idêntica à original |
Passar |
Um resultado para o qual nada poderia ter me preparado
Se você tem acompanhado minha postagem, sabe que fiz algumas avaliações de benchmark do LLM até agora. Todos os testes que fiz acabaram revelando algumas compensações para alguns modelos, geralmente com um funcionando em plena capacidade enquanto o outro reduz a eficiência. Esta é a primeira vez que uma execução de benchmark me dá alvejante. GPT-OSS é o vencedor claro em todas as três rodadas, mas acredito que mais testes são necessários. Uma semana de testes e um par de mãos controlando tudo é certamente um sinal ou indicador, mas pode não ser um veredicto universal se a metodologia de teste mudar. Só há uma maneira de descobrir.






