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を強化します。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.