Peer-aided Repairer: Empowering Large Language Models to Repair Advanced Student Assignments
Not on the map. Why?
Abstract (arXiv)
Automated generation of feedback on programming assignments holds significant benefits for programming education, especially when it comes to advanced assignments. Automated Program Repair techniques, especially Large Language Model based approaches, have gained notable recognition for their potential to fix introductory assignments. However, the programs used for evaluation are relatively simple. It remains unclear how existing approaches perform in repairing programs from higher-level programming courses. To address these limitations, we curate a new advanced student assignment dataset named Defects4DS from a higher-level programming course. Subsequently, we identify the challenges related to fixing bugs in advanced assignments. Based on the analysis, we develop a framework called PaR that is powered by the LLM. PaR works in three phases: Peer Solution Selection, Multi-Source Prompt Generation, and Program Repair. Peer Solution Selection identifies the closely related peer programs based on lexical, semantic, and syntactic criteria. Then Multi-Source Prompt Generation adeptly combines multiple sources of information to create a comprehensive and informative prompt for the last Program Repair stage. The evaluation on Defects4DS and another well-investigated ITSP dataset reveals that PaR achieves a new state-of-the-art performance, demonstrating impressive improvements of 19.94% and 15.2% in repair rate compared to prior state-of-the-art LLM- and symbolic-based approaches, respectively
Key facts. No citing papers in the map yet (data through 7 Oct 2026). Builds on 39 of its 65 references that are in the map. First posted on arXiv 2 Apr 2024.
Builds on
39 of 65 references.
References · 39
- 2017Attention Is All You Needcited by 59,932
- 2018BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingcited by 40,204
- 2020Language Models are Few-Shot Learnerscited by 32,199
- 2019Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformercited by 14,491
- 2023LLaMA: Open and Efficient Foundation Language Modelscited by 13,958
- 2023Llama 2: Open Foundation and Fine-Tuned Chat Modelscited by 12,865
- 2021Evaluating Large Language Models Trained on Codecited by 8,053
- 2021Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processingcited by 2,222
- 2023Code Llama: Open Foundation Models for Codecited by 2,105
- 2022CodeGen: An Open Large Language Model for Code with Multi-Turn Program Synthesiscited by 876
- 2023StarCoder: may the source be with you!cited by 790
- 2022GPT-NeoX-20B: An Open-Source Autoregressive Language Modelcited by 711
27 more
- 2022InCoder: A Generative Model for Code Infilling and Synthesiscited by 492
- 2020CodeBLEU: a Method for Automatic Evaluation of Code Synthesiscited by 468
- 2022UniXcoder: Unified Cross-Modal Pre-training for Code Representationcited by 355
- 2023Self-collaboration Code Generation via ChatGPTcited by 255
- 2021CURE: Code-Aware Neural Machine Translation for Automatic Program Repaircited by 85
- 2023No More Manual Tests? Evaluating and Improving ChatGPT for Unit Test Generationcited by 82
- 2024Automated Unit Test Improvement using Large Language Models at Metacited by 73
- 2021Break-It-Fix-It: Unsupervised Learning for Program Repaircited by 71
- 2022Repair Is Nearly Generation: Multilingual Program Repair with LLMscited by 68
- 2019TBar: Revisiting Template-based Automated Program Repaircited by 64
- 2018Neural Code Comprehension: A Learnable Representation of Code Semanticscited by 59
- 2021A Syntax-Guided Edit Decoder for Neural Program Repaircited by 57
- 2022XLCoST: A Benchmark Dataset for Cross-lingual Code Intelligencecited by 54
- 2021Neural Program Repair with Execution-based Backpropagationcited by 50
- 2023RepairLLaMA: Efficient Representations and Fine-Tuned Adapters for Program Repaircited by 50
- 2022SelfAPR: Self-supervised Program Repair with Test Execution Diagnosticscited by 33
- 2022Repairing Bugs in Python Assignments Using Large Language Modelscited by 28
- 2023A study on Prompt Design, Advantages and Limitations of ChatGPT for Deep Learning Program Repaircited by 26
- 2016Automated Clustering and Program Repair for Introductory Programming Assignmentscited by 21
- 2016Learning Syntactic Program Transformations from Examplescited by 17
- 2018Dissection of a Bug Dataset: Anatomy of 395 Patches from Defects4Jcited by 14
- 2022Neurosymbolic Repair for Low-Code Formula Languagescited by 12
- 2016sk_p: a neural program corrector for MOOCscited by 10
- 2017Data-Driven Feedback Generation for Introductory Programming Exercisescited by 9
- 2021Verifix: Verified Repair of Programming Assignmentscited by 7
- 2022Automated Feedback Generation for Competition-Level Codecited by 7
- 2020MACER: A Modular Framework for Accelerated Compilation Error Repaircited by 2
Built on by
Not cited yet.