Pular para o conteúdo

Modelos menores podem escrever códigos melhores

Treino por reforço ensina IA a usar o projeto inteiro ao sugerir código e supera modelo de 32 bilhões de parâmetros em testes.

Por Thiago Botti2 min de leitura

Compartilhar

Quem programa conhece a cena: o assistente sugere uma linha que parece certa, mas chama algo que não existe no projeto. Uma equipe de pesquisadores mostrou que modelos de IA relativamente pequenos, com cerca de 7 bilhões de parâmetros, acertam mais essas sugestões quando são treinados para entender o que o programador pretende. O método se chama IntentCoder e foi publicado com revisão por pares na conferência EMNLP 2026.

O ponto de partida foi um paradoxo. Mostrar ao modelo trechos de outros arquivos do projeto aumenta o total de acertos, mas também faz errar respostas que estavam certas só com o arquivo atual. Para lidar com isso, a equipe usou aprendizado por reforço, um treino por tentativa e erro guiado por notas. O modelo propõe várias linhas e ganha pontos quando chega perto do código correto e quando usa os mesmos nomes de variáveis, funções e classes. Foram 32 mil exemplos, metade em Python e metade em Java.

Nos testes, a versão baseada no modelo Qwen escreveu a linha exatamente igual à correta em 42,47% dos casos em Java. Um modelo da mesma família com 32 bilhões de parâmetros, bem maior, ficou em 35,07%. O método também superou outras técnicas de treino aplicadas aos mesmos modelos, e o tempo extra para responder ficou, em média, abaixo de 25 milissegundos.

Na prática, isso pode ajudar a criar assistentes de programação mais precisos que rodem em máquinas modestas, sem depender de modelos gigantes. Pense em alguém mexendo num sistema grande, cheio de arquivos que dependem uns dos outros: as sugestões poderiam usar as classes certas do próprio projeto. A ideia de dar notas por proximidade, sem precisar executar o código, também pode servir para treinar IA em outras tarefas. Por enquanto, são possibilidades, já que nada foi testado com usuários reais.

Há limites claros. As notas medem semelhança com uma resposta de referência, não se o programa funciona, porque o método não compila nem testa o código. Só modelos de 7 bilhões de parâmetros foram treinados, a avaliação principal cobre apenas Python e Java e não há testes estatísticos com várias rodadas. Os autores supõem que modelos maiores também ganhariam com o treino e que o atraso seria imperceptível para as pessoas, mas isso ainda precisa ser verificado.

Thiago Botti

Engenharia de software na prática.

Conheça o autor →

Comentários

Carregando comentários…