Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
97 tokens/sec
GPT-4o
53 tokens/sec
Gemini 2.5 Pro Pro
43 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
47 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Repairing Bugs in Python Assignments Using Large Language Models (2209.14876v1)

Published 29 Sep 2022 in cs.SE and cs.AI

Abstract: Students often make mistakes on their introductory programming assignments as part of their learning process. Unfortunately, providing custom repairs for these mistakes can require a substantial amount of time and effort from class instructors. Automated program repair (APR) techniques can be used to synthesize such fixes. Prior work has explored the use of symbolic and neural techniques for APR in the education domain. Both types of approaches require either substantial engineering efforts or large amounts of data and training. We propose to use a LLM trained on code, such as Codex, to build an APR system -- MMAPR -- for introductory Python programming assignments. Our system can fix both syntactic and semantic mistakes by combining multi-modal prompts, iterative querying, test-case-based selection of few-shots, and program chunking. We evaluate MMAPR on 286 real student programs and compare to a baseline built by combining a state-of-the-art Python syntax repair engine, BIFI, and state-of-the-art Python semantic repair engine for student assignments, Refactory. We find that MMAPR can fix more programs and produce smaller patches on average.

User Edit Pencil Streamline Icon: https://streamlinehq.com
Authors (7)
  1. Jialu Zhang (16 papers)
  2. José Cambronero (22 papers)
  3. Sumit Gulwani (55 papers)
  4. Vu Le (26 papers)
  5. Ruzica Piskac (24 papers)
  6. Gustavo Soares (21 papers)
  7. Gust Verbruggen (15 papers)
Citations (49)

Summary

We haven't generated a summary for this paper yet.