에이전트 스킬을 자동으로 만드는 문제를 RL로 푼 논문입니다. 핵심은 스킬 생성을 한 번에 통째로 하는 게 아니라, 증거를 하나씩 읽으면서 스킬을 편집하는 과정으로 쪼개고, 각 편집에 대해 rollback reward를 주는 거예요.

CUHK 연구팀이 만든 Skill-α는 문서→스킬, 경험→스킬 두 설정에서 모두 기존 휴리스틱/파이프라인 방법을 이겼습니다. GPT-4o 기준 CL-Bench +3.3점, tau2-bench +6.7점.

논문: arXiv:2608.01678 코드: github.com/ejhshen/skill-alpha

스킬 생성의 문제

에이전트 스킬은 재사용 가능한 절차 모듈이에요. 모델을 다시 훈련 안 시키고도 에이전트 행동을 바꿀 수 있죠. 근데 좋은 스킬을 자동으로 만드는 건 어렵습니다.

이유는 간단합니다. 스킬 자체에 정답 라벨이 없어요. 수학 문제면 답이 맞는지 틀린지 확인하면 되는데, 스킬은 “이 스킬이 좋은 스킬인가?”를 직접 판정할 수가 없습니다. 결국 에이전트가 그 스킬을 쓰고 잘 동작하는지로 평가해야 하는데, 이건 비용도 크고 신호도 약하죠.

기존 방법은 두 가지가 있었습니다. 문서→스킬(Ctx2Skill, AutoSkill)은 매뉴얼이나 규칙 문서를 압축해서 스킬로 만드는 거고, 경험→스킬(Trace2Skill, SkillX, SkillPro)은 실행 궤적에서 교훈을 뽑아내는 거예요. 둘 다 휴리스틱이나 파이프라인 방식이라, 증거 소스마다 설계를 따로 해야 하고 각 조각이 스킬에 어떤 영향을 주는지 추적하기 어렵습니다.

점진적 편집으로 스킬 만들기

스킬을 한 번에 만들지 않습니다. 초기 스킬 상태 z₀에서 출발해서, 증거를 순차적으로 읽으면서 한 단계씩 편집해요.

각 단계에서 에디터는 현재 스킬과 새 증거를 보고 5가지 행동 중 하나를 선택합니다.

행동설명
Create새로운 규칙이나 절차 추가
Update불완전하거나 부정확한 규칙 수정
Merge겹치는 내용 통합
Prune잘못되거나 과도하게 구체적인 내용 삭제
Noop변경 없음

이러면 스킬 생성이 하나의 의사결정 시퀀스가 됩니다. 각 편집을 개별적으로 평가할 수 있죠.

Skill-α 전체 프레임워크

Rollback reward: 편집 하나의 가치 측정

여기가 핵심입니다. 편집 하나를 평가할 때, 편집 전 스킬과 편집 후 스킬로 같은 질문(anchored query)에 답하게 하고 결과를 비교해요.

  1. 편집 전 스킬 z_{t-1}로 anchored query 실행 → a
  2. 편집 후 스킬 z_t로 같은 query 실행 → a
  3. 검증기(verifier)가 두 답변 채점
  4. 점수 차이가 reward

이렇게 하면 “이 편집이 스킬을 실제로 좋게 만들었는가”를 측정할 수 있습니다. 워커 에이전트 자체 능력이나 문제 난이도 때문에 점수가 올라간 걸 구분할 수 있어요.

이 reward로 GRPO를 돌려서 에디터를 훈련합니다.

결과: 문서→스킬 (CL-Bench)

GPT-4o 워커 기준으로 Skill-α는 CL-Bench 평균 10.38점으로, 가장 강한 베이스라인 대비 +3.3점 향상입니다. 4개 카테고리 중 3개에서 최고 점수를 받았어요.

결과: 경험→스킬 (tau2-bench)

여기서는 격차가 더 큽니다.

방법SpreadsheetBenchAirlineRetailTelecomtau2 평균
No Skill26.0040.0085.0012.5045.83
SkillX31.5075.0085.0035.0065.00
SkillPro20.5060.0087.0045.0064.00
Skill-α31.5080.0085.0045.0070.33

GPT-4o 기준 모든 타우2-벤치 과제에서 최고 또는 공동 최고입니다. 평균 70.33점으로 SkillX(65.00)보다 +5.33점 차입니다.

워커를 바꿔도 효과 유지

GPT-4o로 만든 스킬을 Claude-Sonnet-4.5에 그대로 먹여도 일관된 향상이 나옵니다. 이건 스킬이 특정 워커에 대한 프롬프트 핵이 아니라, 범용적으로 쓸 수 있는 작업 지식이라는 뜻이에요.

Ablation에서 배우는 것

훈련 역학과 액션 분포

Ablation 결과

SFT only(RL 제거)는 점수가 CL-Bench 3.46으로 급락합니다. RL 훈련이 효과의 본체예요.

rollback reward 제거: 직접 검증기 보상으로 바꾸면 3.68. 사실상 SFT-only와 비슷합니다. rollback이 핵심 신호라는 뜻이죠.

Merge/Prune 제거: 생성만 계속하면 중복·충돌이 쌓여서 tau2-bench 평균이 39.17로 떨어집니다. 스킬 관리에 삭제와 통합이 필수예요.

Noop 제거: 매 단계 무조건 편집하면 53.33. 전체 모델(55.83)보다 낮습니다. “지금 스킬이 충분하면 손대지 않는다”는 판단도 학습해야 합니다.

훈련 과정의 액션 분포를 보면 full 모델은 Create가 주력이지만 Update, Merge, Prune, Noop이 다 활성화되어 있어요. rollback reward를 빼면 Noop으로 쏠려버립니다. 신호가 약하니까 안 바꾸는 게 안전하다고 배우는 거죠.

증거 배치 크기가 중요하다

논문의 흥미로운 발견 중 하나는 증거를 한 번에 몇 개씩 보여주는지(batch size)가 순서보다 더 큰 영향을 미친다는 것입니다.

1개/단계는 시야가 너무 좁아서 과적합하고, 8개/단계는 정보가 너무 많아서 편집 초점이 흐려집니다. 4개/단계가 최적이었어요.

순서를 섞거나 뒤집어도 결과 차이는 크지 않습니다. progressive 생성이 특정 순서에 의존하지 않는다는 뜻이에요.

의의

스킬 생성을 학습 문제로 프레이밍한 첫 번째 작업입니다. 기존에는 프롬프트 엔지니어링이나 파이프라인 설계로 스킬을 만들었는데, Skill-α는 하나의 학습된 에디터가 문서든 경험이든 동일하게 처리합니다.

rollback reward의 아이디어는 다른 영역에도 적용 가능합니다. 메모리 편집, 도구 설정 변경, 시스템 프롬프트 수정 등 “편집 전후로 에이전트 행동을 비교할 수 있는” 모든 설정에서 쓸 수 있어요.

더 실습해보고 싶은 분들께