SoTaNa: The Open-Source Software Development Assistant
This provides an accessible tool for software developers and researchers, though it is incremental as it builds on existing models with domain-specific fine-tuning.
The authors tackled the problem of limited accessibility and intent understanding in existing large language models for software development by creating SoTaNa, an open-source assistant that uses ChatGPT-generated data and fine-tunes LLaMA, achieving capabilities in answering Stack Overflow questions and code tasks while running on a single GPU.
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 \our{} 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 \url{https://github.com/DeepSoftwareAnalytics/SoTaNa}.