ChatPaper.aiChatPaper

SoTaNa:开源软件开发助手

SoTaNa: The Open-Source Software Development Assistant

August 25, 2023
作者: Ensheng Shi, Fengji Zhang, Yanlin Wang, Bei Chen, Lun Du, Hongyu Zhang, Shi Han, Dongmei Zhang, Hongbin Sun
cs.AI

摘要

软件开发在推动现代社会创新和效率方面发挥着至关重要的作用。为了满足这一不断变化领域的需求,迫切需要一款高效的软件开发助手。然而,现有的大型语言模型,如ChatGPT,存在训练数据和模型权重等方面的可及性有限。虽然其他大型开源模型,如LLaMA,显示出一定的潜力,但它们仍然在理解人类意图方面存在困难。本文介绍了SoTaNa,一款开源软件开发助手。SoTaNa利用ChatGPT生成基于指令的高质量软件工程领域数据,并采用参数高效的微调方法来增强开源基础模型LLaMA。我们评估了SoTaNa在回答Stack Overflow问题方面的有效性,并展示了其能力。此外,我们讨论了它在代码摘要和生成方面的能力,以及生成数据量变化对模型性能的影响。值得注意的是,SoTaNa可以在单个GPU上运行,使更广泛的研究人员能够使用。我们的代码、模型权重和数据可在https://github.com/DeepSoftwareAnalytics/SoTaNa 上公开获取。
English
Software development plays a crucial role in driving innovation and efficiency across modern societies. To meet the demands of this dynamic field, there is a growing need for an effective software development assistant. However, existing large language models represented by ChatGPT suffer from limited accessibility, including training data and model weights. Although other large open-source models like LLaMA have shown promise, they still struggle with understanding human intent. In this paper, we present SoTaNa, an open-source software development assistant. SoTaNa utilizes ChatGPT to generate high-quality instruction-based data for the domain of software engineering and employs a parameter-efficient fine-tuning approach to enhance the open-source foundation model, LLaMA. We evaluate the effectiveness of in answering Stack Overflow questions and demonstrate its capabilities. Additionally, we discuss its capabilities in code summarization and generation, as well as the impact of varying the volume of generated data on model performance. Notably, SoTaNa can run on a single GPU, making it accessible to a broader range of researchers. Our code, model weights, and data are public at https://github.com/DeepSoftwareAnalytics/SoTaNa.
PDF120December 15, 2024