ReflexiCoder: Teaching Large Language Models to Self-Reflect on Generated Code and Self-Correct It via Reinforcement Learning

이 논문은 외부 오라클이나 실행 피드백 없이도 강화 학습을 통해 생성된 코드에 대한 자기 성찰과 자기 수정 능력을 내재화한 새로운 프레임워크 'ReflexiCoder'를 제안하며, 이를 통해 1.5B~14B 크기의 오픈소스 모델 중 최고 성능을 달성하고 추론 시 토큰 효율성을 40% 향상시켰음을 보여줍니다.

Juyong Jiang, Jiasi Shen, Sunghun Kim, Kang Min Yoo, Jeonghoon Kim, Sungju Kim

게시일 Mon, 09 Ma
📖 3 분 읽기☕ 가벼운 읽기

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

🚀 리플렉시코더 (ReflexiCoder): 코딩을 배우는 AI 의 '스스로 반성하고 고치는' 능력

이 논문은 인공지능 (LLM) 이 코딩을 할 때, 단순히 한 번에 답을 내는 것이 아니라, 스스로 "아, 여기 실수했네?"라고 생각하고 고치는 능력을 배워내게 한 획기적인 연구입니다.

기존의 AI 는 코딩 문제를 받으면 "System 1(즉흥적 사고)"처럼 바로 답을 내놓았습니다. 하지만 복잡한 문제는 한 번에 맞추기 어렵죠. 그래서 보통은 외부의 '정답 확인기 (컴파일러나 테스트)'를 돌려서 틀리면 다시 고치는 방식을 썼습니다. 하지만 이 방법은 시간이 너무 걸리고, 외부 도구가 없으면 AI 가 스스로 고칠 줄 모릅니다.

리플렉시코더는 이 문제를 해결하기 위해 AI 의 머릿속 (모델 가중치) 에 '스스로 반성하고 수정하는 능력'을 직접 심어주었습니다.


🧠 핵심 비유: "수험생 AI"와 "스스로 교정하는 선생님"

이 연구를 이해하기 위해 수능을 보는 학생스스로 공부하는 학생을 비교해 보겠습니다.

1. 기존 AI (System 1): "일단 찍어보자"

  • 상황: 수학 문제를 풀 때, 한 번에 답을 적어냅니다.
  • 문제: 틀리면 "아, 제가 틀렸네요"라고 말하지 못합니다.
  • 해결책 (기존 방식): 옆에 있는 **선생님 (외부 도구)**이 "이건 틀렸어, 다시 해봐"라고 말해줘야만 고칩니다.
  • 단점: 선생님이 항상 옆에 있어야 하고, 질문하고 답변하는 과정이 너무 느립니다.

2. 리플렉시코더 (ReflexiCoder): "스스로 반성하는 천재"

  • 상황: 문제를 풀고 나서, **스스로 "잠깐, 이 부분 논리가 이상한데?"라고 생각 (반성)**합니다.
  • 행동: "아, 내가 부등호를 잘못 썼네. 고쳐야지!"라고 스스로 수정합니다.
  • 특징: 선생님 (외부 도구) 이 없어도 스스로 실수를 찾아내고 고칩니다.
  • 결과: 처음부터 더 정확한 답을 내놓거나, 틀려도 아주 빠르게 고쳐서 완벽한 답을 냅니다.

🛠️ 어떻게 이런 능력을 가르쳤을까요? (강화 학습의 마법)

연구자들은 AI 에게 "정답을 맞히는 것"뿐만 아니라 "어떻게 생각하고 고치는지"까지 점수를 주는 게임을 시켰습니다.

  1. 규칙적인 사고 과정 (Structured Trajectory):

    • AI 가 무작정 떠드는 게 아니라, **[생각 → 답 → 반성 → 수정]**이라는 정해진 순서로 말하도록 훈련했습니다.
    • 마치 에세이를 쓸 때, [초안 → 검토 → 수정] 과정을 거치는 것과 같습니다.
  2. 정교한 점수 시스템 (Reward Function):

    • 형식 준수: "반성"과 "수정"이 제대로 된 순서로 나왔는지 확인합니다.
    • 효율성: "너무 길게 고민하지 말고, 핵심만 짚어서 고쳐라"라고 점수를 줍니다. (불필요한 반복을 줄임)
    • 점진적 개선: "처음 답보다 두 번째 답이 더 좋아야 점수를 준다"고 합니다.

이 과정을 통해 AI 는 **"실수를 찾아내는 법"**과 **"최소한의 노력으로 고치는 법"**을 스스로 터득하게 됩니다.


🏆 놀라운 성과: 작은 모델이 거인보다 낫다?

이 연구의 결과는 정말 놀랍습니다.

  • 성능: 80 억 개 (8B) 의 파라미터를 가진 작은 모델이, 훨씬 큰 상용 모델 (GPT-5.1 등) 과 맞먹거나 심지어 더 좋은 점수를 받았습니다.
  • 효율성 (가장 중요한 부분):
    • 보통 "스스로 고치는 과정"을 거치면 토큰 (데이터) 사용량이 늘어나서 느려질 것 같지만, 오히려 더 빨라졌습니다.
    • 비유: 다른 AI 들이 "아, 이거 맞을까? 저거 맞을까?" 하며 10 번을 고민하고 1000 단어를 쓴다면, 리플렉시코더는 "아, 여기가 문제구나!" 하고 바로 1 번만 고쳐서 600 단어만 썼습니다.
    • 결과: 계산 비용은 40% 줄이면서 정확도는 높였습니다.

💡 요약: 왜 이 연구가 중요한가요?

  1. 외부 의존성 제거: 컴파일러나 테스트 도구가 없어도 AI 가 스스로 디버깅 (수정) 할 수 있습니다.
  2. 빠른 사고: "생각 - 반성 - 수정"을 머릿속에서 아주 빠르게 처리하므로, 느려지는 대신 더 똑똑해집니다.
  3. 미래 지향적: 앞으로 AI 가 복잡한 소프트웨어를 개발할 때, 인간처럼 "실수하고 고치는" 과정을 스스로 수행할 수 있는 토대를 마련했습니다.

한 줄 요약:

"리플렉시코더는 AI 에게 '스스로 실수를 발견하고 고치는' 능력을 심어주어, 외부 도움 없이도 더 빠르고 정확하게 코딩하게 만든 혁신적인 기술입니다."