arXivDaily arXiv每日学术速递 周一至周五更新

PAPERDAILY REPORTS

港大NUS实测大模型跨库代码迁移:顶尖Claude项目级翻译仅33%成功,意图增强破局

作者:arXivDaily编辑部 arXiv 2609.30749 cs · cs.AI

论文导读

香港大学、新加坡国立大学、香港中文大学(深圳)等机构推出ORCA,专门测试大模型能否把数据科学代码从一个软件库迁移到另一个库,同时保持结果正确。论文不仅测短代码片段,还测完整项目。在项目级任务中,受测的Claude-Opus-4.6成功率为33.67%;研究者发现先让模型说清原代码“想做什么”,再翻译,可使项目级成功率平均提高5.33个百分点。

代码能运行,不代表迁移成功

企业升级数据平台时,常要把Pandas处理流程改写成SQL,把一个深度学习框架的模型转到另一个框架。表面上看是语法翻译,实际上要保留数据清洗顺序、缺失值处理、张量形状和最终结果。有些错误不会让程序立刻报错,却会让模型训练结果悄悄变化。因此只问大模型“把这段代码换个库写”并不足以证明迁移完成。

ORCA把目标定义为功能等价。图中源代码与数据输入进入大模型,产出目标库代码后,要经过可执行性、数据加载、预处理和结果一致性等检查。对工程师来说,最重要的不是输出看起来像不像目标库,而是在相同任务与测试用例下能不能做对同一件事。

图:ORCA任务将源代码和数据交给模型迁移,并以运行和结果检查目标代码。

不只考一个函数,还考整套项目

团队建立了两个层级。ORCA-Main包含1600个基础任务,覆盖数据查询、数据处理和深度学习;ORCA-Project则包含200个完整项目迁移任务,涉及多文件、依赖、配置与端到端运行。每项任务有参考翻译与测试用例,研究者还对题目正确性和测试稳健性进行多轮检查。这样设计是为了避免模型只会转换一小段漂亮代码,却无法维持项目的完整行为。

基准结构图左右列出基础任务和项目任务的来源,中间是原代码、迁移要求与测试用例的构建过程。项目级测试显然更接近企业迁移现场:即使每个单独函数大致正确,只要文件之间的接口接不上,项目仍然跑不通。

图:ORCA-Main的1600个基础任务与ORCA-Project的200个项目任务构成。

33.67%到底测了什么

论文报告,Claude-Opus-4.6在基础任务的成功率为56.92%,到项目级任务降至33.67%。柱状图也比较了其他受测模型,图中最高项目级柱对应33.67%。这不是“Claude写代码只会三分之一”,而是在ORCA指定的跨库项目、测试方法和模型设置下,约三分之一任务通过。标题把数字取整为33%,仍应以论文的33.67%为准。

研究者进一步观察到,当源代码把操作步骤写得更明确,迁移通常更容易。由此提出“意图增强”:让模型先概括原代码的目标与关键约束,再将这份说明作为翻译上下文。该方法在基础任务和项目级任务中平均分别带来4.80与5.33个百分点的绝对成功率增益。它不是自动消除所有错误,但说明在跨库迁移里,“先讲清楚要保持什么”比直接逐行改写更有帮助。

图:五个受测模型在ORCA项目级代码迁移任务上的成功率柱状对照。

下一步,对工程团队的实际启发

ORCA最有价值的结论不是“某个模型不行”,而是为代码迁移提供了更接近交付的验收方式:保留输入输出契约、设置端到端测试,并检查运行结果。团队若把大模型用于迁移,可以先让它复述业务意图和关键边界,再生成目标代码,最后由测试与人工评审兜底。随着模型能力进步,这套基准也能帮助判断真实提高来自语法熟练度,还是来自对整个项目行为的理解。

参考资料

https://arxiv.org/abs/2609.30749

https://arxiv.org/html/2609.30749

↑