English

Detect-Localize-Repair: A Unified Framework for Learning to Debug with CodeT5

Software Engineering 2022-12-23 v3 Computation and Language

Abstract

Automated software debugging is a crucial task for improving the productivity of software developers. Many neural-based techniques have been proven effective for debugging-related tasks such as bug localization and program repair (or bug fixing). However, these techniques often focus only on either one of them or approach them in a stage-wise manner, ignoring the mutual benefits between them. In this work, we propose a novel unified \emph{Detect-Localize-Repair} framework based on a pretrained programming language model CodeT5 to seamlessly address these tasks, named CodeT5-DLR. Specifically, we propose three objectives to adapt the generic CodeT5 for debugging: a bug detection objective to determine whether a given code snippet is buggy or not, a bug localization objective to identify the buggy lines, and a program repair objective to translate the buggy code to its fixed version. We evaluate it on each of these tasks and their combined setting on two newly collected line-level debugging datasets in Java and Python. Extensive results show that our model significantly outperforms existing baselines from both NLP and software engineering domains.

Keywords

Cite

@article{arxiv.2211.14875,
  title  = {Detect-Localize-Repair: A Unified Framework for Learning to Debug with CodeT5},
  author = {Nghi D. Q. Bui and Yue Wang and Steven Hoi},
  journal= {arXiv preprint arXiv:2211.14875},
  year   = {2022}
}

Comments

Accepted to EMNLP 2022 Findings Track

R2 v1 2026-06-28T07:14:05.051Z