论文

弥合基于 LLM 的代码翻译中的功能正确性和运行时效率差距

Bridging Functional Correctness and Runtime Efficiency Gaps in LLM-Based Code Translation

模型推理推理验证与自校正

摘要

虽然大语言模型(LLM)极大地提高了自动代码翻译系统的功能正确性,但翻译程序的运行效率却相对较少受到关注。随着摩尔定律的衰落,运行时效率以及功能正确性对于程序质量变得越来越重要。我们的初步研究表明,LLM 翻译的程序通常运行速度比人类编写的程序慢,并且这个问题无法仅通过即时工程来解决。因此,我们的工作提出了 SwiftTrans,一个包含两个关键阶段的代码翻译框架:(1)多视角探索,其中 MpTranslator 利用并行上下文学习(ICL)来生成不同的翻译候选; (2) 差异感知选择,其中 DiffSelector 通过显式比较翻译之间的差异来识别最佳候选。我们进一步引入了MpTranslator的Hierarchical Guidance和DiffSelector的Ordinal Guidance,使LLM能够更好地适应这两个核心组件。为了支持翻译程序运行时效率的评估,我们扩展了现有的基准测试 CodeNet 和 F2SBench,并引入了新的基准测试 SwiftBench。所有三个基准测试的实验结果表明,SwiftTrans 在正确性和运行时效率方面都取得了一致的改进。