모델 가중치는 그대로, ‘기술’만 훈련시키는 SkillOpt의 마법

모델 가중치는 그대로, '기술'만 훈련시키는 SkillOpt의 마법

프롬프트 엔지니어링의 '찍기' 게임을 끝내고, 텍스트 공간의 최적화 시대를 열다

현업에서 AI 에이전트를 구축하다 보면 정말 답답할 때가 많아요. 분명히 프롬프트를 수정했는데, A라는 버그는 잡혔지만 뜬금없이 잘 되던 B 기능이 망가지는 경험, 다들 한 번쯤 있으시죠? 사실 저도 그랬어요. “이렇게 쓰면 더 잘 이해하겠지?” 하며 문구를 고치는 건 공학이라기보다 ‘운 좋게 맞기를 바라는 찍기 게임’에 가까웠거든요.

그런데 마이크로소프트에서 아주 흥미로운 접근법을 내놓았습니다. 바로 ‘SkillOpt’라는 프레임워크인데요. 핵심은 간단합니다. 모델의 가중치(Weights)를 건드리는 파인튜닝 대신, 에이전트가 참고하는 ‘기술 문서(.md)’ 자체를 딥러닝 모델처럼 최적화하겠다는 거예요. 프롬프트를 사람이 일일이 고치는 게 아니라, 시스템이 수학적인 규율을 가지고 ‘훈련’시키는 방식인 셈이죠 [1].

왜 프롬프트 수정만으로는 부족했을까?

우리가 보통 에이전트의 성능을 올리려고 할 때 쓰는 방법은 ‘시행착오’입니다. 하지만 이런 방식은 치명적인 한계가 있어요. 우선, 수정 사항이 정말 성능 향상으로 이어졌는지 보장할 방법이 없거든요. 운 좋게 한두 케이스가 해결됐다고 해서 전체 성능이 올랐다고 믿기는 어렵죠.

마이크로소프트의 연구원 Yifan Yang은 세 가지 반복적인 실패 패턴을 지적했습니다 [1]. 첫째는 ‘스텝 사이즈’ 제어가 안 되어 기술 내용이 엉뚱한 방향으로 표류하는 것, 둘째는 검증 과정이 없어 겉보기에만 그럴싸한 수정안이 실제 성능을 갉아먹는 것, 마지막으로 실패했던 수정안을 기억하지 못해 똑같은 실수를 반복하는 겁니다.

예를 들어, 검증 장치 없이 그냥 다시 쓴(ungated rewrite) 결과, GPT-5.5의 SpreadsheetBench 점수가 41.8점에서 41.1점으로 오히려 떨어지는 일이 발생하기도 했어요 [1]. 결국 우리에게 필요한 건 단순한 ‘수정’이 아니라, 딥러닝의 최적화 알고리즘 같은 ‘통제된 학습 과정’이었던 셈입니다.

SkillOpt: 텍스트를 가중치처럼 다루는 최적화 루프

SkillOpt는 에이전트의 기술 문서(Skill document)를 일종의 ‘외부 상태(External state)’로 취급합니다. 모델은 얼려둔(Frozen) 채로 두고, 이 텍스트 파일만 계속 업데이트하며 최적의 상태를 찾아가는 구조예요 [2].

작동 방식은 딥러닝의 학습 루프를 그대로 옮겨왔다고 보시면 됩니다.

1. 증거 수집(Evidence): 현재 기술 문서를 가지고 작업을 수행하며 성공과 실패 궤적(Trajectory)을 기록합니다. 딥러닝의 ‘포워드 패스(Forward pass)’ 역할을 하죠 [2]. 2. 성찰(Reflection): 별도의 최적화 모델이 이 기록들을 분석해 “어디서 틀렸고, 어떻게 고쳐야 할까?”를 고민합니다. 일종의 ‘언어 수준의 백워드 패스(Backward pass)’입니다 [2]. 3. 제한적 수정(Bounded Edits): 여기서 핵심인 ‘텍스트 학습률(Textual Learning Rate)’ 개념이 등장합니다. 한 번에 너무 많이 바꾸지 않도록 수정 예산(Edit budget)을 둬서, 기존의 유용한 지식이 한꺼번에 날아가는 ‘시맨틱 점프’를 방지합니다 [3]. 4. 검증 게이트(Validation Gate): 제안된 수정안이 실제 ‘보지 못한 데이터(Held-out data)’에서 성능을 올렸을 때만 최종 반영합니다. “아니오”라고 말할 수 있는 엄격한 필터가 성능 향상의 핵심 비결이에요 [3].

이 과정에서 거부된 수정안들은 그냥 버려지지 않고 ‘거부 편집 버퍼(Rejected-edit buffer)’에 저장됩니다. 나중에 최적화 모델이 같은 실수를 하지 않도록 돕는 부정 피드백으로 활용되는 거죠 [4].

압도적인 성능 향상과 놀라운 범용성

결과는 꽤 놀랍습니다. 6개의 벤치마크와 7개의 타겟 모델을 테스트했는데, 모든 설정에서 SkillOpt가 기존 방식보다 뛰어나거나 대등한 성능을 보였어요 [4].

특히 모델 크기와 상관없이 효과가 좋았다는 점이 흥미롭습니다. GPT-5.5 같은 거대 모델은 물론이고, GPT-5.4-nano나 Qwen3.5-4B 같은 작은 모델들에서 상대적으로 더 큰 폭의 성능 향상이 나타났거든요. 예를 들어 GPT-5.4-nano는 DocVQA 벤치마크에서 성능이 거의 두 배로 뛰기도 했습니다 [4]. 작은 모델이 내부에 가지지 못한 ‘절차적 지식’을 콤팩트한 기술 문서가 보완해줬기 때문으로 분석됩니다.

더 대단한 건 이 기술 문서의 ‘이식성’이에요. GPT-5.4에서 최적화한 기술을 GPT-5.4-mini나 nano로 옮겨도 성능 이득이 유지됐고, 심지어 Codex 환경에서 학습시킨 기술을 Claude Code 환경으로 옮겨도 높은 성능 향상을 보였습니다 [3].

실제로 SkillOpt를 적용하면 다음과 같은 형태의 기술 문서가 생성되고 관리됩니다.

# Spreadsheet Analysis Skill (Optimized)

## Procedural Rules
- [Rule 1] Always verify the cell range before applying a SUM function to avoid off-by-one errors. # 검증 단계 추가로 정확도 향상
- [Rule 2] When encountering a #REF! error, trace the dependency chain back to the last valid cell. # 실패 패턴 기반의 복구 로직
- [Rule 3] Format the final output as a markdown table with a summary row at the bottom. # 출력 제약 조건 명시

## Failure Modes to Avoid
- Do not assume the first sheet is always the data source; always list sheets first. # 반복적 실수 방지를 위한 제약

위와 같이 구체적인 절차와 금지 사항이 명시된 .md 파일이 생성됩니다. 이는 모델의 가중치를 바꾸지 않고도 에이전트의 행동 양식을 완전히 바꿀 수 있는 ‘휴대 가능한 지식 자산’이 됩니다.

짚고 넘어갈 한계와 안티패턴

물론 모든 상황에서 만능은 아닙니다. SkillOpt의 성능은 결국 ‘피드백’의 질에 달려 있어요. 만약 정답을 판별할 수 있는 검증기(Verifier)나 스코어링 시스템이 없다면, 검증 게이트가 제대로 작동할 수 없겠죠.

또한, 무조건 많은 수정을 가한다고 좋은 건 아닙니다. 연구 결과에 따르면 SearchQA 같은 일부 벤치마크에서는 성능 향상 폭이 적고 안정적인 반면, SpreadsheetBench 같은 복잡한 작업에서는 ‘유용한 절차를 배우는 것’과 ‘과하게 수정(Over-editing)하는 것’ 사이의 트레이드오프가 분명히 존재했습니다 [4]. 무분별한 자동 수정은 오히려 모델의 일반적인 추론 능력을 해칠 수 있다는 점을 경계해야 합니다.

핵심 요약

  • 프롬프트 엔지니어링의 체계화: 운에 맡기는 수정이 아니라, 딥러닝의 최적화 원리(학습률, 검증, 피드백)를 텍스트 수정에 도입했습니다.
  • 가중치 수정 없는 적응: 모델을 다시 학습시키지 않고도 .md 파일이라는 외부 상태만 업데이트해서 도메인 적응을 구현합니다.
  • 텍스트 학습률의 도입: 한 번에 조금씩 수정하는 ‘제한적 편집’을 통해 성능이 갑자기 곤두박질치는 현상을 막았습니다.
  • 강력한 이식성: 한 모델에서 최적화한 기술 문서를 다른 크기의 모델이나 다른 실행 환경으로 옮겨서 그대로 쓸 수 있습니다.
  • 작은 모델의 구원투수: 모델 자체가 작을수록 외부에서 제공되는 정교한 절차적 지식의 혜택을 더 크게 받습니다.

결국 SkillOpt가 보여준 건, AI 에이전트의 성능을 올리는 길이 반드시 거대한 모델을 학습시키는 것만은 아니라는 점이에요. 정교하게 설계된 ‘절차적 기억’ 하나가 수조 개의 파라미터보다 더 효율적일 수 있다는 사실이 참 인상적입니다. 이제는 프롬프트를 ‘작성’하는 시대를 넘어, 시스템적으로 ‘훈련’시키는 시대로 가고 있네요.


참고 자료 (References)

1. [venturebeat.com] Microsoft’s open-source SkillOpt automatically upgrades AI agent skills without touching model weights — https://venturebeat.com/orchestration/microsofts-open-source-skillopt-automatically-upgrades-ai-agent-skills-without-touching-model-weights 2. [microsoft.github.io] SkillOpt | Executive Strategy for Self-Evolving Agent Skills — https://microsoft.github.io/SkillOpt 3. [kenhuangus.substack.com] Self-Evolving Agent Skills: SkillOpt – by Ken Huang — https://kenhuangus.substack.com/p/self-evolving-agent-skills-skillopt 4. [arxiv.org] SkillOpt: Executive Strategy for Self-Evolving Agent Skills — https://arxiv.org/pdf/2605.23904

관련 글 추천

  • https://infobuza.com/2026/06/17/20260617-ko935l/
  • https://infobuza.com/2026/06/17/20260617-bsrtul/

FAQ

SkillOpt는 기존의 파인튜닝과 어떻게 다른가요?

파인튜닝은 모델의 가중치(Weights)를 직접 수정하지만, SkillOpt는 모델 가중치는 그대로 둔 채 에이전트가 참고하는 '기술 문서(.md)'라는 외부 상태만을 최적화하여 성능을 높입니다.

SkillOpt의 최적화 루프는 어떤 단계로 작동하나요?

증거 수집(성공/실패 궤적 기록), 성찰(최적화 모델의 분석), 제한적 수정(텍스트 학습률을 적용한 수정), 검증 게이트(보지 못한 데이터로 성능 검증 후 반영)의 4단계로 작동합니다.

'텍스트 학습률(Textual Learning Rate)'이란 무엇이며 왜 필요한가요?

한 번에 너무 많은 내용을 바꾸지 않도록 수정 예산(Edit budget)을 두는 개념입니다. 이는 기존의 유용한 지식이 한꺼번에 사라져 성능이 급격히 떨어지는 '시맨틱 점프'를 방지하기 위해 필요합니다.

SkillOpt를 통해 최적화된 기술 문서는 다른 모델에서도 사용할 수 있나요?

네, 이식성이 뛰어납니다. GPT-5.4에서 최적화한 기술을 GPT-5.4-mini나 nano로 옮겨도 성능 이득이 유지되었으며, Codex 환경에서 학습시킨 기술을 Claude Code 환경으로 옮겨도 높은 성능 향상을 보였습니다.

SkillOpt 적용 시 주의해야 할 한계점은 무엇인가요?

성능이 피드백의 질에 의존하므로 정답을 판별할 검증기나 스코어링 시스템이 반드시 필요합니다. 또한, 무분별한 자동 수정은 '과하게 수정(Over-editing)'하는 결과를 초래해 모델의 일반적인 추론 능력을 해칠 수 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다