← 최신 논문
🤖 AI

Beyond Pass Rate: A Multilingual, Execution-Grounded Evaluation of Open Code LLMs

본 논문은 2,700개 이상의 리트코드(LeetCode) 문제를 대상으로 9개의 오픈 소스 코드 LLM에 대한 대규모의 다국어 실행 기반 평가를 제시하며, 현재의 모델들이 인간의 성능에 크게 뒤처져 있고 이들의 순위와 실패 양상이 언어 및 문제 난이도에 따라 실질적으로 상이함을 밝힘으로써 단일 지표 리더보드의 한계를 강조한다.

원저자: Sayed Erfan Arefin

게시일 2026-06-09
📖 3 분 읽기☕ 가벼운 읽기

원저자: Sayed Erfan Arefin

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

당신이 코딩 팀의 헤드 코치라고 상상해 보십시오. 당신은 새로운 보조 프로그래머를 채용해야 합니다. 일반적인 인터뷰 방식은 후보자에게 짧은 퍼즐 하나를 주고 그것을 해결하는지 보는 것입니다. 맞히면 "합격(pass)", 틀리면 "불합격(fail)"을 줍니다.

이 논문은 이러한 "합격/불합격" 방식이 마치 요리사가 달걀 하나를 삶을 수 있는지 여부만으로 그 요리사를 평가하는 것과 같다고 주장합니다. 그것은 그 요리사가 복잡한 요리를 할 수 있는지, 매운 식재료를 다룰 수 있는지, 혹은 주방을 청결하게 유지할 수 있는지에 대해 거의 알려주지 않습니다.

연구자들이 수행한 내용을 쉽게 설명하면 다음과 같습니다.

거대한 실험: 코딩 올림픽

연구자들은 단 하나의 퍼즐 대신, 거대한 "코딩 올림픽"을 설정했습니다.

  • 참가자: 9개의 서로 다른 오픈 소스 AI 모델("보조자")을 초대했습니다.
  • 경기장: LeetCode(인기 있는 코딩 연습 사이트)에서 가져온 2,707개의 무료 코딩 문제를 사용했습니다.
  • 언어: 단 하나의 언어(예: 영어)만 사용하지 않고, 12가지의 다양한 프로그래밍 언어(Python, Java, C++ 등)로 테스트했습니다.
  • 규모:325,000회 이상의 시도를 실행했습니다. 이는 모든 참가자가 모든 언어로 모든 퍼즐을 시도하는 것과 같습니다.

연구 결과: 복잡합니다

연구자들은 단 하나의 "최고의" AI는 존재하지 않는다는 것을 발견했습니다. 누가 승리하느냐는 전적으로 당신이 무엇을 찾고 있느냐에 달려 있습니다.

1. "제너럴리스트(Generalist)" 대 "스페셜리스트(Specialist)"

  • Yi-Coder-9B-Chat은 가장 일관된 "평균적" 성능을 보였습니다. 무작위로 섞인 문제들을 풀게 했을 때, 전체적으로 가장 많은 문제를 맞혔습니다.
  • Qwen2.5-Coder-14B-Instruct는 "하드 모드" 전문가였습니다. 쉬운 문제를 가장 많이 맞히지는 못했지만, 퍼즐이 정말 어려워졌을 때 이 AI가 바로 넘어야 할 산이었습니다. 또한, 모든 문제를 완벽하게 해결하지는 못하더라도 가장 다양한 종류의 문제를 해결해 냈습니다.
  • Gemma-2-27B-IT는 "깔끔한 결벽증 환자"였습니다. 가장 많은 문제를 해결하지는 못했지만, 작성한 코드가 가장 깔끔하고 규칙을 가장 잘 준수했습니다.

2. 인간과의 격차
연구에 참여한 최고의 AI조차 평균적으로 문제의 약 **23%**만을 정확히 해결했습니다. 이에 비해 인간 프로그래머는 약 **57%**를 해결합니다. 이는 AI가 여전히 스스로 작업할 만큼 신뢰할 만한 수준에는 미치지 못하며, 많은 감독이 필요한 주니어 인턴과 같다는 것을 의미합니다.

3. "컴파일 에러(Compile Error)"의 벽
연구자들은 AI가 왜 실패했는지 조사했습니다. 그들은 놀라운 패턴을 발견했습니다. 실패의 63%는 코드가 실행되기도 전에 발생했습니다.
이는 엔진 블록이 깨져서 시동이 걸리지 않는 자동차와 같습니다. 차가 얼마나 빨리 달릴 수 있는지 테스트하기도 전에, 아예 시동조차 걸리지 않는 것입니다. 대부분의 AI는 논리적 오류 때문이 아니라 기본적인 구문 오류(오타, 괄호 누락 등) 때문에 실패했습니다. 즉, 정확성을 테스트하기 훨씬 전 단계인 "컴파일(실행 가능한 프로그램으로 변환)" 단계에서 이미 실패하고 있었습니다.

4. "클린 코드(Clean Code)"의 역설
여기 반전이 있습니다. 가장 "깔끔한" 코드를 작성한 AI(Gemma)가 가장 많은 문제를 해결한 것은 아니었습니다. 반대로, 가장 많은 문제를 해결한 AI(Qwen)는 코드가 더 "지저분하고" 코드 정리 도구로부터 더 많은 경고를 받았습니다.

  • 비유: 두 명의 학생이 시험을 치른다고 가정해 봅시다. 학생 A는 매우 깔끔하고 완벽한 형식의 에세이를 썼지만 답은 틀렸습니다. 학생 B는 지우고 쓴 흔적이 있는 지저분한 에세이를 썼지만 답은 맞혔습니다.
  • 논문은 "기능적 성공"(정답을 맞히는 것)과 "정적 품질"(깔끔한 코드를 쓰는 것)이 서로 다른 별개의 개념임을 보여줍니다. 깔끔한 코드를 쓴다고 해서 문제를 해결할 것이라 단정할 수 없으며, 문제를 해결한다고 해서 반드시 깔끔한 코드를 쓰는 것도 아닙니다.

5. 언어가 중요합니다
Python을 잘 쓰는 AI가 C++에서는 형편없을 수 있습니다. 어떤 언어로 코드를 작성하느냐에 따라 순위가 바뀌었습니다. 이는 단순히 "모델 X가 최고다"라고 말할 수 없음을 증명합니다. 대신 "모델 X는 Python에 최고지만, 모델 Y는 Java에 더 낫다"라고 말해야 합니다.

결론

논문은 코딩 AI를 판단하기 위해 단 하나의 "점수"만 보는 것을 멈춰야 한다고 결론짓습니다. 의사의 능력을 진단 능력은 무시한 채 상처를 꿰매는 능력만으로 판단하지 않듯이, 우리도 코딩 AI를 단지 "합격률"로만 판단해서는 안 됩니다.

이 도구들을 진정으로 이해하려면 다음을 살펴봐야 합니다:

  • 어떤 언어를 유창하게 구사하는가.
  • 어려운 문제를 어떻게 처리하는가.
  • 실패의 원인이 오타 때문인가, 아니면 잘못된 논리 때문인가.
  • 작성한 코드가 유지보수할 수 있을 만큼 깔끔한가.

연구자들은 다른 사람들이 모델이 어떻게, 그리고 왜 성공하거나 실패하는지 정확히 알 수 있도록, 이 상세한 결과 데이터베이스를 구축하여 공개했습니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →