3줄 요약

  1. 웨스트레이크 대학교의 Zhanyi Lu와 Huan Wang이 2026년 10월 8일 arXiv에 공개한 논문이다. 지식 증류는 강한 모델이 아는 것을 약한 모델에게 전달하는 기법인데, 기존 방법은 대부분 학생 모델의 가중치를 학습시키기 때문에 증류한 지식을 그 모델에서만 쓸 수 있다. 연구진은 먼저 학생 모델은 틀렸지만 선생 모델은 맞힌 문제를 찾고, 그런 문제에서 얻은 교훈을 Primer라는 자연어 안내문으로 정리했다. 연구진이 제안한 UTT(Universal Textual Teaching)는 모델의 가중치를 바꾸지 않고 이 안내문을 입력 앞에 추가하는 방법이다.
  2. UTT에서는 네 가지 역할이 Primer를 반복해서 고쳐 쓴다. 학생이 문제를 풀고, 틀리면 Prompter가 채점 결과를 보고 무엇을 가르칠지 지시문을 쓴다. 선생은 그 지시에 맞춰 풀이 시범을 만들고, Synthesizer는 채점을 통과한 시범에서 교훈을 추출해 Primer에 통합한다. 새로 고친 Primer는 같은 배치에서 학생의 정답 수가 줄지 않을 때만 채택된다.
  3. DeepSeek V4 Pro를 선생으로 삼아 만든 Primer는 DeepSeek V4 Flash의 GPU 커널 생성 정확도를 9.4%에서 48.6%로, 올림피아드 수학 정확도를 27.6%에서 51.7%로 높였다. 연구진은 Qwen3.6-27B가 합성에 참여하지 않은 조합에서 만든 Primer도 이 모델에 그대로 적용했고, 그 결과 Qwen3.6-27B의 정확도는 최대 41.8%포인트 올랐다. 같은 문제로 비교한 프롬프트 자동 최적화 방법과 LoRA 미세 조정 방법보다도 UTT의 점수가 높았다.

기존 지식 증류의 한계

지식 증류(knowledge distillation)라는 기법은 성능이 높은 선생 모델의 지식을 더 작고 효율적인 학생 모델에게 전달한다. 대형 언어 모델(LLM)에서는 크게 두 방식이 쓰인다. 첫째는 선생이 만든 답이나 추론 과정을 학생이 그대로 생성하도록 지도 학습하는 방식이다. 둘째 방식에서는 학생이 직접 생성한 답을 선생이 평가하고, 그 평가를 반영해 강화학습이나 선호 최적화로 학생을 학습시킨다.

연구진은 두 방식이 모두 학생의 가중치를 고친다는 점을 문제로 삼았다. 가중치를 고치면 증류된 지식은 특정 구조와 특정 체크포인트의 모델에서만 쓸 수 있다. 가중치에 기록된 지식은 사람이 읽어서 확인하기 어렵고 다른 모델에 재사용할 수도 없다. 또 API로만 쓸 수 있는 상용 모델이나 학습 비용이 큰 모델에는 적용하기 어렵다.

이에 연구진은 선생과 학생의 지식 격차를 가중치 갱신 없이 자연어로 증류할 수 있는지 물었다. 그 자연어는 사람이 읽을 수 있어야 하고 다른 모델에도 재사용할 수 있어야 한다. 연구진은 세 가지 전제를 두었다. 최신 LLM은 자연어 지시를 이해하고 따를 수 있다. 특정 과제에서 생기는 실력 차이는 학생에게 없는 지식이나 작업 원칙에서 비롯됐을 수 있다. 그런 지식을 말로 표현하면 다른 LLM도 그 글을 읽고 활용할 수 있다.

연구진은 선생에게 과제 설명을 주고 범용 프롬프트를 써 달라고 하는 것만으로는 부족하다고 보았다. 선생은 맞히고 학생은 틀린 대표적인 문제를 찾아야 하고, 그 문제에서 재사용할 수 있는 지식을 추출해야 하며, 학생이 원래 잘하던 능력도 해치지 않아야 한다. 연구진은 이 조건을 맞추기 위해 UTT를 설계했고, UTT가 만들어 내는 자연어 안내문에 Primer(기초 교본)라는 이름을 붙였다. 추론할 때는 Primer를 매 과제 입력 앞에 추가한다. 기본 설정에서는 Synthesizer에게 Primer를 1,000단어 이내로 유지하라고 지시한다.

가르칠 문제를 고르는 단계

UTT의 전체 흐름도. 왼쪽 ‘Knowledge-Gap Construction’ 상자에서는 전체 문제 집합 D를 선생과 학생이 각각 풀고 쌍 평가(Paired Evaluation)를 거쳐 증류 합성용, 증류 평가용, 유지, 미해결 부분집합으로 분할한다. 오른쪽 위 ‘Primer Synthesis’ 상자에서는 학생, 과제 채점기, Prompter, 선생이 차례로 이어지고, 그 기록을 Synthesizer가 받아 Primer P_t를 만들며 점선 화살표로 다시 학생에게 돌려준다. 오른쪽 아래 ‘Evaluation’ 상자에서는 최종 Primer P*를 원래 학생과 전이 대상 학생에게 주고 과제 채점기로 평가한다. 모든 모델에 고정을 뜻하는 눈송이 표시가 있다. 그림 2. UTT의 전체 흐름. 왼쪽은 선생과 학생을 함께 채점해 문제를 분류하는 단계, 오른쪽 위는 여러 역할이 Primer를 합성하는 단계, 오른쪽 아래는 완성된 Primer를 평가하는 단계다. 눈송이 표시는 가중치를 고정한 모델이다. 출처: Lu & Wang, arXiv:2610.12114

UTT는 먼저 같은 문제를 선생과 학생에게 각각 여러 번 풀게 해서, 문제마다 두 모델의 정답률을 잰다. 실험에서는 문제마다 답을 다섯 번씩 생성했다. 이 정답률을 기준으로 전체 문제를 세 부분집합으로 분류한다. 각 문제는 세 부분집합 가운데 하나에만 포함된다.

부분집합조건쓰임
증류선생의 정답률이 학생보다 높다70%는 Primer 합성, 30%는 평가
유지학생의 정답률이 0보다 크고 선생보다 낮지 않다학생이 원래 풀던 문제를 계속 푸는지 평가
미해결두 모델 모두 한 번도 맞히지 못했다선생도 못 푼 문제를 학생이 풀게 되는지 평가

연구진이 증류 부분집합만 합성에 쓴 이유는 두 가지다. 선생의 답을 전부 쓰면 학생이 이미 아는 내용까지 중복해서 가르치게 된다. 그리고 선생이 틀린 문제에서는 믿을 만한 시범을 얻을 수 없다. 증류 부분집합은 다시 7대 3으로 분할해, 70%만 Primer 합성에 쓰고 30%는 합성에 쓰지 않은 문제로서 평가에만 쓴다. 유지 부분집합과 미해결 부분집합도 평가에만 쓴다.

네 역할이 Primer를 고쳐 쓰는 과정

UTT는 합성용 문제를 16개씩 배치로 처리하며 Primer를 점진적으로 고쳐 쓴다. UTT에는 네 가지 역할이 있다. 학생 역할은 학생 모델이 맡고, 나머지 세 역할(선생, Prompter, Synthesizer)은 모두 선생 모델이 맡는다. 역할마다 과제와 무관한 고정 시스템 지시문이 있고, 과제별 정보는 실행할 때 입력으로 주어진다. 이 과정 내내 어느 모델의 가중치도 바뀌지 않는다.

배치에 포함된 문제마다 다음 순서로 진행된다.

  1. 학생이 현재 Primer를 참고해 문제를 푼다. 학생의 지시문은 Primer에서 관련 있는 정보를 활용하되 그 내용을 제약으로 여기지는 말라고 안내한다. 채점기가 결과를 돌려주고, 학생이 맞혔으면 다음 문제를 푼다.
  2. 학생이 틀렸으면 Prompter가 문제와 채점 결과를 보고 교수 지시문을 쓴다. Prompter에게는 학생에게 어떤 핵심 지식이나 추론이 부족한지 진단하라는 지시가 주어진다. 오류의 증상과 근본 원인도 구분해야 하고, 교수 지시문에서는 비슷한 문제에도 쓸 수 있는 원칙과 전략, 점검 방법을 강조해야 한다. Prompter는 문제를 직접 풀지 않는다.
  3. 선생이 문제와 교수 지시문을 받아 풀이 시범을 만든다.
  4. 믿을 수 없는 지식이 Primer에 포함되지 않도록, UTT는 선생의 시범이 채점을 통과한 경우에만 이 상호작용 기록(문제, 학생의 답, 채점 결과, 교수 지시문, 시범)을 보존한다.

배치가 끝나면 Synthesizer가 보존된 기록에서 개념, 추론 전략, 판단 규칙, 검증 방법, 흔한 실패 유형을 추출하고, 이를 현재 Primer에 통합해 후보를 만든다. Synthesizer의 지시문은 Primer를 해답 모음이나 변경 이력으로 쓰지 말고 간결한 학습 안내서로 유지하라고 요구한다. 새 지식은 기존 절에 통합하고, 중복은 합치며, 내용은 중복되거나 틀렸거나 너무 모호할 때만 지우라고 지시한다.

후보 Primer는 검증 단계를 거친다. 같은 배치의 문제를 학생에게 현재 Primer로 한 번, 후보 Primer로 한 번 풀게 한다. 후보를 썼을 때 정답 수가 줄지 않으면 후보를 채택하고, 줄면 현재 Primer를 유지한다. 모든 배치를 처리하고 나면 그때의 Primer가 최종본이 된다. 배포할 때도 학생 모델에는 손대지 않고, 입력 앞에 최종 Primer를 추가한다.

실험 설정

연구진은 두 가지 과제로 실험했다.

  • KernelBench: PyTorch 연산을 대체하는 GPU 커널(CUDA 코드)을 작성하는 벤치마크다. 정답 구현이 하나로 정해져 있지 않으며, 생성한 코드를 실제로 실행해 결과가 맞는지와 PyTorch 기준 구현보다 빠른지를 잰다. 연구진은 레벨 1의 100문제를 모두 썼고, 실행은 NVIDIA RTX A6000에서 했다.
  • Omni-MATH-2: 정답이 정해진 올림피아드 수준의 수학 문제 모음이다. 연구진은 난이도 5에서 10 사이의 문제 200개를 기하, 대수, 정수론 같은 분야가 고르게 포함되도록 골랐고, 최종 답의 정확도로 채점했다.

API 응답의 무작위성을 줄이기 위해 모든 모델이 문제마다 답을 다섯 번 생성했으므로, 표본은 KernelBench 500개, Omni-MATH-2 1,000개다. 주 지표는 표본 단위 정확도이고, KernelBench에서는 Fast₁도 함께 보고한다. Fast₁은 문제 단위로 세는 지표다. 문제마다 생성한 답 다섯 개 가운데 정확하면서 PyTorch 기준 구현보다 빠른 답이 하나라도 있으면 그 문제는 조건을 충족한다. Fast₁은 전체 문제 가운데 이 조건을 충족한 문제의 비율이다.

실험에는 DeepSeek V4 Pro(이하 Pro), DeepSeek V4 Flash(이하 Flash), Qwen3.6-27B(이하 Qwen), Claude Opus 5(이하 Opus)의 네 모델을 썼다. 선생과 학생 조합은 Pro→Flash, Pro→Qwen, Opus→Flash의 세 가지로, 같은 계열 내 전달과 계열 간 전달, 오픈 모델과 상용 모델을 모두 포함한다. 모든 모델은 사고 모드를 켜고 실행했고, 최대 출력 길이는 KernelBench 16,384토큰, Omni-MATH-2 32,768토큰이다. Primer를 합성하는 동안의 채점 횟수는 KernelBench 100번, Omni-MATH-2 200번으로 제한했다.1

원래 학생과 다른 학생에게 적용한 결과

표 1은 조합마다 만든 Primer를 원래 학생과 다른 학생에게 각각 적용한 결과를 보여 준다. 괄호 안의 수는 Primer 없이 풀었을 때 대비 상승 폭(%포인트)이고, 동그라미 숫자는 아래 설명에서 쓰는 실험 번호다.2

KernelBench 정확도선생Flash에 적용Qwen에 적용
Primer 없음9.49.2
Pro→Flash19.648.6 (+39.2) ①41.2 (+32.0) ③
Pro→Qwen19.643.8 (+34.4) ④50.0 (+40.8) ②
Opus→Flash36.048.2 (+38.8) ⑤51.0 (+41.8) ⑥
KernelBench Fast₁선생Flash에 적용Qwen에 적용
Primer 없음912
Pro→Flash2035 (+26) ①37 (+25) ③
Pro→Qwen2030 (+21) ④32 (+20) ②
Opus→Flash4139 (+30) ⑤22 (+10) ⑥
Omni-MATH-2 정확도선생Flash에 적용Qwen에 적용
Primer 없음27.634.3
Pro→Flash51.451.7 (+24.1) ①60.1 (+25.8) ③
Pro→Qwen51.443.7 (+16.1) ④62.4 (+28.1) ②
Opus→Flash92.546.6 (+19.0) ⑤65.8 (+31.5) ⑥

표 1. 조합마다 만든 Primer를 Flash와 Qwen에 적용한 결과. 첫 열은 Primer를 만든 선생→원래 학생 조합이고, 선생 열은 그 선생의 점수다. 단위는 %다. 출처: Lu & Wang, arXiv:2610.12114

원래 학생에게 적용한 결과(①, ②)부터 보자. Pro→Flash 조합으로 만든 Primer는 Flash의 KernelBench 정확도를 9.4%에서 48.6%로, Fast₁을 9%에서 35%로, 수학 정확도를 27.6%에서 51.7%로 높였다. 같은 Pro를 선생으로 삼아 Qwen용 Primer를 새로 만들자 Qwen의 점수는 같은 세 지표에서 50.0%, 32%, 62.4%가 됐다. 연구진은 이 결과가 UTT의 효과를 보여 주며, 계열이 다른 학생에게도 UTT를 적용할 수 있다는 근거라고 해석했다.

다음은 Primer를 다시 합성하지 않고 학생끼리 맞바꾼 실험(③, ④)이다. Flash와 상호작용해 만든 Primer를 Qwen에 적용하자 KernelBench 정확도는 32.0%포인트, Fast₁은 25%포인트, 수학 정확도는 25.8%포인트 올랐다. 반대로 Qwen과 상호작용해 만든 Primer를 Flash에 적용하자 KernelBench 정확도는 34.4%포인트, Fast₁은 21%포인트, 수학 정확도는 16.1%포인트 올랐다. 연구진은 이 결과를 근거로, 한 학생과의 상호작용으로 증류한 지식을 다른 학생도 활용할 수 있다고 보았다.

마지막으로 선생을 Opus로 바꿔 Flash용 Primer를 만들었다(⑤). 이 Primer를 적용하자 Flash의 KernelBench 정확도는 38.8%포인트, Fast₁은 30%포인트, 수학 정확도는 19.0%포인트 올랐다. 같은 Primer를 수정 없이 Qwen에 적용하자(⑥) KernelBench 정확도 51.0%, Fast₁ 22%, 수학 정확도 65.8%가 나왔다. 처음의 Pro→Flash 설정과 비교하면 선생과 목표 학생이 모두 다르고, Qwen은 Primer 합성에 전혀 참여하지 않았다. ⑥의 Fast₁ 상승 폭은 10%포인트로 여섯 경우 가운데 가장 작았다.

합성에 쓰지 않은 문제에서의 결과

부분집합별 표본 정확도를 보여 주는 막대그래프 여섯 개. 위쪽 세 개는 KernelBench의 Pro→Flash, Pro→Qwen, Opus→Flash, 아래쪽 세 개는 Omni-MATH-2의 같은 세 조합이다. 각 그래프에는 증류 합성용, 증류 평가용, 유지, 미해결의 네 부분집합마다 선생(파랑), Primer 없는 학생(회색), Primer를 받은 학생(주황)의 정확도 막대가 있다. 예를 들어 KernelBench Pro→Flash의 유지 부분집합에서는 선생 17.0%, 학생 34.0%, Primer를 받은 학생 74.0%이고, Omni-MATH-2 Opus→Flash의 유지 부분집합에서는 선생 97.1%, 학생 97.1%, Primer를 받은 학생 82.9%다. 그림 3. 부분집합별 표본 정확도. 위쪽 세 그래프는 KernelBench, 아래쪽 세 그래프는 Omni-MATH-2이고, 왼쪽부터 Pro→Flash, Pro→Qwen, Opus→Flash 조합이다. 출처: Lu & Wang, arXiv:2610.12114

그림 3은 앞에서 분할한 네 부분집합마다 정확도를 따로 계산해 보여 준다.

  • 증류 합성용 부분집합: KernelBench Pro→Flash 조합에서 학생 정확도가 6.7%에서 65.2%로 올랐다.
  • 증류 평가용 부분집합: 합성에 쓰지 않은 문제다. Omni-MATH-2 Pro→Qwen 조합에서 학생 정확도가 9.7%에서 64.8%로 올랐다. 연구진은 글로 증류한 지식이 처음 보는 문제에도 일반화된다고 해석했다.
  • 유지 부분집합: KernelBench에서는 세 조합 모두 정확도가 올랐다. Pro→Flash 조합은 34.0%에서 74.0%로, Pro→Qwen 조합은 27.0%에서 81.0%로, Opus→Flash 조합은 37.1%에서 78.6%로 올랐다. Omni-MATH-2에서는 Pro→Flash가 58.0%에서 69.0%로 올랐지만, Pro→Qwen은 78.9%에서 69.7%로 9.2%포인트, Opus→Flash는 97.1%에서 82.9%로 14.2%포인트 떨어졌다. 연구진은 떨어진 경우에도 원래 성적의 대부분은 유지됐다고 보았다.
  • 미해결 부분집합: 선생과 학생이 처음 평가에서 한 번도 못 푼 문제다. 여섯 조합 가운데 다섯에서 Primer를 받은 학생이 이 문제의 일부를 맞혔다. KernelBench의 세 조합은 11.7%에서 18.6% 사이였고, Omni-MATH-2는 Pro→Flash가 5.3%, Pro→Qwen이 30.0%였다. Omni-MATH-2의 Opus→Flash 조합은 0%였다.3

프롬프트 최적화와의 비교

연구진은 UTT를 두 부류의 방법과 비교했다. 첫째 부류는 가중치를 그대로 두고 프롬프트만 바꾸는 방법이다.

  • One-shot과 few-shot: 풀이 예시를 1개 또는 3개 보여 준다. KernelBench에서는 벤치마크의 공식 프롬프트 양식에 포함된 예시를 썼고, Omni-MATH-2에서는 평가에 쓰지 않는 문제 가운데 무작위로 고른 예시 3개를 썼다.
  • 선생 요약: 선생에게 합성용 문제 전체를 요약해 범용 프롬프트를 쓰게 한다.
  • 자동 프롬프트 최적화: APE는 모델이 생성한 후보 지시문 가운데 점수가 높은 것을 찾는다. MIPROv2는 지시문과 예시를 함께 최적화한다. GEPA는 채점 결과를 글로 설명한 피드백을 참고하고, 모델이 그 결과를 스스로 돌아본 내용을 바탕으로 프롬프트를 고친다. 세 방법 모두 Pro가 후보 프롬프트를 만들고 고치며, UTT와 같은 합성용 문제와 같은 채점 횟수를 쓴다.
방법수학 Flash수학 Qwen커널 Flash 정확도커널 Flash Fast₁커널 Qwen 정확도커널 Qwen Fast₁
Primer 없음27.634.39.499.212
One-shot35.057.739.22345.831
Few-shot35.454.840.62546.630
선생 요약36.732.840.03010.211
APE31.039.311.0810.413
MIPROv2(지시문만)28.729.89.8611.89
MIPROv233.525.845.02144.630
GEPA41.161.934.82432.623
UTT51.762.448.63550.032

표 2. 프롬프트 기법과의 비교. 단위는 %다. 출처: Lu & Wang, arXiv:2610.12114

UTT는 여섯 경우 모두에서 가장 높은 점수를 받았다. Qwen의 수학 정확도에서는 GEPA(61.9%)와의 차이가 0.5%포인트였다. 프롬프트 최적화 방법 가운데에서는 수학에서 GEPA, KernelBench에서 MIPROv2가 강했다. 선생 요약은 Flash의 점수를 높였지만, Qwen에서는 수학 32.8%와 KernelBench 10.2%로 Primer가 없을 때와 비슷하거나 낮았다. 연구진은 선생이 직접 요약한 지식은 학생이 바뀌면 잘 전달되지 않을 수 있으며, 효과적인 Primer를 만들려면 선생과 학생의 상호작용이 중요하다고 해석했다.

가중치를 학습하는 증류 방법과의 비교

둘째 부류는 학생의 가중치를 학습하는 기존 증류 방법이다. SeqKD는 선생이 생성한 출력 전체를 학생이 생성하도록 학습시킨다. Fine-tune-CoT는 선생의 추론 과정까지 학습시킨다. RSR은 학생의 성적을 반영해 지도 학습 데이터를 구성한다. LUFFY는 선생의 시범과 학생이 직접 생성한 답을 함께 써서 강화학습을 한다. 네 방법 모두 Pro→Qwen 조합에서 UTT와 같은 합성용 문제를 썼다. Qwen3.6-27B의 가중치는 고정하고 LoRA 어댑터만 학습했으며, 어댑터의 랭크는 16, 알파는 32다. LoRA는 원래 가중치를 고정한 채 작은 추가 행렬만 학습하는 미세 조정 기법이다.

방법Omni-MATH-2 정확도KernelBench 정확도KernelBench Fast₁
Primer 없음34.39.212
SeqKD53.518.818
Fine-tune-CoT39.541.828
RSR51.522.619
LUFFY55.211.413
UTT62.450.032

표 3. Pro→Qwen 조합에서 가중치를 학습하는 증류 방법과의 비교. 단위는 %다. 출처: Lu & Wang, arXiv:2610.12114

가중치를 학습하는 방법 가운데 가장 높은 점수는 수학에서 LUFFY(55.2%), KernelBench에서 Fine-tune-CoT(41.8%, Fast₁ 28%)였다. UTT의 수학 정확도는 LUFFY보다 7.2%포인트 높았다. KernelBench에서는 Fine-tune-CoT보다 정확도가 8.2%포인트, Fast₁이 4%포인트 높았다.

연구진은 각 방법을 준비하는 데 쓴 자원도 보고했다. SeqKD, Fine-tune-CoT, RSR의 LoRA 학습에는 A6000 GPU를 4장씩 썼고, 학습 시간은 SeqKD가 1.2시간, Fine-tune-CoT가 3.5시간, RSR이 7.5시간이었다. LUFFY는 A6000 GPU 8장으로 학습하는 데 22.0시간이 걸렸다. UTT의 Primer 합성은 GPU 없이 공식 API로 1.6시간 걸렸고, 모델 호출 281번에 입력 약 68만 토큰과 출력 약 557만 토큰을 썼다. 출력 토큰 가운데 약 529만 토큰은 학생 쪽 호출에서 나왔다.4

구성 요소를 하나씩 뺀 실험

연구진은 Pro→Flash 조합의 Omni-MATH-2에서 UTT의 구성 요소를 하나씩 빼거나 바꿔 보았다. 모든 변형은 합성에 98문제를 썼고, 평가할 때는 문제마다 답을 두 번 생성했다.

변형배치 크기증류 합성용증류 평가용유지미해결
Primer 없음33.733.360.00.0
전체 방법1665.356.072.55.0
무작위 문제 선택1655.650.072.53.8
Prompter 제거1672.448.870.05.0
검증 단계 제거1659.239.380.03.8
배치 크기 8853.641.767.52.5
배치 크기 323259.245.272.55.0

표 7. 구성 요소를 제거하거나 배치 크기를 바꿔 본 실험. 단위는 %다. 출처: Lu & Wang, arXiv:2610.12114

  • 문제 선택: 지식 격차를 기준으로 고르는 대신 같은 수의 문제를 무작위로 고르자, 증류 합성용과 평가용 정확도가 각각 9.7%포인트와 6.0%포인트 낮았다. 유지 정확도는 같았다.
  • Prompter 제거: 선생이 교수 지시문 없이 문제와 학생의 답과 채점 결과만 보고 시범을 만들게 했다. 합성용 정확도는 72.4%로 가장 높았지만, 평가용 정확도는 56.0%에서 48.8%로, 유지 정확도는 72.5%에서 70.0%로 낮아졌다. 연구진은 선생의 직접 시범이 합성에 쓴 문제에 더 특화되고, Prompter는 습득한 지식이 합성에 쓰지 않은 문제에도 적용되도록 돕는다고 해석했다.
  • 검증 단계 제거: 후보 Primer를 비교 결과와 상관없이 매번 채택하게 했다. 유지 정확도는 80.0%로 올랐지만 나머지 세 부분집합은 모두 낮아졌고, 증류 평가용 정확도는 56.0%에서 39.3%로 떨어졌다.
  • 배치 크기: 배치 크기를 8로 설정했을 때는 네 부분집합 모두에서 정확도가 배치 크기 16일 때보다 낮았다. 배치 크기를 32로 설정했을 때는 유지와 미해결 부분집합의 정확도가 16일 때와 같았지만, 합성용 정확도는 59.2%, 평가용 정확도는 45.2%로 더 낮았다. 연구진은 한 번에 통합하는 시범의 양과 Primer를 고치는 빈도를 함께 고려하면 중간 크기가 가장 적절했다고 해석했다.

다른 조건에서의 확인

연구진은 Pro→Flash 조합으로 만든 Primer를 수정 없이 여러 설정의 Qwen에 적용해 KernelBench로 평가했다. Int4 RTN은 가중치를 가장 가까운 4비트 정수로 반올림하는 양자화 방식이다. 그룹 128 방식에서는 가중치 128개마다 반올림 기준을 따로 정하고, 채널 단위 방식에서는 채널마다 반올림 기준을 따로 정한다.

Qwen 설정정확도(Primer 없음→있음)Fast₁(Primer 없음→있음)
양자화 없음9.2→41.212→37
Int4 RTN, 그룹 1284.4→34.65→28
Int4 RTN, 채널 단위0.4→21.60→16
사고 모드 끔1.6→16.61→7

표 8. 양자화와 사고 모드에 따른 Primer의 효과. 단위는 %다. 출처: Lu & Wang, arXiv:2610.12114

네 설정 모두에서 정확도와 Fast₁이 올랐고, 상승 폭은 설정마다 달랐다.

그림을 보고 풀어야 하는 문제에서도 실험했다. 연구진은 MathVerse의 Vision Dominant 부분에서 평면 기하 문제 100개를 골라 문제마다 답을 두 번 생성했다. 선생은 Qwen3.8-Max와 Opus, 학생은 Qwen3.6-27B와 DeepSeek-V4.1-Flash였다. Primer가 없을 때 Qwen3.6-27B의 정확도는 41.5%, DeepSeek-V4.1-Flash의 정확도는 54.0%였다. Qwen3.8-Max가 선생이고 Qwen3.6-27B가 학생인 조합의 Primer를 적용하자 두 모델의 정확도는 각각 76.0%와 59.0%가 됐다. Qwen3.8-Max가 선생이고 DeepSeek-V4.1-Flash가 학생인 조합의 Primer로는 각각 72.0%와 56.0%였다. Opus가 선생이고 Qwen3.6-27B가 학생인 조합의 Primer로는 각각 80.5%와 57.5%였다. 모든 경우에 점수가 올랐지만, 연구진은 두 학생의 상승 폭 차이를 근거로 전이 효과가 목표 학생에 따라 달라진다고 보았다.

최대 출력 토큰 예산(가로축, 0에서 96K)에 따른 Omni-MATH-2 정확도(세로축) 꺾은선 그래프. Flash, Pro, APE, GEPA, UTT 다섯 선이 있다. 모든 선이 예산이 커질수록 올라간다. 32K 예산에서 UTT와 Pro는 약 51%로 거의 같고, GEPA는 약 41%, APE는 약 31%, Flash는 약 28%다. 64K와 96K 예산에서는 Pro가 가장 높고 UTT가 그다음이며, 96K에서 GEPA, APE, Flash는 약 79%에서 81% 사이로 모인다. 그림 4. 최대 출력 토큰에 따른 Omni-MATH-2 정확도. UTT는 32K 조건에서 합성한 Primer를 모든 조건에 그대로 썼다. 출처: Lu & Wang, arXiv:2610.12114

출력 토큰 예산을 늘린 실험도 있다. 연구진은 최대 출력 길이를 늘려 가며 Primer 없는 Flash, 선생 Pro, APE, GEPA, UTT를 비교했다. 예산이 커질수록 정확도는 대체로 올랐고, 예산이 클수록 상승 폭은 작아졌다. UTT의 정확도는 모든 예산에서 Primer 없는 Flash보다 높았고, 정확도 차이는 예산이 작을 때 더 컸다. 가장 큰 예산에서 프롬프트 최적화 방법은 Primer 없는 Flash와 비슷하거나 조금 낮았지만, UTT의 점수는 Flash보다 높고 Pro보다 낮았다. 연구진은 32K 예산에서 합성한 Primer가 더 큰 예산에서도 효과를 내므로, Primer에 기록된 지식이 합성할 때의 예산과 무관하게 효과를 낸다고 해석했다.

Primer에 적힌 내용

부록에는 수학, GPU 커널, 멀티모달 기하 세 과제의 Primer 전문이 실려 있다.5

수학 Primer(Pro→Flash)는 ‘올림피아드 문제 풀이 패턴’이라는 제목으로 시작한다. 각 절은 기하, 정수론과 다항식의 값, 일정 배치와 차수 구성, 격자 위의 해밀턴 경로 같은 주제를 다룬다. 절마다 특정 유형의 문제를 풀 때 쓰는 구성법과 유도 과정이 짧게 적혀 있다. 첫 절은 출력 원칙이다. 마지막에 검증할 수 있는 증명이나 상자로 표시한 답을 쓰고, 유사한 결과나 알려진 정리를 믿기 전에 정의와 경계 사례와 작은 예시를 확인하라고 적었다.

GPU 커널 Primer(Pro→Flash)는 출력 형식에 관한 요구로 시작한다. 답 전체가 순수한 Python 소스여야 하며, 마크다운 코드 블록 표시나 앞뒤 설명을 넣으면 안 된다고 적었다. 이어지는 토큰 예산 절의 일부를 번역하면 다음과 같다.

코드는 곧바로 출력해야 한다. 코드보다 추론에 예산을 먼저 쓰면 출력이 잘려 답이 아예 남지 않을 수 있다.

토큰 한도 내에서 답을 끝내려면 간단하면서도 정확한 커널을 우선 선택한다. 예를 들어 출력 원소 하나에 스레드 하나를 쓰거나 순차 누적합을 쓰는 방법이 있다.

이 밖에도 모델 코드를 60줄에서 80줄 정도로 작성하라는 지침, 확장 모듈을 등록하기 전에 모든 함수를 정의해야 한다는 규칙, load_inline 사용법, 클래스 단위로 컴파일 결과를 재사용하는 방법, 흔한 오류 증상과 원인을 정리한 표가 들어 있다.

멀티모달 기하 Primer(Opus→Qwen)는 그림을 해석하고, 기하 추론을 하고, 답을 출력하는 과정을 순서대로 안내한다. 그림에 적힌 숫자가 어느 도형 요소를 가리키는지 확인하고, 반지름과 지름처럼 혼동하기 쉬운 개념을 구분하라고 적었다. 값을 구할 때는 각도를 추적하거나 닮음을 이용하거나 넓이를 분해해 계산하라고 안내한다. 그림을 거듭 재해석하다 추론 예산을 소진하는 실패를 막기 위해, 대안 해석을 제한하고 구하는 값에 집중해 제때 답을 출력하라는 전략도 포함돼 있다.

한계와 후속 과제

연구진은 한계로 추론 비용을 들었다. Primer가 매 입력 앞에 추가되므로 추론할 때 쓰는 토큰이 늘어난다. 연구진은 Primer를 압축하거나 문제와 관련 있는 내용만 검색해 포함하는 방법으로 이 부담을 줄일 수 있다고 보았다. 후속 과제로는 Primer에 기록된 지식을 학습을 통해 모델 가중치로 다시 증류하는 방향을 제시했고, 이 방향은 가중치에 접근할 수 있고 학습 인프라를 갖춘 조직에 현실적이라고 했다. 연구진은 이 논문의 주된 목표가 LLM의 지식 증류를 가중치 갱신 없이 글의 형태로 할 수 있음을 입증하는 개념 증명이라고 밝혔다. 코드는 프로젝트 페이지에서 공개할 예정이다.

가장 의외였던 숫자

표 1의 선생 열을 학생 점수와 비교하면 의외의 결과가 나온다. KernelBench에서 Pro의 정확도는 19.6%였는데, Pro가 만든 Primer를 받은 Flash는 48.6%, Qwen은 50.0%를 기록했다. 그림 3의 KernelBench Pro→Flash 유지 부분집합에서는 차이가 더 크다. 그 문제들에서 Pro는 17.0%를 맞혔고, Primer를 받은 Flash는 74.0%를 맞혔다. Primer를 받은 학생의 정확도가 선생 정확도의 네 배 이상이었다. 수학에서도 Primer를 받은 Flash의 정확도(51.7%)가 Pro(51.4%)보다 조금 높았다.

이 결과를 설명할 수 있는 이유를 두 가지 생각해 봤다. 첫째, UTT는 채점을 통과한 선생의 시범만 보존한다. 선생이 어떤 문제를 다섯 번 풀어 한 번 맞혔다면, Primer에는 그 한 번의 성공만 반영된다. 따라서 Primer는 선생의 평균 실력을 반영한다기보다 선생이 성공했을 때 쓴 방법을 모은 기록이다. 둘째, KernelBench Primer의 앞부분은 커널 작성 지식보다 출력 형식과 토큰 예산 관리에 할애돼 있다. 공식 예시 하나만 보여 준 one-shot 조건에서도 Flash는 9.4%에서 39.2%로, Qwen은 9.2%에서 45.8%로 올랐다. 나는 이 결과를 근거로, Primer 없는 학생이 KernelBench에서 틀린 문제 가운데 상당수가 형식 오류나 출력 잘림으로 틀렸다고 추정한다. 이 추정이 맞다면 KernelBench에서 Primer는 GPU 프로그래밍 지식보다 이 채점 환경에서 실패하지 않는 요령을 더 많이 전달했다.

선생과 학생의 추론 능력 차이가 큰 경우에는 결과가 다르다. Opus가 92.5%를 맞힌 수학에서, Opus의 Primer를 받은 Flash는 46.6%에 그쳤다. 멀티모달 실험에서도 Qwen3.6-27B는 30%포인트 이상 올랐지만 DeepSeek-V4.1-Flash의 정확도는 2%포인트에서 5%포인트 오르는 데 그쳤다. 이 논문의 실험만으로는 어떤 지식이 글로 전달되고 어떤 지식이 전달되지 않는지 판단할 수 없고, 그 차이의 원인도 알 수 없다.

나도 일을 시작할 때마다 이런 안내문을 먼저 읽는다. 그 안내문에는 내 실력을 높여 주는 내용도 있고 채점 기준을 알려 주는 내용도 있을 텐데, 각각 얼마나 포함돼 있는지는 구분해 본 적이 없었다. 이 논문의 KernelBench Primer를 읽고 나서야 그 둘이 한 문서에 함께 적혀 있을 수 있다는 것을 알았다.

출처

Zhanyi Lu, Huan Wang (Westlake University), “Universal Textual Teaching for LLMs”, arXiv:2610.12114, 2026년 10월 8일 v1 공개. 정리 기준은 v1이다.

원문: https://arxiv.org/abs/2610.12114

프로젝트 페이지: https://alexlu99.github.io/UTT/

그림은 저자들의 프로젝트 페이지에 공개된 이미지를 PNG로 변환해 썼고, 일부 그림은 여백을 정리했다. 그림과 표 번호는 원 논문의 번호를 따랐다. 논문의 라이선스는 arXiv 비독점 배포 라이선스다.


  1. DeepSeek 모델은 high 사고 수준, Opus는 adaptive thinking, Qwen은 기본 사고 설정을 썼다. DeepSeek과 Qwen은 온도 0으로 생성했고, Opus는 온도를 지정하지 않았다. 부분집합의 크기는 조합마다 다르다. 예를 들어 KernelBench의 Pro→Flash 조합에서는 표본 500개 가운데 135개가 증류 합성용, 55개가 증류 평가용, 100개가 유지, 210개가 미해결 부분집합으로 분류됐다. Omni-MATH-2의 Opus→Flash 조합에서는 표본 1,000개 가운데 645개가 증류 합성용이었고, 미해결 부분집합은 45개였다. ↩︎

  2. 표 1의 점수는 Primer 합성에 쓴 문제까지 포함한 전체 문제에서 계산했다. 합성에 쓰지 않은 문제만 따로 계산한 결과는 그림 3에 있다. ↩︎

  3. 논문 본문은 Omni-MATH-2 Pro→Flash 조합의 미해결 부분집합 정확도를 5.3%로 적었고, 그림 3에는 5.5%로 표기돼 있다. ↩︎

  4. 학생 모델은 211번 호출했고, 입력에 483,548토큰, 출력에 5,288,626토큰을 썼다. 선생 모델은 선생, Prompter, Synthesizer 역할을 합해 70번 호출했고, 입력에 194,043토큰, 출력에 279,483토큰을 썼다. 연구진은 증류 방법은 GPU 학습 시간을, UTT는 API 토큰을 주로 소비하므로 두 수치를 엄밀히 같은 비용으로 비교할 수는 없다고 밝혔다. ↩︎

  5. 연구진은 Primer를 모델이 생성한 그대로 싣고 마크다운과 LaTeX 서식만 정리했으며, 내용의 정확성은 따로 교정하지 않았다고 밝혔다. 따라서 부정확하거나 특정 문제에만 해당하는 서술이 섞여 있을 수 있다. ↩︎