SWE-Factory: Sua Fábrica Automatizada para Dados de Treinamento em Resolução de Problemas e Benchmarks de Avaliação
SWE-Factory: Your Automated Factory for Issue Resolution Training Data and Evaluation Benchmarks
June 12, 2025
Autores: Lianghong Guo, Yanlin Wang, Caihua Li, Pengyu Yang, Jiachi Chen, Wei Tao, Yingtian Zou, Duyu Tang, Zibin Zheng
cs.AI
Resumo
A construção de conjuntos de dados em grande escala para a tarefa de resolução de problemas no GitHub é crucial tanto para o treinamento quanto para a avaliação das capacidades de engenharia de software dos Modelos de Linguagem de Grande Escala (LLMs). No entanto, o processo tradicional para a criação de tais benchmarks é notoriamente desafiador e intensivo em mão de obra, especialmente nas etapas de configuração de ambientes de avaliação, classificação dos resultados dos testes e validação das instâncias de tarefas. Neste artigo, propomos o SWE-Factory, um pipeline automatizado projetado para enfrentar esses desafios. Para resolver esses problemas, nosso pipeline integra três componentes automatizados principais. Primeiro, apresentamos o SWE-Builder, um sistema multiagente que automatiza a construção do ambiente de avaliação, empregando quatro agentes especializados que trabalham em um ciclo colaborativo e iterativo e utilizam um pool de memória de ambiente para aumentar a eficiência. Segundo, introduzimos um método de classificação padronizado baseado em códigos de saída, que elimina a necessidade de escrever manualmente parsers personalizados. Por fim, automatizamos o processo de validação fail2pass utilizando esses sinais confiáveis de códigos de saída. Experimentos com 671 problemas em quatro linguagens de programação mostram que nosso pipeline pode construir efetivamente instâncias de tarefas válidas; por exemplo, com o GPT-4.1-mini, nosso SWE-Builder constrói 269 instâncias válidas a um custo de 0,045 por instância, enquanto com o Gemini-2.5-flash, ele alcança um desempenho comparável ao menor custo de 0,024 por instância. Também demonstramos que nossa classificação baseada em códigos de saída alcança 100% de precisão em comparação com a inspeção manual, e nossa validação automatizada fail2pass atinge uma precisão de 0,92 e um recall de 1,00. Esperamos que nosso pipeline automatizado acelere a coleta de conjuntos de dados de resolução de problemas no GitHub em grande escala e de alta qualidade, tanto para treinamento quanto para avaliação. Nosso código e conjuntos de dados estão disponíveis em https://github.com/DeepSoftwareAnalytics/swe-factory.
English
Constructing large-scale datasets for the GitHub issue resolution task is
crucial for both training and evaluating the software engineering capabilities
of Large Language Models (LLMs). However, the traditional process for creating
such benchmarks is notoriously challenging and labor-intensive, particularly in
the stages of setting up evaluation environments, grading test outcomes, and
validating task instances. In this paper, we propose SWE-Factory, an automated
pipeline designed to address these challenges. To tackle these issues, our
pipeline integrates three core automated components. First, we introduce
SWE-Builder, a multi-agent system that automates evaluation environment
construction, which employs four specialized agents that work in a
collaborative, iterative loop and leverages an environment memory pool to
enhance efficiency. Second, we introduce a standardized, exit-code-based
grading method that eliminates the need for manually writing custom parsers.
Finally, we automate the fail2pass validation process using these reliable exit
code signals. Experiments on 671 issues across four programming languages show
that our pipeline can effectively construct valid task instances; for example,
with GPT-4.1-mini, our SWE-Builder constructs 269 valid instances at 0.045 per
instance, while with Gemini-2.5-flash, it achieves comparable performance at
the lowest cost of 0.024 per instance. We also demonstrate that our
exit-code-based grading achieves 100% accuracy compared to manual inspection,
and our automated fail2pass validation reaches a precision of 0.92 and a recall
of 1.00. We hope our automated pipeline will accelerate the collection of
large-scale, high-quality GitHub issue resolution datasets for both training
and evaluation. Our code and datasets are released at
https://github.com/DeepSoftwareAnalytics/swe-factory.