AI VIDEO BRIEFING
AI 코딩 평가의 한계: 벤치마크 오염, 정답과 논증의 격차, 그리고 남은 네 가지 과제
MIT 박사과정 알렉스 구가 CRUXEval·LiveCodeBench·IneqMath에서 얻은 관찰을 통해, 리더보드 숫자가 감추는 오염과 논증 능력의 공백, 그리고 코딩 AI 평가에 남은 과제를 정리했다.

핵심 메시지
쉽게 이해하기
알렉스 구는 평가를 설계할 때 세 가지가 필요하다고 말한다. 모델이 잘 못하는 지점을 찾아 과제를 정의하고, 그 능력을 제대로 측정할 과제를 만들고, 마지막으로 결과에서 나오는 통찰을 비판적으로 들여다보는 것이다. 그는 사람들이 벤치마크를 리더보드 1위가 누구인지로만 소비하는 경향을 문제로 짚는다.
첫 벤치마크 CRUXEval은 코드 실행을 예측하게 한다. 함수와 입력을 주고 출력을 맞히게 하거나, 반대로 특정 출력을 만드는 입력을 찾게 한다. 2년 전 만든 이 벤치마크는 지금은 대체로 포화됐지만, 당시 흥미로운 그림을 드러냈다. 베이스 모델들은 HumanEval 점수와 CRUXEval 점수가 함께 올랐지만, GPT 계열 데이터로 증류한 인스트럭트 모델들은 HumanEval만 크게 오르고 실행 예측은 따라오지 않았다. 코드 생성 능력은 얻었지만 코드 이해 능력은 얻지 못한 것이다.
두 번째는 LiveCodeBench다. 앳코더, 코드포스, 리트코드의 주간 대회에서 새 문제를 계속 수집해, 문제의 출제 시점을 조절 손잡이로 삼는다. 특정 모델의 학습 컷오프 이후 문제에서 성능이 눈에 띄게 꺾이는 반면 대조군 모델은 안정적인 패턴이 나오면서, 오염이 실제로 성능 수치를 부풀리고 있음이 드러났다. 이 벤치마크 사이트에서는 기간을 지정해 그 시점의 모델 성능을 볼 수 있다.
세 번째 IneqMath는 올림피아드 수준 부등식 증명을 검증 가능한 두 과제로 바꾼 것이다. 부등식이 항상 성립하는 가장 큰 상수를 찾게 하거나, 양변의 대소 관계를 판정하게 한다. 여기서 나온 것이 '건전성 격차'다. 정답만 맞히는 비율과, 근거까지 올바른 비율 사이에 모든 모델에서 큰 차이가 났다. 한 모델은 정답 정확도 54.5%에서 전체 정확도 3.5%로 떨어졌다. 추론 토큰을 5천에서 4만까지 늘려 봐도 2만 근처에서 성능이 포화됐다.
발표 후반은 코딩 AI에 남은 과제를 데이터·규모·상호작용·측정으로 나눈다. 데이터 쪽에서는 모델이 본 적 없는 언어에서 무너진다. GPU 커널 언어 Triton에서 실제 내적 연산을 써 버리는 문법 오류를 내거나, Lean 4를 요청해도 호환되지 않는 Lean 3 문법으로 돌아가고, 존재하지 않는 정리 이름을 지어낸다. 버전 업데이트가 보안 때문일 때는 문제가 더 심각해서, 자바 17의 안전한 난수 생성이 나온 뒤에도 모델이 이전의 취약한 방식을 기본으로 쓴다는 연구가 인용된다.
규모 쪽에서는 모델을 키우는 것만으로 부족하다는 주장이 이어진다. 검색 증강 생성이 흔한 해법이지만, 같은 코드를 Go·파이썬·C#으로 옮겨 임베딩을 찍어 보니 의미가 아니라 문법을 기준으로 뭉쳤다. 의미가 같은 코드가 서로 멀리 떨어지는 것이다. 상호작용 쪽에서는 SWE-bench의 사례가 언급된다. 새 입력 형식을 지원해 달라는 이슈에 노련한 엔지니어라면 읽기와 쓰기를 모두 구현하겠지만, 모델은 읽기만 만들어 그 형식으로 저장할 수 없게 만들었다. 측정 쪽에서는 과제 다양성과 오염, 그리고 우리가 재려는 것을 실제로 재고 있는지의 구성 타당성이 문제로 남는다.
주요 인사이트
- 벤치마크의 가치는 순위가 아니라 어긋남에 있다. HumanEval과 CRUXEval을 두 축에 놓고 보니 모델들이 세 무리로 갈렸고, 그 어긋남이 증류 학습의 한계를 드러냈다.
- 시간을 변수로 쓰는 설계는 오염을 검증 가능한 대상으로 바꾼다. 문제의 출제 시점만 조절해도 어떤 모델이 외웠고 어떤 모델이 일반화했는지 구분할 수 있다.
- 검증 가능한 보상이 만든 부작용이 건전성 격차다. 강화학습에는 채점 가능한 결과물이 필요한데, 정답 하나를 맞히는 쪽이 증명 전체를 맞히는 쪽보다 훨씬 쉬워서 커뮤니티가 정답 맞히기에 과도하게 최적화됐다.
- 검색으로 긴 문맥 문제를 우회하기 어려운 이유가 실험으로 제시됐다. 임베딩이 의미보다 문법을 따라 모이기 때문에, 언어가 다르면 같은 알고리즘도 검색으로 찾아내기 어렵다.
- 모호한 명세를 사람처럼 해석하는 능력은 지금의 자동 평가로는 거의 보이지 않는다. 모델이 기능을 만들 줄 몰라서가 아니라 무엇을 원하는지 짚어내지 못해 실패하는 경우가 많고, 이는 사람이 개입하지 않는 벤치마크에서는 잡히지 않는다.
- 발표자는 코딩 AI가 자율주행 직전의 자동차와 비슷한 지점에 있다고 본다. 자동 완성 같은 소소한 개선이 쌓이는 단계를 지나, 사람이 목적지만 정하고 감시하는 형태로 넘어갈 때 인터페이스를 어떻게 설계하고 검증할지가 과제로 남는다.
자주 묻는 질문
'건전성 격차'란 무엇인가요?
부등식 문제에서 모델이 정답을 맞히는 비율과, 그 답에 이르는 논증까지 올바른 비율 사이의 차이를 말합니다. 모든 모델에서 큰 격차가 나타났고, 한 모델은 정답 정확도 54.5%에서 전체 정확도 3.5%로 떨어졌습니다. 답은 직관이나 패턴으로 맞히지만 증명 단계에는 근거 없는 비약이 섞인다는 뜻입니다.
왜 정답보다 증명이 훨씬 어려운가요?
발표자는 답만 얻는 데는 쉬운 예를 넣어 보거나 숫자를 대입해 후보를 지우는 등 여러 우회로가 있다고 설명합니다. 국제수학올림피아드 채점에서도 답 자체는 7점 중 1점에 불과합니다. 게다가 학습 데이터에는 문제와 상자 친 정답이 짝지어 등장하는 경우가 많아, 문제와 답 사이의 연결이 강하게 학습됩니다.
벤치마크 오염은 어떻게 확인했나요?
LiveCodeBench는 대회에서 새 문제를 계속 모아, 문제가 출제된 시점별로 성능을 나눠 봅니다. 특정 모델의 학습 컷오프 이후 문제에서 성능이 꺾이는데 대조군 모델은 안정적이라면 오염을 의심할 수 있습니다. 사이트에서 기간을 지정해 그 시기의 성능을 직접 확인할 수 있습니다.
검색 증강 생성으로 대규모 코드베이스 문제를 풀 수 없나요?
한계가 있다고 봅니다. 같은 코드의 Go·파이썬·C# 버전으로 임베딩을 확인해 보니 의미가 아니라 문법을 기준으로 뭉쳤고, 의미가 같은 코드가 멀리 떨어졌습니다. 또 검색으로 가져온 조각들은 서로 다른 부분의 정보를 담고 있어, 현재 코드베이스 맥락에 맞게 짜맞추고 고치는 일 자체가 어려운 과제입니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗