OrcaLoca: An LLM Agent Framework for Software Issue Localization

TL;DR

OrcaLoca enhances software issue localization accuracy with priority scheduling and context pruning, achieving a 65.33% function match rate.

cs.SE 🔴 Advanced 2025-02-01 39 views
Zhongming Yu Hejia Zhang Yujie Zhao Hanxian Huang Matrix Yao Ke Ding Jishen Zhao
software engineering large language model issue localization automation code search

Key Findings

Methodology

OrcaLoca integrates priority-based scheduling, action decomposition, and distance-aware context pruning to enhance software issue localization accuracy. Priority scheduling dynamically rearranges actions based on contextual relevance. Action decomposition refines high-level actions into sub-actions using relevance scoring, ensuring comprehensive exploration. Distance-aware context pruning filters irrelevant data, maintaining focus during exploration.

Key Results

  • OrcaLoca achieved a 65.33% function match rate on SWE-bench Lite, setting a new open-source SOTA.
  • OrcaLoca improved the final resolved rate of an open-source framework by 6.33 percentage points through patch generation integration.
  • Experiments demonstrate OrcaLoca effectively reduces interference from irrelevant information in large codebases.

Significance

OrcaLoca significantly impacts the field of software engineering, particularly in autonomous software engineering. It addresses the integration issues between large language models and precise code search mechanisms, enhancing issue localization accuracy. This framework not only improves function match rates but also offers new insights for future automated software development tools.

Technical Contribution

OrcaLoca introduces a dynamic action scheduling system and context pruning mechanism, offering more efficient exploration strategies compared to existing SOTA methods. Its priority scheduling and action decomposition methods excel in large codebases, significantly enhancing localization accuracy.

Novelty

OrcaLoca is the first framework to combine priority scheduling with distance-aware context pruning for software issue localization. Its innovation lies in dynamically adjusting action sequences and refining actions compared to existing methods.

Limitations

  • OrcaLoca may face performance bottlenecks when handling extremely large codebases.
  • The accuracy of action decomposition may be affected by complex code structures.

Future Work

Future research could explore OrcaLoca's applicability to other programming languages and optimize its performance in ultra-large codebases. Additionally, integrating other AI technologies could further enhance localization accuracy.

AI Executive Summary

Software issue localization is a significant challenge in autonomous software engineering. Existing methods struggle with integrating large language models and precise code search mechanisms, leading to suboptimal results. The OrcaLoca framework addresses this by enhancing localization accuracy through priority scheduling, action decomposition, and distance-aware context pruning.

OrcaLoca's core technologies include a dynamic action scheduling system and a context manager. Priority scheduling dynamically adjusts action sequences to ensure critical actions are executed first. Action decomposition refines high-level actions using relevance scoring to avoid redundant searches. Distance-aware context pruning filters irrelevant information, maintaining focus during exploration.

Experimental results show that OrcaLoca achieved a 65.33% function match rate on SWE-bench Lite, setting a new open-source SOTA. Its patch generation integration improved the final resolved rate of an open-source framework. This framework offers new insights for automated software development, though it may face challenges with extremely large codebases. Future research could further optimize its performance and expand its applicability.

Deep Analysis

Background

With the application of large language models in autonomous software engineering, automated coding, problem fixing, and feature improvements have become possible. However, software issue localization remains a challenge. Existing methods struggle with integrating large language models and precise code search mechanisms, leading to suboptimal results. The OrcaLoca framework addresses this issue by introducing priority scheduling and context pruning.

Core Problem

Software issue localization requires accurately identifying and navigating to relevant code sections. Due to the complexity of codebases and the ambiguity of user requirements, existing methods struggle to effectively integrate large language models and precise code search mechanisms, leading to suboptimal results.

Innovation

OrcaLoca's core innovation lies in combining priority scheduling with distance-aware context pruning for software issue localization. Priority scheduling dynamically adjusts action sequences to ensure critical actions are executed first. Action decomposition refines high-level actions using relevance scoring to avoid redundant searches.

Methodology

  • �� Priority Scheduling: Dynamically adjusts action sequences to ensure critical actions are executed first.
  • �� Action Decomposition: Refines high-level actions using relevance scoring to avoid redundant searches.
  • �� Distance-Aware Context Pruning: Filters irrelevant information, maintaining focus during exploration.

Experiments

Experiments were conducted on SWE-bench Lite, comparing multiple baseline methods. Key metrics include function match rate and final resolved rate. Results show that OrcaLoca outperforms existing methods in both function match rate and resolved rate.

Results

OrcaLoca achieved a 65.33% function match rate on SWE-bench Lite, setting a new open-source SOTA. Its patch generation integration improved the final resolved rate of an open-source framework. Experiments demonstrate OrcaLoca effectively reduces interference from irrelevant information in large codebases.

Applications

OrcaLoca can be used for issue localization and fixing in automated software development. Its priority scheduling and action decomposition methods excel in large codebases, significantly enhancing localization accuracy.

Limitations & Outlook

OrcaLoca may face performance bottlenecks when handling extremely large codebases. The accuracy of action decomposition may be affected by complex code structures. Future research could further optimize its performance and expand its applicability.

Plain Language Accessible to non-experts

Imagine you're in a massive library searching for a specific book. OrcaLoca acts like a smart librarian who first arranges the search order based on the book's topic and importance. Then, it breaks down large books into chapters to find the most relevant parts. Finally, it filters out irrelevant information, leaving only the most likely clues to find the book. This approach ensures you can quickly find the target book without being distracted by unrelated books.

ELI14 Explained like you're 14

Imagine you're playing a big game, and you need to find a hidden treasure. OrcaLoca is like a super helper that arranges the search order based on the treasure's importance. Then, it breaks down the big map into small areas to find the most likely places where the treasure is hidden. Finally, it filters out irrelevant clues, leaving only the most likely paths to find the treasure. This approach ensures you can quickly find the treasure without being distracted by unrelated clues.

Glossary

Priority Scheduling

A method that dynamically adjusts action sequences to ensure critical actions are executed first.

Used in OrcaLoca for action management.

Action Decomposition

A method that refines high-level actions into sub-actions to enhance exploration comprehensiveness.

Used in OrcaLoca for action optimization.

Context Pruning

A method that filters irrelevant information to maintain focus during exploration.

Used in OrcaLoca for context management.

Function Match Rate

A metric that measures the accuracy of software issue localization, representing the proportion of function matches.

Used to evaluate OrcaLoca's performance.

SWE-bench Lite

A benchmark dataset used for evaluating software engineering challenges, containing 300 instances.

Used for OrcaLoca's experimental evaluation.

Open Questions Unanswered questions from this research

  • 1 How to maintain OrcaLoca's performance in ultra-large codebases?
  • 2 How to improve action decomposition accuracy in complex code structures?

Applications

Immediate Applications

Software Issue Localization

OrcaLoca can be used for issue localization and fixing in automated software development, improving development efficiency.

Long-term Vision

Intelligent Software Development

OrcaLoca's technology can be used to build intelligent software development tools, advancing the automation process in software engineering.

Abstract

Recent developments in Large Language Model (LLM) agents are revolutionizing Autonomous Software Engineering (ASE), enabling automated coding, problem fixes, and feature improvements. However, localization -- precisely identifying software problems by navigating to relevant code sections -- remains a significant challenge. Current approaches often yield suboptimal results due to a lack of effective integration between LLM agents and precise code search mechanisms. This paper introduces OrcaLoca, an LLM agent framework that improves accuracy for software issue localization by integrating priority-based scheduling for LLM-guided action, action decomposition with relevance scoring, and distance-aware context pruning. Experimental results demonstrate that OrcaLoca becomes the new open-source state-of-the-art (SOTA) in function match rate (65.33%) on SWE-bench Lite. It also improves the final resolved rate of an open-source framework by 6.33 percentage points through its patch generation integration.

cs.SE cs.AI