이 논문은 작은 언어모델이 큰 스승 모델을 흉내 내며 배우는 '온폴리시 증류(On-Policy Distillation, OPD)' 과정에서, 학생의 응답이 비정상적으로 길어져 생성 예산(길이 한도)을 다 써버리는 현상의 원인을 파고든다. 저자들은 그 핵심 원인 중 하나가 학생과 스승이 문장을 끝낼 때 서로 다른 '종료 토큰(EOS)'에 확률을 몰아준다는 점, 즉 종료 토큰 불일치(termination-token mismatch)임을 밝혀냈다. 그리고 겉으로 선언된 종료 토큰 집합을 맞추는 것만으로는 부족하며, 기능적으로 같은 역할을 하는 EOS들을 '하나의 의미적 종료 행동'으로 취급하면 Qwen3, Llama, Gemma 세 계열 모두에서 길이 폭증이 크게 줄어든다는 것을 보였다.
언어모델을 더 작고 빠르게 만드는 대표적 방법이 '증류(distillation)'다. 큰 모델(스승)이 내는 판단을 작은 모델(학생)이 따라 하도록 학습시키는 것이다. 그중에서도 온폴리시 증류(OPD)는 학생이 직접 문장을 생성해 보고, 그 생성 과정에서 스승이라면 어떻게 했을지를 실시간으로 비교하며 배우는 방식이다. 학생이 스스로 걷게 하면서 옆에서 스승이 교정해 주는 셈이다.
그런데 여기서 이상한 일이 벌어진다. 학생의 답변이 자꾸 길어진다. 짧게 끝내도 될 답을 계속 이어 쓰다가, 정해진 최대 길이(생성 예산)를 다 소진해 버리는 경우까지 생긴다. 이것이 이 논문이 다루는 '길이 폭증(length inflation)'이다.
비유하자면 이렇다. 말을 마칠 때 어떤 사람은 마침표를 찍고, 어떤 사람은 "이상입니다"라고 말하며 끝낸다. 둘 다 '문장을 끝낸다'는 같은 기능을 하지만 겉으로 쓰는 신호는 다르다. 스승은 "이상입니다"로 끝내는 습관이 있는데, 학생은 원래 마침표로 끝내는 습관이 있었다고 해보자. OPD는 학생에게 "네가 좋아하는 마침표 끝맺음은 억눌러"라고 신호를 주지만, 그렇다고 스승이 선호하는 "이상입니다" 끝맺음을 확실히 물려주지도 못한다. 결과적으로 학생은 '어떻게 끝내야 할지'를 잃어버리고 계속 말을 이어가게 된다.
기존에는 이런 문제를 대충 길이 페널티나 하이퍼파라미터 조정 정도로 다뤘지만, 이 논문은 문제의 뿌리를 '끝맺는 방법(종료 토큰)의 불일치'라는 구체적 메커니즘으로 짚었다는 점이 다르다.
저자들이 발견한 핵심 사실은 이렇다. 학생(사전학습만 된 base 모델)과 스승(추가 후속학습을 거친 post-trained 모델)은, 심지어 겉으로 '선언한 종료 토큰 집합(stopping set, 문장을 끝내는 데 쓰기로 정한 특수 토큰들)'이 완전히 똑같은 경우에도, 실제로 확률을 몰아주는 EOS 토큰이 서로 다를 수 있다는 것이다. Qwen3, Llama, Gemma 세 모델 계열 모두에서 이 현상이 관측됐다.
이 불일치가 왜 문제인가. OPD는 학생이 원래 선호하던 종료 행동을 억누른다. 그런데 스승이 선호하는 대안 종료 토큰은 안정적으로 학생에게 전달되지 못한다. 즉 '끝내기'라는 행동 자체가 두 모델 사이에서 미끄러지면서, 학생은 문장을 언제 끝내야 할지 신호를 제대로 못 받게 되고 답이 늘어진다.
여기서 저자들이 던지는 질문이 중요하다. "그럼 종료 토큰 집합만 서로 똑같이 맞춰주면(align the decoding stopping set) 되지 않을까?" 실험 결과는 '그것만으로는 부족하다(insufficient)'였다. 목록을 맞춘다고 해서 두 모델이 실제로 같은 토큰에 확률을 싣는 것은 아니기 때문이다.
그래서 제안한 방법이 '기능적으로 같은 EOS 토큰들을 하나의 공유된 의미적 종료 행동(shared semantic stopping action)으로 취급'하는 것이다. 앞의 비유로 돌아가면, 마침표든 "이상입니다"든 '문장을 끝낸다'는 같은 의미의 행동으로 묶어서, 학생이 어느 방식으로 끝내든 '끝내기'라는 의도가 스승과 학생 사이에 제대로 전달되도록 한 것이다. 겉모양(어떤 토큰인가)이 아니라 기능(무엇을 하는가)을 기준으로 정렬한 셈이다.
이 접근은 세 모델 계열 모두에서 불일치로 인한 길이 폭증을 상당히(substantially) 완화했다.
초록이 밝히는 성과는 크게 세 가지다(구체 수치는 초록에 제시되지 않아 정성적으로 정리한다).
| 시도 | 결과 |
|---|---|
| 종료 토큰 집합만 맞추기 | 불충분 — 불일치가 남음 |
| 기능 동일 EOS를 공유 종료 행동으로 취급 | Qwen3·Llama·Gemma 전반에서 길이 폭증 상당 완화 |
| K2-Horizon 단계별 OPD 분석 | 종료 선호가 학습 중 크게 이동, 후반부에 별도 길이 폭증 잔존 |
또한 저자들은 종료 행동이 학습 과정에서 어떻게 변하는지 보기 위해, K2-Horizon이라는 여러 학습 단계에 걸쳐 OPD를 분석했다. 이 단계별 분석에서 두 가지가 드러났다. 첫째, 종료 선호(termination preference)는 학습이 진행되는 동안 크게 이동할 수 있다. 즉 '언제 끝낼지'에 대한 모델의 습관은 고정된 게 아니라 학습 중 계속 바뀐다. 둘째, OPD 후반부에는 종료 정렬을 해도 사라지지 않는(persists beyond termination alignment) 또 다른 길이 폭증이 존재한다.
이 두 번째 발견이 이 논문을 솔직하게 만든다. 저자들은 종료 불일치가 길이 문제의 '중요한 원인이지만 전부는 아니다(important, but not exhaustive)'라고 못 박는다. 자신들이 찾은 원인으로 설명되지 않는 부분이 분명히 남아 있다고 인정한 것이다. 그리고 제안한 종료 처리 보정을 반영한 구현체(implementation)를 공개했다고 밝혔다.
온틀은 AI 프로젝트 매니저를 파견하는 SaaS로서 여러 언어모델을 실제 제품 파이프라인에 태워 쓴다. 이 논문은 '큰 모델을 작게 줄여 비용을 낮추는' 증류 작업을 할 때 흔히 마주치는 실전 함정을 정확히 짚어준다.
첫째, 응답 길이 폭증은 곧 비용과 지연이다. AI PM이 회의록을 요약하거나 태스크를 분류할 때 답이 불필요하게 길어지면 토큰 비용이 늘고 응답이 느려지며, 최악의 경우 길이 한도에 걸려 답이 잘린다. 이 논문은 그 원인이 프롬프트 품질이 아니라 '모델이 문장을 끝내는 신호의 불일치'라는, 놓치기 쉬운 층위에 있을 수 있음을 알려준다.
둘째, '겉으로 맞춘 것'과 '실제로 맞은 것'은 다르다. 종료 토큰 목록을 똑같이 선언해도 실제 확률 분포는 어긋날 수 있다는 발견은, 제품 관점에서 '설정값을 맞췄으니 됐다'는 안이함을 경계하게 한다. 파인튜닝이나 증류 후에는 선언한 설정이 아니라 실제 출력 행동(응답이 제대로 끝나는지)을 관측해 검증해야 한다.
셋째, 학습 단계마다 행동이 이동한다. 종료 선호가 학습 중 크게 바뀐다는 관찰은, 모델을 한 번 학습하고 끝내는 게 아니라 단계별로 출력 특성을 모니터링해야 함을 시사한다. 온틀처럼 여러 모델을 롤아웃하는 환경에서는 '증류/파인튜닝 후 응답 길이 분포 점검'을 배포 전 체크리스트에 넣을 만하다.
정리하면, 이 연구는 화려한 성능 향상보다 '왜 작은 모델이 자꾸 말을 못 끝내는가'라는 실무적 골칫거리의 뿌리를 정직하게 파헤친 작업이다. 제품에 모델을 직접 태우는 팀이라면, 비용·품질을 좌우하는 종료 행동을 눈여겨봐야 한다는 실용적 교훈을 준다.
일반 증류는 스승 모델이 미리 만들어 둔 답을 학생이 따라 배우는 방식에 가깝습니다. 반면 온폴리시 증류는 학생이 직접 문장을 생성해 보고, 그 생성 과정에서 스승이라면 어떻게 판단했을지를 실시간으로 비교하며 배우는 방식입니다. 학생이 스스로 만들어낸 문장을 놓고 교정받기 때문에, 학생 자신의 습관(예: 문장을 끝내는 방식)이 학습에 크게 영향을 줍니다.
OPD는 학생이 원래 선호하던 종료 방식을 억누릅니다. 그런데 스승이 선호하는 대안 종료 토큰이 학생에게 안정적으로 전달되지 못하면, 학생은 '어떻게 끝내야 할지'에 대한 신호를 잃습니다. 끝내는 행동이 억눌리기만 하고 대체 행동은 안 들어오니, 학생은 문장을 계속 이어 쓰게 되고 결국 길이 한도까지 소진하게 됩니다.
초록에 따르면 그것만으로는 부족합니다. 두 모델이 선언한 종료 토큰 집합이 완전히 같아도, 실제로 확률을 몰아주는 토큰은 서로 다를 수 있기 때문입니다. 그래서 저자들은 목록을 맞추는 대신, 기능적으로 같은 역할을 하는 EOS들을 '하나의 의미적 종료 행동'으로 묶어 다루는 방식을 제안했고, 이것이 세 모델 계열에서 효과를 보였습니다.
아닙니다. 저자들은 종료 불일치가 중요한 원인이지만 전부는 아니라고 분명히 밝혔습니다. OPD 학습 후반부에는 종료 정렬을 해도 사라지지 않는 또 다른 길이 폭증이 남아 있으며, 그 원인은 이 논문에서 완전히 규명되지 않은 열린 문제입니다.