论文

COBOLAssist:分析和修复 LLM 支持的 COBOL 代码生成的编译错误

COBOLAssist: Analyzing and Fixing Compilation Errors for LLM-Powered COBOL Code Generation

摘要

COBOL(面向业务的通用语言)等传统编程语言在业务计算中仍然至关重要。然而,由于熟练开发人员数量的减少以及需要深厚领域专业知识才能解决的 COBOL 错误持续存在,维护遗留 COBOL 系统变得越来越具有挑战性。本文研究了 COBOL 编译错误的挑战,并介绍了利用 大语言模型 (LLM) 来解决这些问题的框架。我们首先将 LLM 生成的 COBOL 代码中的常见编译错误分为三组:不完整的代码错误、语法错误和类型相关错误。我们进一步提出了 COBOLAssist,这是一种通过编译反馈引导的迭代修复来增强代码正确性的技术。我们使用包括 GPT 变体和 mAInframer 在内的五个 LLM 进行评估,结果显示 COBOL 程序中错误的程序结构和函数使用普遍存在,并证明了 COBOLAssist 的有效性,GPT-4o-mini 的编译成功率从 29.5% 增加到 64.38%,GPT-4o 的编译成功率从 41.8% 增加到 95.89%。它还显着提高了 pass@1,例如 GPT-4 从 9.1 提高到 22.6。值得注意的是,虽然 mAInframer-34B 实现了最高的编译成功率,但其功能正确性仍然有限。这项研究不仅强调了当前 LLM for COBOL 的局限性,而且还展示了遗留系统中自动调试的实用路径。