벤치마크 · coding

Commit-0

0 결과 0 모델

Commit-0 은 코딩 에이전트가 명세만 주어졌을 때 Python 라이브러리 전체를 처음부터 구현할 수 있는지를 측정한다. 명세란 docstring 이 붙은 함수·클래스 시그니처와 숨겨진 단위 테스트 모음이다. 주요 지표는 통과한 단위 테스트의 비율이다.

자세히 보기
예시
실제 Python 라이브러리의 골격이 주어진다. 모든 모듈·클래스·함수가 docstring 이 있는 타입 스텁으로 존재하지만 본문은 비어 있으며, 이를 모두 구현해 라이브러리 자체 테스트 모음이 전부 통과하도록 한다(예: 작은 라이브러리의 파싱·직렬화·유틸리티 함수를 docstring 을 보고 채우기).
채점 방식
점수는 단위 테스트 통과율이다. 각 라이브러리의 pytest 모음을 격리 환경에서 실행하고, 라이브러리 점수는 통과한 테스트의 비율이며 벤치마크의 54 개 라이브러리에 걸쳐 집계된다. 일부 구성에서는 코드가 lint 와 타입 검사도 통과해야 한다.
검증 방식
결과는 재현 가능한 Docker 컨테이너 안에서 숨겨진 테스트 모음을 실행해 인정된다. pytest 가 판정 기준이므로 테스트는 실제로 통과할 때만 계산되며 참조 출력과 대조하지 않는다. 에이전트 실행은 테스트와 lint 피드백으로 반복할 수 있지만, 최종 채점은 깨끗한 checkout 에서 모음을 다시 실행한다.
왜 중요한가
단일 함수나 단일 파일 생성(HumanEval, SWE-bench)을 넘어 명세로부터 라이브러리 전체를 합성하는 단계로 나아가, 장기 계획, 모듈 간 일관성, 실제 API 계약을 충족하는 능력을 시험한다 — 실제 소프트웨어 출시에 훨씬 가깝다.
예제 풀이
문제
라이브러리 골격 안의 함수 스텁 하나로, 숨겨진 테스트가 통과하도록 구현해야 한다: ```python def parse_version(text: str) -> tuple[int, int, int]: """Parse a semantic version 'MAJOR.MINOR.PATCH' into a tuple of ints. Raises ValueError if text is not three dot-separated integers. """ raise NotImplementedError ```
해답
```python
def parse_version(text: str) -> tuple[int, int, int]:
    parts = text.split(".")
    if len(parts) != 3:
        raise ValueError(f"invalid version: {text!r}")
    major, minor, patch = (int(p) for p in parts)
    return (major, minor, patch)
```
풀이
본문은 docstring 계약을 지킨다: 「.」 로 나누고, 정확히 세 부분이 아니면 ValueError 로 거부하며, 각 부분을 int 로 변환한다. 채점은 샌드박스에서 라이브러리의 숨겨진 pytest 모음을 실행하며, 이 항목은 parse_version 에 대한 모든 단언이 성립할 때만 통과한다.

이 벤치마크에 대해 아직 검증된 점수가 없습니다.