서로 다른 코드 역량을 측정하는 세 벤치마크
코드 생성에는 별도의 벤치마크 계열이 있어. 가장 많이 인용되는 세 벤치마크는 서로 다른 역량을 보여줘.
HumanEval (Chen et al. 2021, OpenAI)
단위 테스트가 포함된 164개의 Python 프로그래밍 문제를 사람이 직접 작성한 벤치마크야. 모델이 코드를 생성하면 평가기가 테스트를 실행해. 점수는 테스트 통과율인 pass@1과 pass@10으로 나타내. 2024년에는 상위 모델의 점수가 90%를 넘으며 포화 상태에 이르렀어. 기본 역량을 확인하는 데는 유용하지만, 이제 모델을 구분하는 지표로는 부족해.
MBPP (대부분 기초 Python 문제, Google 2021)
더 간단한 Python 문제 1,000개로 구성돼 있어. HumanEval보다 난도가 낮으며, 주로 결과를 교차 확인하기 위해 HumanEval과 함께 사용해.
SWE-bench (Princeton 2023, 이후 확장)
여기서부터 흥미로워져. SWE-bench는 모델에 실제 오픈 소스 저장소의 GitHub 이슈를 주고, 프로젝트의 기존 테스트 모음을 통과하는 패치를 만들게 해. 여러 파일을 살피고 저장소의 맥락을 이해해야 하는 에이전트형 과제야. 유지관리자가 검증한 하위 집합인 SWE-bench-Verified는 사실상 최신 코딩 에이전트의 표준 벤치마크로 자리 잡았어. 2026년 상위권 점수는 60~70% 정도로 아직 포화와는 거리가 멀어. 그래서 "이 모델이 실제 소프트웨어 작업에 도움이 될까?"를 HumanEval보다 훨씬 잘 예측해.
원칙: HumanEval은 모델이 Python 코드를 작성할 수 있는지 알려주고, SWE-bench는 실제 소프트웨어를 개발할 수 있는지 알려줘. 둘의 차이는 아주 커.
세 벤치마크 모두 측정하지 않는 것
- 코드 검토 — 코드를 읽고 검토하는 능력은 평가 범위 밖이야.
- 도구 사용 — 셸, 디버거, IDE 기능을 사용하는 능력은 다루지 않아.
- 장시간 반복 개선 — 대부분 한 번의 호출이나 짧은 반복만 평가해.
- Python과 TypeScript 이외의 언어는 대부분 다루지 않아.