LLM2D
使用 Google 的大语言模型大规模迁移代码
Migrating Code At Scale With LLMs At Google
作者: Celal Ziftci, Stoyan Nikolov, Anna Sj\"ovall, Bo Kim, Daniele Codecasa, Max Kim
发布日期: 4/15/2025
arXiv ID: oai:arXiv.org:2504.09691v1

摘要

arXiv:2504.09691v1类型:Cross 摘要:开发人员经常通过内部更改来进化现有的软件系统,称为迁移。切换到新的框架、改进实现以提高效率、以及将依赖项升级到最新版本都是迁移的例子。 迁移是通常连续进行的手动或通过工具进行的维护任务。某些迁移工作量大且成本高昂,开发人员发现这些工作缺乏成就感,可能需要花费数年时间才能完成。因此,自动化对于这种迁移更为优选。 在本文中,我们讨论了在Google进行的一个大型、昂贵且传统的手动迁移项目,提出了一种新的自动化算法,该算法利用变更位置发现和大型语言模型(LLM)来帮助开发人员进行迁移,报告了大规模案例研究的结果,并讨论了所学到的教训。 我们的案例研究涉及三位开发人员在十二个月内进行的39次不同的迁移,结果显示提交了总计595次代码更改和93,574次编辑,其中74.45%的代码更改和69.46%的编辑是由LLM生成的。开发人员对自动化工具的满意度很高,并估计相比之前的手动迁移,迁移所花费的总时间减少了50%。 我们的结果显示,我们的自动化、LLM辅助的工作流可以作为类似倡议的模型。