
초록
최근 대형 언어 모델(LLM)의 발전과 이를 코드 생성 작업에 활용하는 것은 소프트웨어 개발 분야를 크게 변화시켰습니다. 주요 프로그래밍 언어에서 코드 완성 솔루션의 뛰어난 효율성에도 불구하고, OpenAPI 정의와 같은 덜 일반적인 형식에서는 성능이 떨어집니다. 본 연구는 널리 사용되는 상업용 코드 완성 도구인 GitHub Copilot의 OpenAPI 완성 성능을 평가하고, Meta의 오픈소스 모델인 Code Llama를 활용한 작업별 최적화 방법을 제안합니다. 본 연구에서 제안된 의미 인식 OpenAPI 완성 벤치마크를 사용하여 다양한 프롬프트 엔지니어링 및 미세 조정 기법이 Code Llama 모델의 성능에 미치는 영향을 분석하기 위한 일련의 실험을 수행하였습니다. 미세 조정된 Code Llama 모델은 GitHub Copilot보다 55.2% 더 높은 정확도 향상을 보였으며, 상업 솔루션에서 사용되는 Codex 모델보다 25배 적은 매개변수를 이용하였음에도 불구하고 이러한 결과를 달성하였습니다. 또한, 본 연구는 훈련 중 사용된 컨텍스트 크기보다 작은 컨텍스트 크기로 모델을 유도할 때 성능 저하 문제를 해결하기 위해 널리 사용되는 코드 채우기 훈련 기법을 개선하는 방안을 제안합니다. 데이터셋, 벤치마크 및 모델 미세 조정 코드는 공개적으로 제공됩니다.