R1-Code-Interpreter: LLMs Reason with Code via Supervised and Multi-stage Reinforcement Learning

이 논문은 다단계 강화 학습과 커리큘럼 학습을 통해 다양한 작업에서 코드 인터프리터를 효과적으로 활용하고 GPT-4o 를 능가하는 성능을 보이는 'R1-Code-Interpreter'를 제안합니다.

Yongchao Chen, Yueying Liu, Junwei Zhou, Yilun Hao, Jingquan Wang, Yang Zhang, Na Li, Chuchu Fan

게시일 2026-03-05
📖 3 분 읽기☕ 가벼운 읽기

Each language version is independently generated for its own context, not a direct translation.

1. 왜 이 연구가 필요한가요? (문제 상황)

지금까지의 AI 는 **매우 똑똑한 '문장 작가'**였지만, 계산이나 논리 퍼즐을 풀 때는 실수를 많이 했습니다.

  • 비유: 마치 수학 시험을 치는 학생이 생각은 잘하지만, 계산기를 쓰지 않고 손으로 계산하다 보니 실수를 하는 것과 같습니다.
  • 기존의 시도: 연구자들은 AI 에게 "계산기는 써도 돼"라고 말해주고 코드를 짜게 했습니다. 하지만 AI 는 언제 글을 써야 하고, 언제 코드를 써야 할지 잘 판단하지 못했습니다. 때로는 간단한 문제를 풀기 위해 복잡한 코드를 짜거나, 반대로 복잡한 문제를 글로만 풀려고 하다가 실패하곤 했습니다.

2. 이 연구의 해결책: "단계별 코칭" (R1-Code-Interpreter)

이 연구팀은 AI 를 가르칠 때 두 가지 핵심 전략을 사용했습니다.

① "수업 자료"를 잘 골라야 한다 (커리큘럼 학습)

기존에는 AI 에게 쉬운 문제부터 어려운 문제까지 무작위로 섞어서 가르쳤습니다. 하지만 이 방법은 비효율적이었습니다.

  • 비유: 수학 선생님이 학생에게 '1+1' 같은 너무 쉬운 문제나, '천재 수학자만 풀 수 있는 난제' 같은 너무 어려운 문제를 섞어서 가르치면, 학생은 지루하거나 좌절해서 배움이 멈춥니다.
  • 이 연구의 방법: 연구팀은 AI 가 **"가장 많이 성장할 수 있는 문제"**를 찾아냈습니다. (AI 가 절반은 맞고 절반은 틀리는 문제들).
    • 단계 1: AI 가 가장 잘 배울 수 있는 '적당한 난이도' 문제부터 가르침.
    • 단계 2: AI 가 조금씩 성장하자, 조금 더 어려운 문제로 넘어감.
    • 단계 3 & 4: 마지막에 아주 어렵거나 아주 쉬운 문제들을 섞어줌.
    • 결과: 이렇게 **'난이도별 수업'**을 시켰더니, AI 의 실력이 3.4% 에서 **9.3%**로 크게 향상되었습니다.

② "코딩"과 "생각"을 분리해서 가르침 (효율성)

AI 가 코드를 실행하는 과정은 컴퓨터의 그래픽 카드 (GPU) 를 매우 느리게 만들었습니다.

  • 비유: 요리사 (AI) 가 요리를 하다가, 재료를 다듬는 일 (코드 실행) 을 하느라 주방 (GPU) 을 비워두고 기다리는 시간이 길어지면, 요리사도 일을 못 하죠.
  • 이 연구의 방법: 요리사 (AI) 가 재료를 다듬는 일은 **별도의 조수 (CPU 서버)**에게 맡겼습니다. 요리사는 계속 새로운 요리를 생각할 수 있게 되니, 전체 교육 시간이 39%나 단축되었습니다.

3. 놀라운 결과: "스스로 점검하는 능력"

이렇게 훈련된 AI (R1-CI-14B) 는 놀라운 능력을 보여주었습니다.

  • 결과: 이 모델은 텍스트만 사용하는 GPT-4o 보다 훨씬 정확했고, GPT-4o 가自带的 (기본 탑재) 코드 해석기를 쓴 경우보다도 더 좋은 점수를 받았습니다.
  • 자기 점검 (Self-Checking): 가장 흥미로운 점은 AI 가 스스로 자신의 답을 코드로 검증하는 습관을 들였다는 것입니다.
    • 비유: 시험을 다 풀고 나서, "아, 내가 계산기를 안 썼나? 다시 한번 코드로 확인해 볼까?"라고 스스로 생각하며 답을 다시 확인하는 것입니다. 이는 훈련을 통해 AI 가 스스로 깨달은 (Emergent) 행동입니다.

4. 요약: 이 연구가 왜 중요한가?

이 논문은 **"AI 에게 코딩을 가르치는 가장 효과적인 방법"**을 찾았습니다.

  1. 무작위 교육은 안 된다: AI 에게 모든 문제를 섞어서 가르치지 말고, AI 가 가장 잘 배울 수 있는 문제 순서대로 가르쳐야 합니다.
  2. 혼자서 하기보다 도구를 써야 한다: AI 가 복잡한 문제를 풀 때는 코드를 실행하는 도구를 활용하는 것이 훨씬 정확합니다.
  3. 스스로 고치는 습관: 잘 훈련된 AI 는 답을 내기 전에 스스로 검증하는 능력을 갖게 됩니다.

결론적으로, 이 연구는 AI 가 단순한 '말하는 기계'를 넘어, **복잡한 문제를 해결하는 '현명한 문제 해결사'**로 성장할 수 있는 길을 열어주었습니다.