摘要
程序错误可能出现在任何类型的编程中,并以多种方式表现出来,例如意外输出、崩溃或性能问题。而程序错误诊断对于开发者来说往往过于抽象或技术性,特别是对于初学者而言。本文旨在提出一种用于多任务程序错误修复和解释性诊断(mPRED)的新型机器学习方法。使用预训练语言模型对源代码进行编码,并专门设计了下游模型来识别和修复错误。程序和测试用例将从多个角度进行增强和优化。此外,我们的方法还包含一种“思维链”方法,使模型能够在提供最终修正之前生成中间推理解释。为了帮助可视化和分析程序结构,我们使用图神经网络来可视化程序结构。总的来说,我们的方法为修复不同编程语言中的程序错误并为程序员提供有益的解释提供了一种很有前景的方法。