LLMs as Continuous Learners: Improving the Reproduction of Defective Code in Software Issues

Yalan Lin, Yingwei Ma, Rongyu Cao, Binhua Li, Fei Huang +2 more
11/21/2024
cs.SEcs.AI

No confident code implementation found for this paper. 1 possible match can be shown below.

Abstract

Reproducing buggy code is the first and crucially important step in issue resolving, as it aids in identifying the underlying problems and validating that generated patches resolve the problem. While numerous approaches have been proposed for this task, they primarily address common, widespread errors and struggle to adapt to unique, evolving errors specific to individual code repositories. To fill this gap, we propose EvoCoder, a multi-agent continuous learning framework for issue code reproduction. EvoCoder adopts a reflection mechanism that allows the LLM to continuously learn from previously resolved problems and dynamically refine its strategies to new emerging challenges. To prevent experience bloating, EvoCoder introduces a novel hierarchical experience pool that enables the model to adaptively update common and repo-specific experiences. Our experimental results show a 20\% improvement in issue reproduction rates over existing SOTA methods. Furthermore, integrating our reproduction mechanism significantly boosts the overall accuracy of the existing issue-resolving pipeline.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. 1 weaker match is hidden by default — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{lin2024llms,
  title  = {LLMs as Continuous Learners: Improving the Reproduction of Defective Code in Software Issues},
  author = {Yalan Lin and Yingwei Ma and Rongyu Cao and Binhua Li and Fei Huang and Xiaodong Gu and Yongbin Li},
  year   = {2024},
  eprint = {2411.13941},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2411.13941v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2411.13941.svg)](https://codeofpaper.com/paper/2411.13941)

Discussion