Agnostics: Learning to Code in Any Programming Language via Reinforcement with a Universal Learning Environment

O artigo apresenta o Agnostics, um pipeline de pós-treinamento agnóstico à linguagem que utiliza aprendizado por reforço com recompensas verificáveis por meio de comportamento observável, permitindo que modelos de linguagem de pequeno porte aprendam a codificar em qualquer linguagem de programação sem a necessidade de engenharia específica para cada uma, alcançando desempenho de ponta em linguagens de baixo recurso.

Aleksander Boruch-Gruszecki, Yangtian Zi, Zixuan Wu, Tejas Oberoi, Carolyn Jane Anderson, Joydeep Biswas, Arjun Guha

Publicado 2026-03-03
📖 4 min de leitura☕ Leitura rápida

Each language version is independently generated for its own context, not a direct translation.

Imagine que você tem um gênio da lâmpada (um Modelo de Linguagem, ou LLM) que é incrivelmente inteligente. Ele sabe escrever códigos em Python e JavaScript como se fosse um programador sênior de 20 anos de experiência. Mas, se você pedir para ele escrever um código em Fortran (usado em supercomputadores científicos) ou Lua (usado em jogos), ele começa a gaguejar, inventar coisas que não existem e falhar miseravelmente.

Por que isso acontece?

  1. Falta de livros: O gênio foi treinado lendo milhões de livros de Python, mas só encontrou alguns panfletos sobre Fortran.
  2. O problema do "Treinamento Específico": Para ensinar o gênio a falar uma nova língua, os pesquisadores tradicionais precisam criar um "professor particular" (um conjunto de testes e correções) específico para aquela língua. Fazer isso para 100 línguas diferentes é caro, demorado e chato. É como ter que contratar um professor novo para cada dialeto de uma região.

A Solução: O "Agnostics" (O Mestre Universal)

Os autores deste paper criaram uma técnica chamada Agnostics. A ideia central é brilhante na sua simplicidade: não importa como o código foi escrito, o que importa é o que ele faz.

Pense no Agnostics como um inspetor de trânsito universal.

  • Se um carro (o código) chega em um cruzamento, o inspetor não se importa se o carro é um Ford, um Toyota ou um carro feito de madeira.
  • Ele só se importa se o carro parou no sinal vermelho e seguiu a direção certa.
  • Se o carro obedeceu ao sinal, o motorista ganha um ponto. Se não, ganha zero.

O Agnostics faz exatamente isso com o código: ele ignora a sintaxe (as regras gramaticais da linguagem) e foca apenas no comportamento (a entrada e a saída).

Como funciona a mágica? (Passo a Passo)

  1. Tradução para o "Idioma da Verdade":
    Os pesquisadores pegam problemas de programação antigos (que geralmente são escritos para Python) e usam um outro gênio (um LLM) para reescrevê-los. Em vez de pedir "Faça uma função em Python que some dois números", eles transformam o pedido para: "Leia dois números da tela, some-os e escreva o resultado na tela". Isso torna o problema agnóstico (neutro) em relação à linguagem.

  2. A "Caixa Preta" (O Verificador):
    Eles criam um ambiente seguro (uma "caixa de areia" ou sandbox) onde o código é executado.

    • Você diz ao sistema: "Para rodar código em R, use este comando; para Fortran, use aquele".
    • O sistema pega a solução do modelo, roda o código, vê se a saída bate com o esperado e dá uma nota.
    • É como se você dissesse ao seu filho: "Não importa se você usa o lápis azul ou vermelho, desde que o desenho fique dentro das linhas".
  3. Aprendizado por Reforço (O Treino de Atleta):
    O modelo tenta resolver o problema.

    • Se errar, o "inspetor" diz: "Não foi isso, tente de novo".
    • Se acertar, o modelo ganha uma recompensa.
    • Com o tempo, o modelo aprende a "pensar" na lógica do problema, e não apenas a decorar a sintaxe de uma língua específica.

Os Resultados: Pequenos Gigantes

O paper testou isso em 5 línguas "pobres" (Lua, Julia, R, OCaml e Fortran). O resultado foi impressionante:

  • O "Guerreiro de 4 Bilhões": Eles pegaram um modelo pequeno e barato (Qwen 3 de 4 bilhões de parâmetros) e o treinaram com o Agnostics.
  • O Resultado: Esse modelo pequeno passou a performar tão bem quanto modelos gigantes de 16 a 70 bilhões de parâmetros nessas línguas difíceis.
  • A Analogia: É como se um atleta de 1,60m, treinado com a técnica certa, conseguisse bater recordes de salto em altura de atletas de 2,00m que treinam no método antigo.

Por que isso é importante para o mundo?

  1. Democratização: Agora, cientistas que usam Fortran para simular mudanças climáticas, ou médicos que usam R para analisar dados, podem usar IA poderosa sem precisar de supercomputadores caros.
  2. Facilidade: Para adicionar uma nova língua ao sistema, não é preciso contratar uma equipe de engenheiros. Basta um pequeno arquivo de configuração (como uma receita de bolo de 5 linhas) dizendo como instalar e rodar aquela língua.
  3. Fim do "Viés de Linguagem": A IA deixa de ser um especialista apenas em Python e JavaScript e se torna um poliglota real, capaz de ajudar em qualquer área da ciência e engenharia.

Em resumo: O Agnostics é como um tradutor universal que ensina a IA a focar no resultado e não na forma. Ele permite que modelos pequenos e acessíveis se tornem mestres em qualquer linguagem de programação, desde que você lhes dê uma chance de praticar em um ambiente justo e neutro.

Receba artigos como este na sua caixa de entrada

Digests diários ou semanais personalizados de acordo com seus interesses. Gists ou resumos técnicos, no seu idioma.

Experimentar Digest →