SWE-QA: Os Modelos de Linguagem Podem Responder a Perguntas de Código em Nível de Repositório?
SWE-QA: Can Language Models Answer Repository-level Code Questions?
September 18, 2025
Autores: Weihan Peng, Yuling Shi, Yuhang Wang, Xinyun Zhang, Beijun Shen, Xiaodong Gu
cs.AI
Resumo
Compreender e raciocinar sobre repositórios de software inteiros é uma capacidade essencial para ferramentas de engenharia de software inteligentes. Embora benchmarks existentes, como CoSQA e CodeQA, tenham avançado o campo, eles se concentram predominantemente em trechos de código pequenos e autossuficientes. Essas configurações não capturam a complexidade dos repositórios do mundo real, onde a compreensão e o raciocínio eficazes frequentemente exigem navegar por vários arquivos, entender a arquitetura do software e fundamentar respostas em dependências de código de longo alcance. Neste artigo, apresentamos o SWE-QA, um benchmark de questionamento e resposta (QA) em nível de repositório projetado para facilitar a pesquisa em sistemas automatizados de QA em ambientes de código realistas. O SWE-QA envolve 576 pares de perguntas e respostas de alta qualidade, abrangendo diversas categorias, incluindo compreensão de intenção, raciocínio entre arquivos e análise de dependências multi-hop. Para construir o SWE-QA, primeiro rastreamos 77.100 issues do GitHub de 11 repositórios populares. Com base em uma análise das perguntas naturalmente ocorrentes de desenvolvedores extraídas dessas issues, desenvolvemos uma taxonomia de dois níveis para perguntas em nível de repositório e construímos um conjunto de perguntas iniciais para cada categoria. Para cada categoria, curamos e validamos manualmente as perguntas e coletamos suas respostas correspondentes. Como aplicação protótipo, desenvolvemos ainda o SWE-QA-Agent, um framework agentic no qual agentes de LLM raciocinam e agem para encontrar respostas automaticamente. Avaliamos seis LLMs avançados no SWE-QA sob várias estratégias de ampliação de contexto. Os resultados experimentais destacam o potencial dos LLMs, particularmente nosso framework SWE-QA-Agent, em abordar QA em nível de repositório, ao mesmo tempo em que revelam desafios em aberto e apontam direções futuras de pesquisa.
English
Understanding and reasoning about entire software repositories is an
essential capability for intelligent software engineering tools. While existing
benchmarks such as CoSQA and CodeQA have advanced the field, they predominantly
focus on small, self-contained code snippets. These setups fail to capture the
complexity of real-world repositories, where effective understanding and
reasoning often require navigating multiple files, understanding software
architecture, and grounding answers in long-range code dependencies. In this
paper, we present SWE-QA, a repository-level code question answering (QA)
benchmark designed to facilitate research on automated QA systems in realistic
code environments. SWE-QA involves 576 high-quality question-answer pairs
spanning diverse categories, including intention understanding, cross-file
reasoning, and multi-hop dependency analysis. To construct SWE-QA, we first
crawled 77,100 GitHub issues from 11 popular repositories. Based on an analysis
of naturally occurring developer questions extracted from these issues, we
developed a two-level taxonomy of repository-level questions and constructed a
set of seed questions for each category. For each category, we manually curated
and validated questions and collected their corresponding answers. As a
prototype application, we further develop SWE-QA-Agent, an agentic framework in
which LLM agents reason and act to find answers automatically. We evaluate six
advanced LLMs on SWE-QA under various context augmentation strategies.
Experimental results highlight the promise of LLMs, particularly our
SWE-QA-Agent framework, in addressing repository-level QA, while also revealing
open challenges and pointing to future research directions.