Recentemente, a equipe do modelo de linguagem grande Doubao da ByteDance anunciou o lançamento em código aberto do Multi-SWE-bench, o primeiro conjunto de dados de benchmark de reparo de código multilíngue do setor, representando um novo avanço na avaliação e melhoria da capacidade de "correção automática de bugs" dos modelos de linguagem grandes.
Com o rápido desenvolvimento da tecnologia de modelos de linguagem grandes, as tarefas de geração de código tornaram-se uma área crucial para testar a inteligência dos modelos. Benchmarks de reparo de código, como o SWE-bench, embora possam avaliar a inteligência de programação dos modelos, apresentam limitações significativas. Eles se concentram apenas na linguagem Python, não conseguindo avaliar a capacidade de generalização entre linguagens do modelo; além disso, a dificuldade das tarefas é limitada, não abrangendo cenários de desenvolvimento complexos, o que restringe o desenvolvimento da inteligência de código dos modelos de linguagem grandes.
Pontuações de avaliação de capacidade de código para diferentes modelos
O Multi-SWE-bench surge para atender a essa necessidade, representando um grande avanço em relação ao SWE-bench. Pela primeira vez, ele abrange sete linguagens de programação principais: Java, TypeScript, C, C++, Go, Rust e JavaScript, construindo 1632 tarefas de reparo originárias de repositórios de código aberto reais. Essas tarefas foram rigorosamente selecionadas e verificadas manualmente para garantir a confiabilidade da qualidade. Além disso, o Multi-SWE-bench introduz um mecanismo de classificação de dificuldade, dividindo as tarefas em três níveis: fácil, médio e difícil, permitindo uma avaliação mais abrangente do desempenho do modelo em diferentes níveis de capacidade.
Experimentos baseados neste conjunto de dados mostram que os modelos de linguagem grandes atuais apresentam desempenho aceitável na correção de código Python, mas a taxa média de correção para outras linguagens é inferior a 10%, destacando que o reparo de código multilíngue ainda representa um desafio para os modelos de linguagem grandes.
Alguns modelos principais apresentam desempenho superior em Python, mas pontuações mais baixas para outras linguagens. Além disso, à medida que a dificuldade da tarefa aumenta, a taxa de correção do modelo diminui gradualmente.
Para apoiar o uso do aprendizado por reforço no campo da programação automática, a equipe também lançou em código aberto o Multi-SWE-RL, fornecendo 4723 instâncias e um ambiente Docker reprodutível, com suporte para inicialização com um único clique e avaliação automática, criando uma base de dados padronizada para treinamento de RL. Além disso, a equipe iniciou um programa de comunidade de código aberto, convidando desenvolvedores e pesquisadores a participar da expansão do conjunto de dados, avaliação de novos métodos e outros trabalhos, promovendo coletivamente a construção do ecossistema RL for Code.
A equipe do modelo de linguagem grande Doubao da ByteDance afirma que espera que o Multi-SWE-bench impulsione a tecnologia de programação automática para novas alturas e que continuará expandindo sua abrangência no futuro, ajudando os modelos de linguagem grandes a alcançar progressos significativos na área de "engenharia de software automatizada".