외부 도구 없이 LLM이 스스로 코드 실력을 높이는 방법: Self-Distillation (arxiv.org)
한줄 요약
LLM이 자기 출력만으로 코드 생성 성능을 42.4% → 55.3%까지 끌어올렸다.
무엇이 달라지나?
기존에 LLM의 코드 생성 능력을 높이려면 보통 세 가지 중 하나가 필요했다. 정답을 검증해주는 외부 검증기, 더 똑똑한 교사 모델, 또는 복잡한 강화학습 파이프라인이다. 이번 연구는 이 세 가지를 모두 걷어낸다.
연구진이 제안한 방식은 **단순 자기 증류(Simple Self-Distillation, SSD)**다. 모델 자신이 특정 온도(temperature)와 절삭(truncation) 설정으로 샘플을 생성하고, 그 샘플을 그대로 지도 학습(SFT)으로 다시 학습하는 구조다. 외부 피드백 없이 모델의 출력 분포 자체를 재조정하는 것이 핵심이다.
성능 변화는 뚜렷하다. Qwen3-30B-Instruct 기준으로 LiveCodeBench v6에서 pass@1 점수가 42.4%에서 55.3%로 올랐다. 특히 어려운 문제일수록 성능 향상 폭이 컸다는 점이 주목할 만하다. 이 효과는 4B, 8B, 30B 규모에서 Qwen과 Llama 계열 모델 모두에 재현됐으며, instruct 버전과 thinking 버전 양쪽에서 확인됐다.
왜 이렇게 단순한 방법이 통하는가에 대해 연구진은 정밀도-탐색 충돌(precision-exploration conflict) 개념으로 설명한다. LLM 디코딩 과정에서 정밀도가 필요한 맥락에서는 불필요한 토큰 분포의 꼬리를 억제하고, 탐색이 필요한 맥락에서는 다양성을 유지하는 방식으로 토큰 분포가 맥락 의존적으로 재형성된다는 것이다.
자주 묻는 질문
Q.LLM의 코드 생성 성능을 높이기 위해 'Self-Distillation'이라는 방법을 쓴다는 게 구체적으로 어떤 과정인가?
모델이 스스로 특정 온도와 절삭 설정으로 코드 샘플을 여러 개 생성한다. 그 생성물을 외부 검증 없이 그대로 학습 데이터로 삼아 지도 학습(SFT)을 진행하는 것이 전부다. 교사 모델이나 강화학습 없이 모델 자신의 출력 분포를 스스로 재조정하는 방식이다. 결과적으로 정밀도가 필요한 상황에서는 불필요한 후보 토큰을 줄이고, 탐색이 필요한 상황에서는 다양성을 유지하도록 분포가 바뀐다.
Q.Self-Distillation이 기존 강화학습 기반 코드 생성 학습 방법과 다른 점은 무엇인가?
강화학습 기반 방법은 보상 모델이나 실행 결과 검증기 같은 외부 피드백이 필수다. 반면 SSD는 외부 신호 없이 모델 자신의 출력만을 활용한다. 인프라 구성이 훨씬 단순하고, 기존 SFT 환경에 바로 적용할 수 있다. 연구진은 이 방법이 강화학습을 대체하는 것이 아니라 포스트 트레이닝 단계에서 병행할 수 있는 보완 전략이라고 설명하고 있다.
Q.Self-Distillation 방법이 어떤 모델과 어떤 규모에서 효과가 검증됐나?
Qwen과 Llama 계열 모델에서 4B, 8B, 30B 세 가지 규모에 걸쳐 효과가 확인됐다. instruct 버전과 thinking 버전 모두에 적용됐다. 가장 큰 성능 향상은 Qwen3-30B-Instruct에서 나타났으며, LiveCodeBench v6 기준 pass@1이 42.4%에서 55.3%로 올랐다. 특히 난이도가 높은 문제에서 향상 폭이 집중됐다는 점도 확인됐다.
관련 아티클
관련 사례
이 글의 키워드와 맞닿은 실제 개발 사례를 함께 보세요.
다단계 수익 구조 기반 분양형 렌탈 쇼핑몰 플랫폼
MLM 수익 배분 구조와 쇼핑몰 자동 생성 엔진을 결합한 분양형 렌탈 플랫폼. 솔루션 없이 100% 커스텀으로 개발된 트리 구조 재귀 정산 엔진과 멀티테넌트 아키텍처가 핵심
공공 입찰 전략 하이브리드 앱
낙찰 확률을 높이는 입찰 전략 도구를 모바일로 확장한 하이브리드 앱. 적정 투찰가 자동 계산, 수익 시뮬레이션, 전문가 매칭을 손안에서 제공
프랜차이즈 교육 ERP/LMS 플랫폼 — 레거시 ASP 전면 현대화
20년 된 ASP 레거시 시스템을 Next.js/Node.js 기반으로 전면 재구축한 프랜차이즈 교육 ERP/LMS 플랫폼. 수천만 건 DB 이관, 교사·학부모 전용 앱 분리 구축