SweRank: Software-Issue-Lokalisierung mit Code-Ranking
SweRank: Software Issue Localization with Code Ranking
May 7, 2025
Autoren: Revanth Gangi Reddy, Tarun Suresh, JaeHyeok Doo, Ye Liu, Xuan Phi Nguyen, Yingbo Zhou, Semih Yavuz, Caiming Xiong, Heng Ji, Shafiq Joty
cs.AI
Zusammenfassung
Die Lokalisierung von Softwareproblemen, also die Aufgabe, die genauen Code-Stellen (Dateien, Klassen oder Funktionen) zu identifizieren, die für eine natürliche Sprachbeschreibung eines Problems (z. B. Fehlerbericht, Funktionsanfrage) relevant sind, ist ein kritischer, aber zeitaufwändiger Aspekt der Softwareentwicklung. Während neuere agentenbasierte Ansätze auf Basis von Large Language Models (LLMs) vielversprechend sind, verursachen sie oft erhebliche Latenzzeiten und Kosten aufgrund komplexer mehrstufiger Schlussfolgerungen und der Abhängigkeit von proprietären LLMs. Traditionelle Code-Ranking-Modelle, die typischerweise für die Abfrage-zu-Code- oder Code-zu-Code-Retrieval optimiert sind, haben hingegen Schwierigkeiten mit der ausführlichen und fehlerbeschreibenden Natur von Anfragen zur Problem-Lokalisierung. Um diese Lücke zu schließen, stellen wir SweRank vor, ein effizientes und effektives Retrieve-and-Rerank-Framework für die Lokalisierung von Softwareproblemen. Um das Training zu erleichtern, haben wir SweLoc erstellt, einen umfangreichen Datensatz, der aus öffentlichen GitHub-Repositories kuratiert wurde und reale Problembeschreibungen mit entsprechenden Codeänderungen kombiniert. Empirische Ergebnisse auf SWE-Bench-Lite und LocBench zeigen, dass SweRank Spitzenleistungen erzielt und sowohl frühere Ranking-Modelle als auch kostspielige agentenbasierte Systeme, die proprietäre LLMs wie Claude-3.5 verwenden, übertrifft. Darüber hinaus demonstrieren wir den Nutzen von SweLoc bei der Verbesserung verschiedener bestehender Retriever- und Reranker-Modelle für die Problem-Lokalisierung und etablieren den Datensatz als wertvolle Ressource für die Community.
English
Software issue localization, the task of identifying the precise code
locations (files, classes, or functions) relevant to a natural language issue
description (e.g., bug report, feature request), is a critical yet
time-consuming aspect of software development. While recent LLM-based agentic
approaches demonstrate promise, they often incur significant latency and cost
due to complex multi-step reasoning and relying on closed-source LLMs.
Alternatively, traditional code ranking models, typically optimized for
query-to-code or code-to-code retrieval, struggle with the verbose and
failure-descriptive nature of issue localization queries. To bridge this gap,
we introduce SweRank, an efficient and effective retrieve-and-rerank framework
for software issue localization. To facilitate training, we construct SweLoc, a
large-scale dataset curated from public GitHub repositories, featuring
real-world issue descriptions paired with corresponding code modifications.
Empirical results on SWE-Bench-Lite and LocBench show that SweRank achieves
state-of-the-art performance, outperforming both prior ranking models and
costly agent-based systems using closed-source LLMs like Claude-3.5. Further,
we demonstrate SweLoc's utility in enhancing various existing retriever and
reranker models for issue localization, establishing the dataset as a valuable
resource for the community.