Skip to main content
QUICK REVIEW

[논문 리뷰] AixBench: A Code Generation Benchmark Dataset

Yiyang Hao, Ge Li|arXiv (Cornell University)|2022. 06. 27.
Software Engineering Research인용 수 11
한 줄 요약

AixBench는 자동 단위 테스트를 통한 정확도 평가를 위한 175개의 샘플과 수동 품질 평가를 위한 161개의 샘플을 포함하는 자바용 메서드 수준 코드 생성 벤치마크이다. 새로운 자동 평가 지표(AvgPassRatio)와 수동 평가 기준을 도입하여, aiXcoder XL과 GitHub Copilot가 모두 높은 정확도(~46-49% pass@1)와 뛰어난 코드 품질을 보이며, 유지보수성 측면에서 GitHub Copilot가 약간 뛰어나다는 것을 보여주었다.

ABSTRACT

We present a benchmark dataset for evaluating method-level code generation task. The benchmark contains a dataset of 175 samples for automated evaluation and a dataset of 161 samples for manual evaluation. We also present a new metric for automatically evaluating the correctness of the generated code, and a set of criteria to manually evaluating the overall quality of the generated code.

연구 동기 및 목표

  • 테스트 가능한 정확도를 평가할 수 있는 실제 생산 환경의 기능적 자바 메서드 기술서를 갖춘 벤치마크가 부족한 문제를 해결하기 위해.
  • 비영어 프롬프트(중국어 및 영어 포함)를 포함한 자동 및 수동 평가를 지원하는 데이터셋을 제공하기 위해.
  • pass@k보다 실제 활용도를 더 잘 반영하는 평가 지표로, 각 샘플당 통과한 테스트 케이스의 비율을 평균화하는 AvgPassRatio라는 새로운 자동 지표를 개발하기 위해.
  • 정확도, 코드 품질, 유지보수성의 세 가지 차원으로 구성된 표준화된 수동 평가 프레임워크를 수립하기 위해.
  • 실제 생산 환경을 반영하는 현실적인 벤치마크에서 최신 코드 생성 모델들(예: aiXcoder XL 및 GitHub Copilot)의 성능을 평가하기 위해.

제안 방법

  • 자동 테스트 데이터셋은 175개의 함수 기술서와 서명, 그리고 수작업으로 작성된 단위 테스트를 포함하여 자동 정확도 평가를 가능하게 한다.
  • NL 작업 기술서 데이터셋은 다양한 명확성과 모호성을 지닌 161개의 함수 기술서를 포함하여 모델의 강건성과 수동 평가 품질을 평가하기 위해 사용된다.
  • pass@k보다 더 실용적인 측정법을 제공하기 위해, 각 샘플당 통과한 테스트 케이스의 평균 비율을 측정하는 새로운 지표인 AvgPassRatio를 도입하였다.
  • 수동 평가는 세 가지 차원의 점수 체계를 사용한다: 정확도(1–4점), 코드 품질(1–3점), 유지보수성(1–5점).
  • 자연어 기술서는 오픈소스 자바 프로젝트에서 수집되었으며, 테스트 가능성과 명확성을 확보하면서도 자연어의 다양성을 유지하기 위해 개선되었다.
  • 모델들은 자동 테스트 통과 비율과 인간 평가자에 의한 수동 점수를 기반으로 두 데이터셋 모두에서 평가되었다.

실험 결과

연구 질문

  • RQ1자동 테스트 케이스를 포함한 현실적이고 생산 중심인 자바 벤치마크에서 코드 생성 모델의 성능은 어떠한가?
  • RQ2AvgPassRatio 지표는 pass@k에 비해 생성된 코드의 실용적 활용도를 더 잘 반영하는가?
  • RQ3모호하거나 불완전한 자연어 기술서를 기반으로 평가했을 때, aiXcoder XL 및 GitHub Copilot 등의 모델은 정확도와 코드 품질 측면에서 어떻게 비교되는가?
  • RQ4비영어 프롬프트(중국어)는 코드 생성 작업에서 모델 성능에 어떤 영향을 미치는가?
  • RQ5정확도, 코드 품질, 유지보수성의 수동 평가 기준은 자동 테스트 결과와 얼마나 상관이 있는가?

주요 결과

  • aiXcoder XL은 자동 테스트 세트 175개에서 pass@1 점수 49.14%를 기록했고, GitHub Copilot는 46.29%를 기록했다.
  • aiXcoder XL의 AvgPassRatio는 68.68%였고, GitHub Copilot는 69.55%였으며, 이는 두 모델 모두 높은 비율의 테스트 케이스를 통과하는 코드를 생성한다는 것을 의미한다.
  • 수동 평가에서 GitHub Copilot는 유지보수성(3.0931점)에서 aiXcoder XL(2.9937점)보다 높은 점수를 받았으며, 이는 더 나은 코드 구조와 가독성을 의미한다.
  • 두 모델의 정확도 점수는 유사하게 나타났다(2.9503점 대 2.9875점), 기능 요구사항을 잘 충족한다는 것을 시사한다.
  • 코드 품질 점수는 aiXcoder XL(2.2049점)가 GitHub Copilot(2.1739점)보다 略적으로 높았지만, 이 차이는 미미하다.
  • 이 벤치마크는 모호한 기술서와 비영어 프롬프트와 같은 실제 개발 과제를 성공적으로 반영하며, 코드 생성 모델에 대한 신뢰할 수 있는 평가 프레임워크를 제공한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.