ChatGPT用于深度学习程序修复的提示设计、优势与局限研究
软件工程
2023-04-18 v1
摘要
ChatGPT已革新了许多研究与工业领域。ChatGPT在软件工程中展现出巨大潜力,可推动程序修复、代码理解和代码生成等各类传统任务。然而,自动程序修复(APR)是否适用于深度学习(DL)程序仍属未知。DL程序的决策逻辑并未在源代码中显式编码,这给APR带来了独特挑战。要修复DL程序,APR方法不仅需从语法上解析源代码,还需理解代码意图。在已有最佳前期工作中,故障定位的性能仍远不能令人满意(仅约30%)。因此,本文中我们通过提出三个研究问题来探索ChatGPT的DL程序修复能力。(1) ChatGPT能否有效调试DL程序?(2) 如何通过提示提升ChatGPT的修复性能?(3) 对话能以何种方式助力修复?在此基础上,我们对有助于DL程序修复提示设计的常见方面进行了归类。此外,我们提出了多种提示模板以提升性能,并总结了ChatGPT各项能力(如检测坏代码味道、代码重构、检测API误用/弃用)的优势与劣势。
引用
@article{arxiv.2304.08191,
title = {A study on Prompt Design, Advantages and Limitations of ChatGPT for Deep Learning Program Repair},
author = {Jialun Cao and Meiziniu Li and Ming Wen and Shing-chi Cheung},
journal= {arXiv preprint arXiv:2304.08191},
year = {2023}
}
备注
10 pages