Lingma SWE-GPT:一种面向自动化软件改进的开源开发流程中心语言模型
软件工程
2024-11-04 v1 人工智能
摘要
基于LLM的智能体近期取得了显著进展,特别是在软件维护与演化方面的自动软件工程领域。尽管这些令人鼓舞的进展取得了显著成果,但当前研究面临两大挑战。第一,最先进(SOTA)性能主要依赖于闭源模型,这严重限制了该技术在多样化软件工程任务中的可访问性和定制化潜力。第二,这些模型主要在静态代码数据上训练,缺乏对软件开发中动态交互、迭代问题求解过程和演化特性的深入理解。为应对这些挑战,本研究采用软件工程视角。我们认识到,真实的软件维护与演化过程不仅包含静态代码数据,还涵盖开发者的思维过程、外部工具的使用以及不同职能人员之间的交互。因此,我们提出了Lingma SWE-GPT系列,包括Lingma SWE-GPT 7B和72B。通过学习和模拟真实的代码提交活动,Lingma SWE-GPT系统性地融入了软件开发过程中固有的动态交互与迭代问题求解,从而实现了对软件改进过程的更全面理解。我们在SWE-bench Verified基准上进行了实验评估。结果表明,Lingma SWE-GPT 72B成功解决了30.20%的GitHub问题,在自动问题解决方面取得了显著提升(相比Llama 3.1 405B相对提升22.76%),接近闭源模型的性能(GPT-4o解决了31.80%的问题)。值得注意的是,Lingma SWE-GPT 7B解决了18.20%的问题,展示了将较小模型应用于自动软件工程任务的潜力。
引用
@article{arxiv.2411.00622,
title = {Lingma SWE-GPT: An Open Development-Process-Centric Language Model for Automated Software Improvement},
author = {Yingwei Ma and Rongyu Cao and Yongchang Cao and Yue Zhang and Jue Chen and Yibo Liu and Yuchen Liu and Binhua Li and Fei Huang and Yongbin Li},
journal= {arXiv preprint arXiv:2411.00622},
year = {2024}
}