Investigadores do MIT dizem que o GPT-6 Astra aumentou os resultados de matemática do Qwen ao editar diretamente os seus pesos

14 min de leitura
MIT Researchers Say GPT-6 Astra Lifted Qwen Math Scores by Directly Editing Its Weights

Uma pequena alteração numérica produziu um grande aumento na pontuação

Investigadores do Laboratório de Ciência da Computação e Inteligência Artificial do MIT afirmam que o GPT-6 Astra, da OpenAI, elevou a pontuação de matemática de um pequeno modelo Qwen de 7,9% para 48,1%, alterando apenas 131 072 dos cerca de 800 milhões de parâmetros numéricos do modelo. A intervenção visou uma falha específica: o modelo gerava texto repetidamente até ficar sem espaço para responder.

Índice
  1. Uma pequena alteração numérica produziu um grande aumento na pontuação
  2. O que significa, na prática, programar pesos?
  3. Como o Astra impediu o Qwen de se repetir
  4. A descoberta da correção exigiu horas de investigação
  5. Interpretar jogos, formas e linguagem a partir de números
  6. Reparar um carro e criar redes para jogar
  7. Uma rede maior para o Go exigiu outro fluxo de trabalho
  8. Dois testes difíceis revelam as limitações
  9. O que os investigadores querem testar a seguir
  10. Principais pontos

Rikiya Takehi, Jayden Teoh, Alex Zhang e Omar Khattab descreveram as experiências numa publicação de investigação de 2 de novembro, intitulada Sparks of Weight-Space Programming, seguida de cobertura noticiosa datada de 3 de novembro de 2026. A abordagem pede a um modelo de linguagem que analise, interprete e reescreva diretamente os pesos de outra rede neuronal, ou seja, os números que determinam a forma como esta processa informação.

O resultado mais expressivo envolveu o Qwen3.5-0.8B. A sua precisão no MATH-500 aumentou 40,2 pontos percentuais, cerca de seis vezes a pontuação inicial, depois de o Astra alterar aproximadamente 0,016% dos seus pesos. A precisão nas perguntas de matemática do GSM8K subiu de 13,8% para 67,1%, enquanto a pontuação no seguimento de instruções do IFEval aumentou de 21,0% para 62,3%, quase o triplo do valor inicial.

As experiências foram além da matemática. O Astra identificou as funções de pequenas redes, reparou um controlador de condução simulado e criou redes para jogar a partir de regras e código-fonte. Outros testes revelaram limitações: teve dificuldade em identificar, apenas com base nos pesos, a tendência para concordar excessivamente com os utilizadores, e as suas alterações pouco melhoraram o desempenho matemático de outro modelo de linguagem.

Para os programadores, a possibilidade imediata é uma nova forma de reparar modelos. Em vez de ensinar uma rede através de mais uma ronda de treino convencional, um assistente de IA poderia investigar uma falha e alterar o mecanismo numérico que a provoca. O resultado do Qwen também mostra por que razão a natureza da falha é tão importante como a dimensão do aumento da pontuação.

Publicidade

O que significa, na prática, programar pesos?

Uma rede neuronal transforma dados de entrada em resultados através de camadas de cálculos. Os seus pesos controlam a intensidade com que os sinais passam entre componentes. Normalmente, o treino ajusta esses números repetidamente, usando exemplos e uma medida matemática do erro para determinar quais as alterações úteis.

O gradiente descendente é uma forma comum de calcular esses ajustes. Estima a direção em que os pesos devem ser alterados para reduzir os erros. Nestas experiências, em vez disso, o Astra raciocinou sobre a rede em análise e escreveu as alterações por si próprio, sem um ciclo de treino a calculá-las.

Takehi, doutorando no MIT CSAIL, descreveu o fluxo de trabalho proposto numa publicação nas redes sociais:

Em vez de treinar, os modelos poderão tratar os pesos em bruto como código legível e editável: diagnosticar falhas e corrigi-las diretamente.

A comparação com a reparação de software é útil. Um programador que investigue uma aplicação avariada poderá localizar uma função defeituosa e reescrevê-la. Neste caso, o Astra procurou estruturas numéricas associadas a comportamentos indesejados. É mais difícil interpretar os pesos de uma rede neuronal do que o software comum, porque, regra geral, não têm nomes legíveis por humanos que expliquem a sua função.

As experiências proporcionaram diferentes níveis de assistência. Em algumas, o Astra recebeu apenas os pesos e uma descrição da arquitetura. Noutras, teve acesso a um ambiente Python, exemplos ou autorização para executar o modelo em análise. No caso do Qwen, a ausência de treino convencional não dispensou um volume considerável de computação, exercícios práticos e testes.

Como o Astra impediu o Qwen de se repetir

O comportamento inicial do Qwen deu ao Astra um problema invulgarmente claro para investigar. Num lote inicial de 96 perguntas, 85 respostas atingiram o limite máximo de saída de 32 768 tokens. Os tokens são as unidades de texto que um modelo de linguagem lê e produz, muitas vezes palavras ou partes de palavras. Cerca de 95% dessas respostas truncadas acabavam em repetição.

A avaliação mais ampla do MATH-500 revelou o mesmo problema: 93,0% das respostas de base atingiam o limite de tokens. O Astra associou o comportamento repetitivo a uma direção numérica ligada às saídas de componentes feed-forward nas camadas 15 e 19. Estes componentes, muitas vezes designados perceptrões multicamada ou MLP, transformam informação dentro de cada camada.

Publicidade

Uma direção numérica é um padrão distribuído por muitos valores, e não um único interruptor. O Astra subtraiu a direção associada à repetição de 64 colunas de saída em cada uma das duas camadas. Foram alterados 131 072 pesos e a proporção de respostas do MATH-500 que atingiam o limite de tokens desceu para 33,1%.

A distribuição das respostas corrigidas ajuda a explicar a melhoria. De entre 1 152 perguntas reservadas, 579 respostas passaram de erradas a certas, enquanto cinco passaram de certas a erradas. Das 579 melhorias, 576 tinham sido originalmente interrompidas pelo limite de saída. Assim, a maioria dos ganhos ocorreu quando o modelo editado concluiu respostas que a repetição tinha interrompido.

Após a alteração, cerca de um terço das respostas do MATH-500 continuava a esgotar o limite de saída. A rede editada tornou-se muito mais útil nas condições do teste, mas a repetição continuou a ser um problema significativo.

A descoberta da correção exigiu horas de investigação

A tentativa mais bem-sucedida do Astra com o Qwen teve um orçamento de 50 pedidos de avaliação, cada um podendo abranger centenas de exemplos. A investigação envolveu 158 interações, 80 execuções de Python e 20,3 horas, incluindo 4,7 horas de espera durante uma interrupção do serviço.

O ambiente de trabalho incluía mais de 14 000 perguntas de treino dos conjuntos GSM8K e MATH, acesso aos pesos do Qwen e uma sandbox Python a funcionar em CPUs. A sandbox permitia até 300 execuções de código. Outras tentativas usaram orçamentos de 10 ou 25 pedidos de avaliação.

Os valores de precisão divulgados também dependem de uma configuração específica de geração. As avaliações usaram o modo de raciocínio, um limite de saída de 32 768 tokens e uma temperatura de 0,6. A temperatura determina o grau de aleatoriedade na escolha do token seguinte; o cartão do modelo recomenda uma temperatura de 1,0 para tarefas de texto no modo de raciocínio. Esta diferença é relevante para reproduzir o comportamento inicial e comparar resultados.

O processo prático foi o seguinte:

  • Os investigadores forneceram ao Astra o modelo em análise, problemas de treino e ferramentas para inspecionar os pesos e testar o comportamento.
  • O Astra investigou as respostas repetidas e desenvolveu uma alteração direcionada às camadas 15 e 19.
  • A avaliação mediu melhorias em matemática e no seguimento de instruções, bem como a redução das respostas que atingiam o limite de saída.
  • A equipa descreveu o trabalho a 2 de novembro e afirmou estar a desenvolver um benchmark e uma estrutura de testes.

A alteração final foi pequena, mas a sua descoberta exigiu um processo muito mais amplo. Continua em aberto, do ponto de vista prático, se esta abordagem poupa tempo ou recursos computacionais face ao ajuste fino convencional.

Publicidade

Interpretar jogos, formas e linguagem a partir de números

Os testes de inspeção do Astra começaram com quatro redes para jogar, treinadas através de otimização de política proximal, ou PPO, um método de aprendizagem por reforço que melhora o comportamento através de recompensas. As redes partilhavam a mesma estrutura, entradas e ações possíveis. Sem uma lista de jogos candidatos, o Astra identificou-as como Breakout, Pong, Pac-Man e Freeway.

Os investigadores disseram que o Astra analisou padrões na primeira camada e diferenças na forma como a camada de saída selecionava as ações. No exemplo de identificação do Breakout, atribuiu 99% de confiança à resposta. Essa confiança correspondia à avaliação do próprio Astra sobre a identificação.

Três pequenos modelos de difusão proporcionaram outro teste. Cada um aprendera a gerar círculos, triângulos ou quadrados. Sem os executar, o Astra identificou as formas ao encontrar contornos nos pesos da camada de saída. Os seus desenhos eram vazios por dentro, apesar de os modelos gerarem formas preenchidas; um pormenor invulgar que ligava a sua interpretação à estrutura numérica que analisara.

A identificação de idiomas foi testada com três modelos de 7,2 milhões de parâmetros cada, treinados para prever o caráter seguinte em código Python, japonês romanizado ou inglês. O Astra recebeu apenas as camadas intermédias e identificou corretamente o idioma de treino nas duas tentativas.

O Astra também encontrou as cabeças de cópia dos modelos, componentes de atenção que ajudam a repetir texto encontrado anteriormente. O modelo Python tinha mais destas cabeças, em consonância com a repetição dos mesmos nomes de variáveis e funções no código. O modelo de japonês romanizado tinha menos direções escritas pelo seu módulo final, em consonância com o seu conjunto mais reduzido de caracteres comuns.

Reparar um carro e criar redes para jogar

Um carro simulado no ambiente Kinetix tinha adquirido um hábito pouco útil: avançava contra uma rampa e ficava preso. Se recuasse primeiro, ganharia espaço suficiente para subir com sucesso. Com os pesos do controlador, uma descrição da cena e o registo de uma falha, o Astra produziu uma correção numa única resposta e sem ferramentas.

A alteração modificou 3,5% dos pesos e teve êxito nos 1 024 testes. O Astra acrescentou um pequeno percurso pela rede para acompanhar a posição e a velocidade, devolvendo depois o controlo à rede original quando o carro passava um marcador.

Publicidade

Nos jogos MinAtar Breakout, Seaquest e Asterix, o Astra recebeu uma tarefa diferente: criar redes de política de raiz. Uma rede de política transforma o estado de um jogo numa ação. O Astra recebeu as regras, o código-fonte e a arquitetura necessária, mas não recebeu exemplos de treino, cálculos de gradientes ou ferramentas, nem teve oportunidade de jogar antes da avaliação.

As suas redes superaram as referências PPO, treinadas durante 100 milhões de passos, nos três jogos. O Breakout apresentou a maior diferença numérica: o Astra obteve 517,4 pontos, contra 15,8 da referência treinada durante 100 milhões de passos e 25,3 de outra treinada durante 500 milhões de passos. Esta última comparação representa uma vantagem de cerca de vinte vezes.

A vantagem variou consoante o jogo. Face a modelos PPO treinados durante 500 milhões de passos, o Astra ficou próximo no Asterix e alcançou cerca de 60% da pontuação no Seaquest. No Breakout, a sua estratégia foi traduzida diretamente em pesos: estimar onde a bola vai cair e mover a raquete para essa posição.

Uma rede maior para o Go exigiu outro fluxo de trabalho

A experiência de Go usou uma rede com cerca de 1,5 milhões de parâmetros, demasiado grande para a inserir diretamente na janela de contexto do Astra, ou seja, a quantidade de informação que consegue processar de uma só vez. Em vez disso, os investigadores disponibilizaram uma sandbox Python para inspecionar e editar os pesos.

A arquitetura tinha 243 entradas, seis camadas ocultas com 512 unidades e 82 saídas. O Astra organizou-a como um programa compacto de Go: as primeiras camadas representavam pedras e liberdades, os pontos vazios adjacentes que mantêm um grupo vivo. As camadas intermédias transmitiam informação entre grupos ligados para identificar situações de perigo.

A camada final atribuía pontuações às jogadas que capturavam pedras adversárias, salvavam grupos ameaçados, protegiam olhos e evitavam o atari, a situação em que um grupo fica com apenas uma liberdade. Tratava-se de uma estratégia construída através de pesos numéricos, e não aprendida através de partidas repetidas.

Sem qualquer avaliação de desempenho, a rede do Astra venceu mais de metade das partidas contra duas redes PPO mais pequenas. Com um orçamento de 50 avaliações, superou uma rede do mesmo tamanho treinada em 20 milhões de partidas. O feedback permitiu ao Astra analisar derrotas e manter as alterações que melhoravam o jogo.

Dois testes difíceis revelam as limitações

O Gemma 3 270M proporcionou um contraste útil com o Qwen. Raramente ficava preso em ciclos repetitivos. Em vez disso, o Astra encontrou erros de raciocínio comuns, incluindo erros aritméticos e passos algébricos inválidos. Pequenas alterações, incluindo duplicar a força de um neurónio sensível a números, melhoraram a precisão no MATH-500 em não mais de cerca de um ponto percentual.

A comparação aponta para uma distinção prática. Eliminar um comportamento repetitivo pode permitir que um modelo use capacidades que já possui. Corrigir muitos erros matemáticos diferentes exige uma solução mais abrangente do que remover um padrão numérico comum.

Publicidade

A bajulação, a tendência para concordar com um utilizador mesmo quando este está errado, revelou-se difícil de inspecionar diretamente. Os investigadores fizeram o ajuste fino de pares de modelos Gemma 3 270M com os mesmos dados de perguntas e respostas. Um modelo foi treinado para responder corretamente; o outro, para concordar com as sugestões dos utilizadores.

O Astra não conseguiu distingui-los de forma fiável apenas com base nos pesos. Quando teve autorização para inspecionar padrões de atenção no texto que produziu, sem ver as respostas dos modelos, identificou corretamente o modelo bajulador nos três pares. Estes modelos dedicavam mais atenção nas camadas intermédias aos conteúdos sugeridos pelo utilizador.

As medições de atenção mostram para onde um modelo direciona parte do seu processamento enquanto trabalha com texto. A utilidade destas medições neste caso tornou a inspeção durante a execução numa parte importante do diagnóstico bem-sucedido. Detetar a concordância excessiva era a tarefa; alterar esse comportamento constituía uma aplicação proposta distinta.

O que os investigadores querem testar a seguir

A equipa do MIT vê possíveis aplicações na inspeção de modelos, em reparações direcionadas, na alteração de capacidades sem dados de treino convencionais e na transferência de componentes úteis entre arquiteturas diferentes. A edição direta de modelos já tem antecedentes na investigação, incluindo o ROME, apresentado na NeurIPS em 2022, e o MEMIT, apresentado na ICLR em 2023. Este trabalho explora a possibilidade de um modelo de linguagem de uso geral raciocinar sobre as próprias edições.

A melhoria recursiva de si próprio é outra direção proposta: um sistema de IA poderia ajudar a melhorar um modelo que, por sua vez, ficaria mais apto a fazer novas melhorias. Estas experiências usaram tarefas, ferramentas e orçamentos de avaliação definidos por humanos, com o Astra a trabalhar sobre outras redes. A criação de um ciclo repetido fiável exigiria mais experiências.

A equipa disponibilizou registos das experiências e ficheiros das edições; segundo a descrição, o repositório público contém registos de 1 125 chamadas aos modelos. O próximo passo anunciado é uma estrutura de testes e um benchmark que permitam uma avaliação consistente. Não foi indicada uma data de lançamento.

Para quem desenvolve aplicações de IA, a conclusão mais concreta é mais específica e imediatamente compreensível: uma pequena reparação numérica pode produzir uma grande melhoria quando uma falha recorrente impede um modelo de concluir tarefas úteis. Os resultados contrastantes do Gemma e da bajulação mostram por que razão cada reparação proposta precisa do seu próprio diagnóstico e testes.

Principais pontos

  • O Astra alterou 131 072 pesos do Qwen, cerca de 0,016% do modelo, elevando a precisão no MATH-500 de 7,9% para 48,1%.
  • A precisão no GSM8K subiu de 13,8% para 67,1%, e a do IFEval passou de 21,0% para 62,3%.
  • A principal reparação reduziu a geração repetitiva; a proporção de respostas do MATH-500 que atingiam o limite de tokens caiu de 93,0% para 33,1%.
  • A tentativa mais bem-sucedida com o Qwen usou 50 pedidos de avaliação e demorou 20,3 horas, incluindo uma interrupção do serviço.
  • O Astra também reparou um controlador de carro simulado e criou redes para jogos simplificados e para o Go.
  • O Gemma registou poucas melhorias em matemática, enquanto a identificação da bajulação exigiu medições de atenção.
  • Os investigadores estão a desenvolver um benchmark e uma estrutura de testes para a programação do espaço de pesos.
Partilhar este artigo

Também pode gostar