← Últimos artigos
💬 NLP

Position: Coding Benchmarks Are Misaligned with Agentic Software Engineering

O artigo argumenta que os atuais benchmarks de codificação estão desalinhados com a engenharia de software agêntica porque confundem o desempenho do modelo com componentes de suporte do sistema, penalizam soluções alternativas válidas ao dependerem de uma única resposta de referência e carecem do feedback granular necessário para a melhoria iterativa do sistema.

Autores originais: Maria I. Gorinova, Macey Baker, Amy Heineike, Maksim Shaposhnikov, Rob Willoughby, Dru Knox

Publicado 2026-06-17
📖 6 min de leitura🧠 Leitura aprofundada

Autores originais: Maria I. Gorinova, Macey Baker, Amy Heineike, Maksim Shaposhnikov, Rob Willoughby, Dru Knox

Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo

A Grande Ideia: Estamos Avaliando a Coisa Errada

Imagine que você está tentando julgar se um chef é bom em cozinhar uma refeição complexa.

Atualmente, a maneira como testamos os "agentes" de codificação (sistemas de IA que escrevem software) é assim: Você dá ao chef uma única receita pré-escrita (a "solução de referência"). O chef tenta cozinhar o prato. Se o prato final parecer exatamente com a foto no livro de receitas, o chef recebe uma pontuação perfeita. Se o chef cozinhar uma versão deliciosa, saudável e criativa do prato, que tem um sabor melhor, mas parece um pouco diferente, ele recebe uma pontuação baixa.

Os autores deste artigo argumentam que este é um sistema falho. Eles dizem que não estamos testando apenas o chef (o modelo de IA); estamos testando toda a configuração da cozinha (o "harness do sistema"), que inclui o fogão, as ferramentas, os ingredientes e as instruções.

O Problema Central: A "Cozinha" vs. O "Chef"

O artigo faz uma distinção crucial:

  • O Modelo (O Chef): Este é o cérebro de IA que gera o código.
  • O Harness do Sistema (A Cozinha): Este é o ambiente complexo onde a IA vive. Inclui as ferramentas que ela usa, o contexto que ela lê, as regras que ela segue e os loops de feedback que a informam se ela cometeu um erro.

A Analogia:
Pense em um agente de codificação como um carro de Fórmula 1.

  • O Modelo é o motor.
  • O Harness do Sistema é o chassi, os pneus, a aerodinâmica, a equipe de pit stop e a estratégia do piloto.

Os benchmarks atuais são como uma corrida onde você olha apenas para o tempo final e diz: "Este motor é rápido!". Mas o artigo aponta que, se você mudar os pneus ou a estratégia do piloto (o harness), o carro pode ser 20% mais rápido ou mais lento, mesmo com o exato mesmo motor.

Os autores mostram que, em testes do mundo real, mudar a "configuração da cozinha" (o harness) altera os resultados tanto quanto atualizar o "chef" (o modelo de IA) para uma versão mais nova. No entanto, nossos testes atuais tratam o resultado como se fosse apenas sobre o talento do chef.

Três Sintomas do Sistema Falho

O artigo identifica três maneiras específicas pelas quais nossos métodos de teste atuais estão desalinhados com a realidade:

1. Confusão de Linhas (Conflação)

A Analogia: Imagine que um aluno faz uma prova de matemática. Ele tira uma nota 80%. Assumimos que o aluno é inteligente. Mas e se o aluno tivesse uma calculadora, uma folha de cola e um tutor sussurrando as respostas? Se não relatarmos como eles conseguiram os 80%, não podemos saber se o aluno é realmente inteligente ou se as ferramentas fizeram o trabalho.

A Alegação do Artigo: Os benchmarks atuais relatam uma pontuação única (ex: "Modelo X tem 65% de precisão"). Eles não dizem quais ferramentas ou ambiente foram usados. Isso torna impossível saber se a IA está realmente ficando mais inteligente ou se a "cozinha" apenas ficou melhor.

2. A Armadilha da "Única Resposta Certa" (Referência Única)

A Analogia: Imagine que você pede a um carpinteiro para construir uma mesa. Você tem a foto de uma mesa específica que deseja.

  • Cenário A: O carpinteiro constrói uma mesa que é robusta, bonita e funcional, mas usa um grão de madeira ligeiramente diferente da sua foto.
  • Cenário B: O carpinteiro constrói uma mesa que é exatamente igual à sua foto, mas é bamba e desmorona.

Os benchmarks atuais dariam ao Cenário B uma pontuação perfeita e ao Cenário A uma pontuação de reprovação porque não coincidiu exatamente com a foto.

A Alegação do Artigo: A engenharia de software real não é sobre copiar uma única solução. É sobre resolver um problema da melhor maneira possível. Ao forçar a IA a corresponder a um único trecho de código "padrão ouro", estamos punindo soluções criativas, válidas e frequentemente melhores. Estamos testando se a IA consegue imitar um patch específico, não se ela consegue resolver o problema.

3. A Caixa Preta (Falta de Sinal de Componente)

A Analogia: Imagine que seu carro quebra. Você o leva a um mecânico que diz: "O carro está quebrado". Essa é uma pontuação "ponta a ponta" (end-to-end). Ela diz que algo está errado, mas não diz o quê. É a bateria? Os pneus? O motor?

A Alegação do Artigo: Quando um agente de codificação falha em um teste, os benchmarks atuais apenas dizem "Falhou". Eles não dizem o porquê. A IA entendeu mal as instruções? As ferramentas falharam? O ambiente travou? Sem saber qual parte da "cozinha" falhou, os desenvolvedores não podem consertar o sistema. Eles ficam apenas adivinhando.

O Que Devemos Fazer Em Vez Disso?

Os autores propõem três mudanças para corrigir isso:

  1. Relatar a Receita Completa: Ao publicar resultados de testes, devemos listar cada ferramenta, ambiente e configuração usada. Precisamos saber se a pontuação veio de uma IA genial ou de uma cozinha superpotente.
  2. Avaliar o Comportamento, Não a Aparência: Em vez de verificar se o código se parece com o "padrão ouro", devemos verificar se o código funciona e segue as regras (como verificações de segurança ou padrões de design). Deve haver muitas maneiras de resolver um problema, e o teste deve aceitar qualquer solução válida.
  3. Testar as Partes, Não Apenas o Todo: Precisamos decompor o sistema. Testar a habilidade da IA de ler instruções separadamente de sua habilidade de usar ferramentas. Isso nos ajuda a consertar a parte específica que quebrou, em vez de apenas adivinhar.

A Conclusão

O artigo argumenta que estamos tentando medir o futuro da engenharia de software (sistemas de IA complexos e autônomos) com ferramentas projetadas para o passado (geração de código simples de etapa única).

Para avançar, precisamos parar de tratar o modelo de IA como a única coisa que importa. Precisamos começar a medir o sistema inteiro — as ferramentas, as regras e os loops de feedback — porque, no mundo real, é isso que realmente realiza o trabalho. Até que façamos isso, nossos rankings e pontuações serão enganosos.

Afogado em artigos na sua área?

Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.

Experimentar Digest →