本文是LLM系列文章,针对《Exploring the Impact of the Output Format on the Evaluation of
Large Language Models for Code Translation》的翻译。
探讨输出格式对代码翻译大型语言模型评价的影响
摘要
编程语言之间的代码翻译是软件工程中一项长期存在的关键任务,有助于传统系统的现代化,确保跨平台兼容性,并提高软件性能。随着大型语言模型(LLM)及其在代码翻译中的应用的最新进展,人们越来越需要对这些模型进行全面评估。在这项研究中,我们在五种语言(包括C、C++、Go、Java和Python)的3820个翻译对上实证分析了11个流行的指令调整LLM的生成输出,参数范围从1B到46.7B。我们的分析发现,由我们评估的LLM生成的代码翻译中,26.4%至73.7%需要进行后处理,因为这些翻译通常包括代码、引号和文本的混合,而不是纯粹的源代码。忽略这些模型的输出格式可能会无意中导致低估其实际性能。当使用基于执行的指标(如计算精度(CA))对其进行评估时,这一点尤其明显。我们的结果表明,提示工程和正则表达式的战略组合可以有效地从模型生成输出中提取源代码。特别是,我们的方法可以帮助11个选定的模型实现92.73%的平均代码提取成功率。我们的研究结果揭示并激励了未来的研究,为代码翻译提供更可靠的LLM基准。