핵심 개념
실제 세계 코드 저장소와 일치하는 코드 생성 벤치마크 EvoCodeBench를 제안하고, 이를 통해 10개의 인기 있는 대형 언어 모델의 코드 생성 능력을 평가한다.
초록
이 논문은 실제 세계 코드 저장소와 일치하는 새로운 코드 생성 벤치마크 EvoCodeBench를 제안한다. EvoCodeBench는 다음과 같은 특징을 가진다:
- 실제 세계 코드 저장소에서 수집된 데이터로 구성되어 있으며, 코드 및 의존성 분포가 실제 저장소와 일치한다.
- 요구사항, 참조 코드, 참조 의존성 등 포괄적인 주석을 제공한다.
- 기능 정확성(Pass@k)과 참조 의존성 재현율(Recall@k)을 평가하는 강력한 평가 지표를 사용한다.
- 데이터 누출을 방지하기 위해 지속적으로 업데이트되는 진화하는 벤치마크이다.
이 논문은 또한 EvoCodeBench를 기반으로 저장소 수준의 코드 생성 작업을 제안하고, 10개의 인기 있는 대형 언어 모델을 평가한다. 실험 결과, 이러한 모델들의 실제 세계 저장소에서의 코드 생성 능력이 기존 벤치마크에 비해 크게 떨어지는 것으로 나타났다. 이는 기존 벤치마크가 실제 개발 환경을 충분히 반영하지 못한다는 것을 보여준다. 또한 논문은 실패 사례를 분석하고 현존 모델의 단점을 요약하였다.
통계
실제 세계 500개 저장소의 평균 토큰 수는 110만 개이다.
EvoCodeBench-2403의 평균 의존성 수는 3.46개이며, 실제 세계 500개 저장소의 평균 의존성 수는 3.22개이다.
인용구
"EvoCodeBench는 실제 세계 코드 저장소와 일치하는 진화하는 코드 생성 벤치마크이다."
"EvoCodeBench는 실제 세계 코드 저장소에서 수집된 데이터로 구성되어 있으며, 코드 및 의존성 분포가 실제 저장소와 일치한다."
"EvoCodeBench는 기능 정확성(Pass@k)과 참조 의존성 재현율(Recall@k)을 평가하는 강력한 평가 지표를 사용한다."