Towards Generating Functionally Correct Code Edits from Natural Language Issue Descriptions
Not on the map. Why?
Abstract (arXiv)
Large language models (LLMs), such as OpenAI's Codex, have demonstrated their potential to generate code from natural language descriptions across a wide range of programming tasks. Several benchmarks have recently emerged to evaluate the ability of LLMs to generate functionally correct code from natural language intent with respect to a set of hidden test cases. This has enabled the research community to identify significant and reproducible advancements in LLM capabilities. However, there is currently a lack of benchmark datasets for assessing the ability of LLMs to generate functionally correct code edits based on natural language descriptions of intended changes. This paper aims to address this gap by motivating the problem NL2Fix of translating natural language descriptions of code changes (namely bug fixes described in Issue reports in repositories) into correct code fixes. To this end, we introduce Defects4J-NL2Fix, a dataset of 283 Java programs from the popular Defects4J dataset augmented with high-level descriptions of bug fixes, and empirically evaluate the performance of several state-of-the-art LLMs for the this task. Results show that these LLMS together are capable of generating plausible fixes for 64.6% of the bugs, and the best LLM-based technique can achieve up to 21.20% top-1 and 35.68% top-5 accuracy on this benchmark.
Key facts. Cited by 14 papers in the map (data through 14 Oct 2026). Builds on 34 of its 59 references that are in the map. First posted on arXiv 7 Apr 2023.
Builds on
34 of 59 references.
References · 34
- 2022Training language models to follow instructions with human feedbackcited by 15,971
- 2022Chain-of-Thought Prompting Elicits Reasoning in Large Language Modelscited by 12,459
- 2021Evaluating Large Language Models Trained on Codecited by 8,320
- 2022Large Language Models are Zero-Shot Reasonerscited by 4,374
- 2021Program Synthesis with Large Language Modelscited by 3,637
- 2022Quantifying Memorization Across Neural Language Modelscited by 763
- 2021Prompt Programming for Large Language Models: Beyond the Few-Shot Paradigmcited by 606
- 2023Is ChatGPT a General-Purpose Natural Language Processing Task Solver?cited by 488
- 2020CodeBLEU: a Method for Automatic Evaluation of Code Synthesiscited by 479
- 2022Memorization Without Overfitting: Analyzing the Training Dynamics of Large Language Modelscited by 220
- 2018SequenceR: Sequence-to-Sequence Learning for End-to-End Program Repaircited by 145
- 2021How much do language models copy from their training data? Evaluating linguistic novelty in text generation using RAVENcited by 124
22 more
- 2022Large Language Models are Few-shot Testers: Exploring LLM-based General Bug Reproductioncited by 111
- 2023An Analysis of the Automatic Bug Fixing Performance of ChatGPTcited by 110
- 2022Automating Code Review Activities by Large-Scale Pre-trainingcited by 98
- 2021CURE: Code-Aware Neural Machine Translation for Automatic Program Repaircited by 86
- 2022Less Training, More Repairing Please: Revisiting Automated Program Repair via Zero-shot Learningcited by 76
- 2022Automated Repair of Programs from Large Language Modelscited by 71
- 2023Chat2VIS: Generating Data Visualisations via Natural Language using ChatGPT, Codex and GPT-3 Large Language Modelscited by 59
- 2021Towards Automating Code Review Activitiescited by 54
- 2019On Learning Meaningful Code Changes via Neural Machine Translationcited by 50
- 2022Interactive Code Generation via Test-Driven User-Intent Formalizationcited by 50
- 2022Bidirectional Language Models Are Also Few-shot Learnerscited by 48
- 2022CoditT5: Pretraining for Source Code and Natural Language Editingcited by 45
- 2023Conversational Automated Program Repaircited by 41
- 2018CODIT: Code Editing with Tree-Based Neural Modelscited by 40
- 2023CoderEval: A Benchmark of Pragmatic Code Generation with Generative Pre-trained Modelscited by 28
- 2021On Multi-Modal Learning of Editing Source Codecited by 25
- 2016Learning Syntactic Program Transformations from Examplescited by 17
- 2017Identifying Patch Correctness in Test-Based Program Repaircited by 17
- 2021Elixir: Effective object-oriented program repaircited by 16
- 2020Better Automatic Program Repair by Using Bug Reports and Tests Togethercited by 10
- 2018On Reliability of Patch Correctness Assessmentcited by 9
- 2018Learning Quick Fixes from Code Repositoriescited by 8
Built on by
Citing papers per year: 2023: 8; 2024: 4; 2025: 2.
14 papers.
Sort:
By area:
- 2023SWE-bench: Can Language Models Resolve Real-World GitHub Issues?cited by 3,373
- 2023Large Language Models for Software Engineering: A Systematic Literature Reviewcited by 399
- 2023OctoPack: Instruction Tuning Code Large Language Modelscited by 189
- 2023Domain Specialization as the Key to Make Large Language Models Disruptive: A Comprehensive Surveycited by 135
- 2025Trae Agent: An LLM-based Agent for Software Engineering with Test-time Scalingcited by 94
- 2024NExT: Teaching Large Language Models to Reason about Code Executioncited by 63
- 2023Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?cited by 57
- 2024Can Language Models Serve as Text-Based World Simulators?cited by 52
- 2023LLM for SoC Security: A Paradigm Shiftcited by 22
- 2024CigaR: Cost-efficient Program Repair with LLMscited by 15
- 2023FRANC: A Lightweight Framework for High-Quality Code Generationcited by 14
- 2023Enhancing Automated Program Repair through Fine-tuning and Prompt Engineeringcited by 10
- 2025Trae Agent: An LLM-based Agent for Software Engineering with Test-time Scaling31 Jul 2025
- 2025DSBC : Data Science task Benchmarking with Context engineering31 Jul 2025
- 2024Trust Calibration in IDEs: Paving the Way for Widespread Adoption of AI Refactoring20 Dec 2024
- 2024Can Language Models Serve as Text-Based World Simulators?10 Jun 2024
- 2024NExT: Teaching Large Language Models to Reason about Code Execution23 Apr 2024
- 2024CigaR: Cost-efficient Program Repair with LLMs9 Feb 2024
- 2023SWE-bench: Can Language Models Resolve Real-World GitHub Issues?10 Oct 2023
- 2023LLM for SoC Security: A Paradigm Shift9 Oct 2023
- 2023Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?3 Oct 2023
- 2023Large Language Models for Software Engineering: A Systematic Literature Review21 Aug 2023
- 2023OctoPack: Instruction Tuning Code Large Language Models14 Aug 2023
- 2023FRANC: A Lightweight Framework for High-Quality Code Generation17 Jul 2023
- 2023SWE-bench: Can Language Models Resolve Real-World GitHub Issues?cited by 3,373
- 2023Large Language Models for Software Engineering: A Systematic Literature Reviewcited by 399
- 2023OctoPack: Instruction Tuning Code Large Language Modelscited by 189
- 2023Domain Specialization as the Key to Make Large Language Models Disruptive: A Comprehensive Surveycited by 135
- 2023Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?cited by 57
- 2024Can Language Models Serve as Text-Based World Simulators?cited by 52
- 2023LLM for SoC Security: A Paradigm Shiftcited by 22
- 2024CigaR: Cost-efficient Program Repair with LLMscited by 15
- 2023FRANC: A Lightweight Framework for High-Quality Code Generationcited by 14
- 2023Enhancing Automated Program Repair through Fine-tuning and Prompt Engineeringcited by 10
- 2024Trust Calibration in IDEs: Paving the Way for Widespread Adoption of AI Refactoringcited by 1
- 2024Trust Calibration in IDEs: Paving the Way for Widespread Adoption of AI Refactoring20 Dec 2024
- 2024Can Language Models Serve as Text-Based World Simulators?10 Jun 2024
- 2024CigaR: Cost-efficient Program Repair with LLMs9 Feb 2024
- 2023SWE-bench: Can Language Models Resolve Real-World GitHub Issues?10 Oct 2023
- 2023LLM for SoC Security: A Paradigm Shift9 Oct 2023
- 2023Can Large Language Models Transform Natural Language Intent into Formal Method Postconditions?3 Oct 2023
- 2023Large Language Models for Software Engineering: A Systematic Literature Review21 Aug 2023
- 2023OctoPack: Instruction Tuning Code Large Language Models14 Aug 2023
- 2023FRANC: A Lightweight Framework for High-Quality Code Generation17 Jul 2023
- 2023Domain Specialization as the Key to Make Large Language Models Disruptive: A Comprehensive Survey30 May 2023
- 2023Enhancing Automated Program Repair through Fine-tuning and Prompt Engineering16 Apr 2023