SkillOpt란 무엇인가
쉽게 말하면 SkillOpt는 "에이전트가 일한 기록을 읽고, 잘하는 법을 적어 주는 AI 선생님"입니다.
대부분의 자동 학습 기법이 모델의 내부 가중치(파라미터)를 수정합니다. 이건 일종의 두뇌 수술이라, 학습을 거친 모델은 "왜 잘했는지"를 설명할 수 없습니다. 반면 SkillOpt는 모델을 건드리지 않고 자연어 매뉴얼 한 장만 만듭니다. 매뉴얼이 짧고 사람이 읽을 수 있어, 검증·수정·이동이 모두 쉽습니다.
이 논문에서 비교 대상으로 등장한 기존 방식은 다음과 같습니다.
- GEPA: 프롬프트(질문문)를 직접 다듬는 방식
- TextGrad: 텍스트를 그래디언트처럼 다루며 자동 개선
- EvoSkill: 스킬을 공동 진화적으로 발전시키는 방식
- Trace2Skill: 실제 일한 흔적(궤적)에서 교훈을 추출
어떻게 작동하는가 (3단계)
SkillOpt의 작동 흐름을 따져 보면 크게 세 단계로 쪼갤 수 있습니다.
- 돌려보기: AI 에이전트에게 문제를 풀게 해서 점수가 매겨진 롤아웃(rollout)을 모읍니다. 롤아웃이란 에이전트가 한 문제를 풀면서 행동하고, 본 것, 받은 보상을 전부 묶은 "한 회차 플레이 기록"입니다.
- 제안하기: 별도의 AI(옵티마이저 모델)가 점수가 낮았던 �아웃을 읽고, 매뉴얼에 더할 줄·지울 줄·바� 줄을 추가·삭제·교체 형태로 제안합니다.
- 채택하기: 점수가 확실히 좋아졌을 때만 편집을 받아들이고, 아니면 버립니다. 이렇게 해서 만들어지는 최종 파일이 best_skill.md 한 장입니다.
최종 매뉴얼의 분량은 평가 과제마다 379~1,995 토큰, 평균 약 920 토큰 수준으로 매우 짧습니다. 채택된 편집은 보통 1~4개에 불과합니다.
다른 모델로 옮기면 성적이 어떻게 달라지는가
여기서부터가 핵심입니다. 큰 모델(GPT-5.4)에서 배운 매뉴얼을 작은 모델(GPT-5.4-mini, nano)에 그대로 갖다 붙이면 얼마나 통할까요?
평가 시험지는 SpreadsheetBench와 LiveMath
SpreadsheetBench는 실제 회사 업무에서 나온 엑셀 조작 문제 912개를 모아 둔 시험지입니다. LiveMath는 수학 추론 시험지입니다. 두 종류 모두 "스킬을 얼마나 잘 일반화하는가"를 보는 데 좋습니다.
| 모델 | 시험지 | 원점수 | 직접 학습 | 전이 적용 | 이득 | 보존률 |
|---|---|---|---|---|---|---|
| GPT-5.4-mini | SpreadsheetBench | 36.1 | 47.5 | 45.5 | +9.4 | 82% |
| GPT-5.4-nano | SpreadsheetBench | 23.5 | 42.5 | 26.5 | +3.0 | 16% |
| GPT-5.4-mini | LiveMath | 14.7 | 32.8 | 19.2 | +4.5 | 25% |
| GPT-5.4-nano | LiveMath | 23.2 | 27.2 | 28.8 | +5.6 | 140% |
가장 눈에 띄는 결과 두 가지가 있습니다.
- GPT-5.4-mini의 SpreadsheetBench는 in-domain 이득의 82%를 그대로 유지합니다. 거의 공짜로 재사용할 수 있다는 뜻입니다.
- GPT-5.4-nano의 LiveMath는 전이된 매뉴얼이 직접 학습한 결과보다 높은 점수를 기록합니다. 일부 학습 절차는 모델에 종속되지 않는다는 증거로 연구진이 해석합니다.
다른 도구로 옮기면: 가장 강력한 결과
"다른 도구"란 표현은 흔히 AI 에이전트 하네스(agent harness)라고 부릅니다. 쉽게 말해 LLM(언어 모델) 주위에 도구, 메모리, 샌드박스, 피드백 루프 같은 "뼈대"를 �워 실제로 일을 시키는 실행 환경입니다. AI 에이전트 = 모델 + 하네스라는 식이 업계에서 자주 쓰입니다.
실험에 등장한 두 하네스는 다음과 같습니다.
- Codex: OpenAI의 클라우드 기반 코딩 에이전트. 격리된 샌드박스에 저장소를 불러 자율적으로 코딩합니다.
- Claude Code: Anthropic의 터미널(CLI) 기반 코딩 에이전트. 터미널에서 Claude를 도구 사용형 개발자 어시스턴트로 작동시킵니다.
두 하네스는 서로 다른 도구, 다른 파일 인터페이스, 다른 명령 체계를 노출합니다. 그럼에도 결과는?
| 방향 | 시험지 | 원점수 | 직접 학습 | 전이 적용 | 이득 | 보존률 |
|---|---|---|---|---|---|---|
| Codex → Claude Code | SpreadsheetBench | 22.1 | 80.4 | 81.8 | +59.7 | 102% |
| Claude Code → Codex | SpreadsheetBench | 27.5 | 85.0 | 71.1 | +43.6 | 76% |
| Claude Code → Codex | LiveMath | 35.2 | 78.4 | 48.0 | +12.8 | 30% |
| Codex → Claude Code | LiveMath | 40.8 | 56.5 | 42.4 | +1.6 | 10% |
첫 번째 행이 헤드라인입니다. Codex로 학습한 스킬이 Claude Code에서 22.1을 81.8까지 끌어올렸고, 이는 Claude Code가 스스로 학습해 도달한 80.4보다 약간 더 높습니다. 102%는 "in-domain 이득이 그대로 살아남았다는 뜻"입니다.
반면 LiveMath는 정반대입니다. Codex → Claude Code는 in-domain 이득의 10%만 유지합니다. 여기서 패턴이 보입니다.
SpreadsheetBench의 SpreadsheetBench 규칙 한 줄을 그대로 인용하면 다음과 같습니다.
이런 지침은 어떤 CLI가 파이썬을 실행하든 동일하게 적용되기 때문에 옮겨지는 것입니다.
다른 시험지로 옮기면: 작지만 확실한 이득
OlympiadBench(수학 올림피아드 스타일)에서 배운 매뉴얼을 Omni-MATH에 그대로 붙였습니다.
| 모델 | 원점수 | 전이 적용 | 이득 |
|---|---|---|---|
| GPT-5.4 | 56.6 | 60.3 | +3.7 |
| GPT-5.4-mini | 34.8 | 36.6 | +1.8 |
| GPT-5.4-nano | 38.8 | 40.1 | +1.3 |
여기엔 "직접 학습" 열이 없습니다. Omni-MATH용 in-domain 학습이 따로 보고되지 않았기 때문입니다. 비교는 오직 스킬 미사용 baseline과만 가능합니다. 세 모델 모두 양의 이득이긴 하지만 작은 숫자입니다. 연구진은 "문항과 정답 형식이 달라져도 재사용 가능한 수학 절차가 남았다"고 해석했습니다.
왜 옮겨질 수 있는가 (이식성의 비밀)
왜 작은 매뉴얼 하나가 이렇게 잘 옮겨질까요? 이유는 크게 두 가지입니다.
- 공통 파일 형식: 일반 채팅, Codex, Claude Code 세 실행 모드 모두 동일한 best_skill.md 한 파일을 소비합니다. 도구가 달라도 같은 매뉴얼을 읽을 수 있는 "공통 계약"이 존재하는 셈입니다.
- 절차 중심 내용: 매뉴얼이 적어 두는 내용은 "1) 워크북 구조 먼저 점검, 2) 수식 인식 검증, 3) 정적 값 구체화"처럼 워크플로 단계입니다. 특정 인스턴스가 아니라 절차라서 도구가 달라져도 그대로 통합니다.
또한 모든 변경은 edit_apply_report.json에 단계별로 기록됩니다. 누가 언제 무엇을 바꿨는지 한눈에 추적 가능하므로 컴플라이언스·감사 관점에서도 모델 가중치를 출하하는 것과는 다른 차원의 안전성을 제공합니다.
실무자가 얻을 수 있는 것
이 결과가 실무자에게 던지는 의미는 명확합니다.
- 일회성 학습 비용: 학습 토큰 수는 평가 점수 1점당 0.6M~46.4M 수준입니다. SpreadsheetBench는 점당 0.6M, DocVQA는 46.4M. 비용이 들긴 하지만 측정 가능합니다.
- 추론 시 추가 비용 0: 옵티마이저 모델은 학습 중에만 돌아갑니다. 배포된 매뉴얼은 텍스트 파일이라 추론 시 추가 API 호출이 없습니다.
- 싼 곳에서 학습, 비싼 곳에 배포: 도구 비용이 저렴한 환경(예: 작은 모델)에서 최적화하고, 제품이 있는 곳(예: 큰 모델, 고가용성 하네스)에 그대로 붙일 수 있습니다.
- 검증 가능성: 매뉴얼은 사람이 읽을 수 있어 도메인 전문가가 몇 분 안에 검토·수정할 수 있습니다.
자주 묻는 질문 (FAQ)
Q1. SkillOpt는 모델 가중치를 바꾸나요?
아니요. 모델은 그대로 두고 자연어 매뉴얼 한 장만 만듭니다. 그래서 검수·이동이 쉽습니다.
Q2. 작은 모델에도 큰 모델의 스킬이 그대로 통하나요?
GPT-5.4-mini의 SpreadsheetBench에서 in-domain 이득의 82%가 보존됐습니다. 다만 모든 시험지에서 균일하게 통하는 것은 아닙니다.
Q3. Codex로 만든 매뉴얼을 Claude Code에서도 쓸 수 있나요?
SpreadsheetBench에서는 가능합니다. Codex에서 학습한 매뉴얼이 Claude Code의 점수를 22.1에서 81.8까지 끌어올렸습니다(in-domain 이득의 102% 보존).
Q4. 수학 문제에도 같은 효과가 있나요?
아쉽게도 작습니다. 추론 중심 스킬은 학습 환경에 더 종속적이라 절차적 스킬만큼 잘 옮겨지지 않습니다.
Q5. 다른 회사 모델(예: Qwen)로도 옮길 수 있나요?
아직 검증되지 않았습니다. 실험은 같은 GPT 패밀리 안에서만 수행됐습니다.
Q6. 실제 매뉴얼 파일은 얼마나 큰가요?
379~1,995 토큰이고 평균 약 920 토큰입니다. 편집은 보통 1~4개만 채택됩니다.
핵심 요약 (Key Takeaways)
- SkillOpt는 모델을 고정한 채 자연어 매뉴얼 한 장(best_skill.md)만 만드는 텍스트 공간 옵티마이저입니다.
- 최대 하이라이트는 Codex → Claude Code에서 SpreadsheetBench 점수가 22.1 → 81.8로, in-domain 이득의 102%가 보존된 점입니다.
- 절차적 스킬은 잘 이식되고, 추론 중심 스킬은 학습 환경에 종속적입니다.
- 배포 아티팩트는 사람이 읽을 수 있는 짧은 텍스트 파일이라 검증·감사·수정이 쉽습니다.
- 검증 범위는 "하나의 GPT 패밀리 + 축당 두 시험지"에 국한되므로 일반화에는 주의가 필요합니다.