ChatPaper.aiChatPaper

SWE-QA: Могут ли языковые модели отвечать на вопросы уровня репозитория по коду?

SWE-QA: Can Language Models Answer Repository-level Code Questions?

September 18, 2025
Авторы: Weihan Peng, Yuling Shi, Yuhang Wang, Xinyun Zhang, Beijun Shen, Xiaodong Gu
cs.AI

Аннотация

Понимание и анализ целых программных репозиториев является ключевой способностью для интеллектуальных инструментов разработки программного обеспечения. Хотя существующие бенчмарки, такие как CoSQA и CodeQA, продвинули эту область, они в основном сосредоточены на небольших, самодостаточных фрагментах кода. Такие подходы не учитывают сложность реальных репозиториев, где эффективное понимание и анализ часто требуют работы с несколькими файлами, понимания архитектуры программного обеспечения и учета долгосрочных зависимостей в коде. В этой статье мы представляем SWE-QA, бенчмарк для ответов на вопросы на уровне репозитория, предназначенный для содействия исследованиям в области автоматизированных систем ответов на вопросы в реалистичных условиях работы с кодом. SWE-QA включает 576 высококачественных пар вопросов и ответов, охватывающих различные категории, такие как понимание намерений, анализ между файлами и многошаговый анализ зависимостей. Для создания SWE-QA мы сначала собрали 77 100 GitHub-иssues из 11 популярных репозиториев. На основе анализа естественных вопросов разработчиков, извлеченных из этих issues, мы разработали двухуровневую таксономию вопросов на уровне репозитория и создали набор начальных вопросов для каждой категории. Для каждой категории мы вручную отбирали и проверяли вопросы, а также собирали соответствующие ответы. В качестве прототипного приложения мы также разработали SWE-QA-Agent, агентскую платформу, в которой агенты на основе крупных языковых моделей (LLM) анализируют и действуют для автоматического поиска ответов. Мы оцениваем шесть современных LLM на SWE-QA с использованием различных стратегий контекстного расширения. Результаты экспериментов подчеркивают потенциал LLM, особенно нашей платформы SWE-QA-Agent, в решении задач ответов на вопросы на уровне репозитория, а также выявляют открытые проблемы и указывают направления для будущих исследований.
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.
PDF342September 25, 2025