Year: 2023
Type: preprint
Abstract: Developers often dedicate significant time to maintaining and refactoring existing code. However, most prior work on generative models for code focuses solely on creating new code, overlooking the distinctive needs of editing existing code. In this work, we explore a multi-round code auto-editing setting, aiming to predict edits to a code region based on recent changes within the same codebase. Our model, Coeditor, is a fine-tuned language model specifically designed for code editing tasks. We represent code changes using a line diff format and employ static analysis to form large customized model contexts, ensuring the availability of appropriate information for prediction. We collect a code editing dataset from the commit histories of 1650 open-source Python projects for training and evaluation. In a simplified single-round, single-edit task, Coeditor significantly outperforms GPT-3.5 and SOTA open-source code completion models (bringing exact-match accuracy from 34.7 up to 60.4), demonstrating the benefits of incorporating editing history for code completion. In a multi-round, multi-edit setting, we observe substantial gains by iteratively conditioning on additional user edits. We have open-sourced our code, data, and model weights to encourage future research and have released a VSCode extension powered by our model for interactive IDE usage.
Source: arXiv (Cornell University)
Authors: Wei, Jiayi, Durrett, Greg, Dillig, Isil
Institution: The University of Texas at Austin
Language: English
Subfield: Information Systems
Field: Computer Science
Domain: Physical Sciences
Open Access status: green
Funder: National Science Foundation
Awards: SHF: Medium: Collaborative Research: Bridging Automated Formal Reasoning and Continuous Optimization for Provably Safe Deep Learning, Collaborative Research: SaTC: CORE: Large: Building and Deploying a Verified JavaScript Runtime, FMitF: Track I: Program Synthesis for Robot Learning from Demonstrations, SHF: Medium: Collaborative Research: Computer-Aided Programming for Data Science, SaTC: CORE: Medium: Collaborative: Effective Formal Reasoning for Mobile Malware, Expeditions: Collaborative Research: Understanding the World Through Code, Collaborative Research: SHF: Core: Medium: Program Synthesis for Schema Changes
OpenAlex ID: W4378942573
