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.