인공지능/논문 리뷰 or 진행

Reinforcement Learning for Self-Improving Agent with Skill Library

이게될까 2026. 8. 6. 21:13
728x90
728x90

https://aclanthology.org/2026.acl-long.69/

 

Reinforcement Learning for Self-Improving Agent with Skill Library

Jiongxiao Wang, Qiaojing Yan, Yawei Wang, Yijun Tian, Soumya Smruti Mishra, Zhichao Xu, Megha Gandhi, Panpan Xu, Lin Lee Cheong. Proceedings of the 64th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). 2026.

aclanthology.org

 

이번 acl 2026 long으로 뽑힌 논문이네요 . 

RL이 특정 환경에서 높은 성능을 얻을 순 있지만 새로운 작업을 수행하면서 얻은 경험을 다음 작업에 지속적으로 활용하는 능력은 부족함 

기존 스킬 library 연구는 성공한 경로를 저장하여 이후 작업에 재사용하지만 트롬프트 의존적이며, 성공만 최적화하고, 생성자가 장기적인 크리딧을 할당하기 어렵다. 

=> 작업 성공하는 것을 넘어 미래 작업에 재사용할 수 있는 좋은 스킬을 생성하고 활용하도록 어떻게 RL할지. 

Expert trajectory 생성
        ↓
Skill Library Agent 형식으로 SFT
        ↓
유사한 두 task를 하나의 task chain으로 구성
        ↓
Task 1 수행 → skill 생성 및 저장
        ↓
Task 2 수행 → Task 1의 skill 재사용
        ↓
task 성공 + skill 생성/사용을 함께 보상
        ↓
SAGE 기반 GRPO 업데이트

일반적인 코드 에이전트는 여러 API를 직접 순차 호출 But Skill Library Agent는 여러 API를 조합한 재사용 가능한 함수를 정의한 뒤 실행함. 

Agent는 각 task에서 기존 스킬 사용, 스킬 생성, 스킬 업데이터, 스킬 저장을 진행할 수 있음. 

SAGE: Skill Augmented GRPO for self-Evolution

1. Sequential Rollout 
유사한 두 task를 하나의 체인으로 묶고 순차 실행하여 첫 번째에서 함수(스킬)을 만들고, 그걸 두번째 테스크에서 그대로 활용할 수 있음 

2. Skill-integrated Reward
각 Task에서 보상을 받으면 이를 이용해 가중합 보상을 주는데, 단순 보상을 주는 것이 아닌 task1에서 만든 스킬을 task2에서 사용할 때 추가 보상을 줌 

 

Test환경은 Appworld로 에이전트가 API 문서를 읽고 코드를 실행하여 실제적인 디지털 작업을 수행하는 벤치마크다.

TSC - 개별 task를 성공적으로 완료한 비율 
SGC - Scenatio 내 세 task를 모두 성공한 비율 

GRPO대비 높은 성공율을 보이며 단일 task성능보다 유사 task 사이의 skill transfer가 개선되었음을 보인다.  

BASE 모델은 스킬을 많이 생성하지만 실제 성공률이 낮고, SFT는 생성수는 줄지만 성공률이 개선되며 SAGE는 Skill 성공률과 성공적인 skill 사용률을 모두 크게 향상시킴 

 

연구 문제 기존 RL 기반 LLM 에이전트는 학습 환경에서는 성능이 향상되지만, 배포 후 새로운 작업에서 얻은 경험을 지속적으로 축적하고 재사용하는 능력이 부족하다.
기존 skill library 방법도 대부분 프롬프트에 의존해 skill을 생성·사용하므로, 오픈소스 모델에서는 형식 준수와 skill 품질이 불안정하다.
단순히 개별 task 성공률을 높이는 RL만으로는 지속적으로 발전하는 agent를 만들기 어렵다.
에이전트가 경험을 실행 가능한 지식으로 변환하고, 이후 task에서 재사용하도록 학습해야 한다.
핵심 질문 “현재 task를 해결하는 것뿐 아니라, 미래의 유사 task에도 유용한 skill을 생성하고 사용하는 행동을 어떻게 RL로 학습할 것인가?” 이 논문의 초점은 일반적인 task reward가 아니라, skill의 미래 효용에 대한 credit assignment이다.
제안 방법 SAGE: Skill Augmented GRPO for self-Evolution를 제안한다.
기존 GRPO에 Sequential RolloutSkill-integrated Reward를 결합한다.
SAGE의 핵심은 skill library를 단순한 외부 memory로 붙이는 것이 아니라, skill 생성과 재사용 자체를 policy optimization의 대상으로 포함하는 것이다.
Skill의 형태 Skill은 자연어 요약이 아니라 여러 API와 프로그램 로직을 묶은 실행 가능한 Python 함수이다.
예를 들어 로그인, 연락처 검색, 메시지 전송 과정을 하나의 함수로 정의하고 저장한다.
실행 가능한 함수는 여러 primitive API 호출을 하나의 고수준 연산으로 압축한다.
따라서 정확도 향상뿐 아니라 interaction step과 생성 token을 줄일 수 있다.
Skill Library Agent Agent는 ① 기존 skill 사용, ② 새로운 skill 함수 생성, ③ 실패한 skill 수정, ④ 성공적으로 실행된 skill 저장을 수행한다.
필요한 경우 단일 API를 직접 호출할 수도 있다.
기존 방식처럼 task 종료 후 별도로 skill을 추출하지 않고, task를 해결하기 위해 생성한 코드 자체를 skill로 저장한다.
Task solving과 skill generation의 출력 형식을 통합한 것이 특징이다.
Sequential Rollout 하나의 task를 독립적으로 rollout하지 않고, 동일 scenario의 유사한 두 task (q_1,q_2)를 순차적으로 수행한다.
첫 task에서 생성한 skill은 library에 저장되어 두 번째 task에서 사용할 수 있다.
첫 task의 skill 품질은 생성 시점에는 알기 어렵다.
후속 task에서 실제로 재사용되어 성공했는지를 통해 skill의 유용성을 검증한다.
즉, 미래 task의 성공 신호를 이전 skill 생성 행동에 전달한다.
Skill Generation Reward 첫 번째 task가 성공하고, 첫 task에서 만든 skill이 두 번째 task에 사용되며, 두 번째 task도 성공한 경우 첫 번째 task에 추가 reward를 준다. 단순히 실행 가능한 함수를 많이 만드는 것이 아니라, 후속 task의 성공에 실제로 기여하는 재사용 가능한 skill을 생성하도록 유도한다.
Skill Usage Reward 두 번째 task가 이전 task에서 생성된 skill을 사용하여 성공한 경우 추가 reward를 준다.
코드를 생성하지 않고 task를 종료하면 (-1) penalty를 부여한다.
무조건 skill을 호출하는 행동을 장려하는 것이 아니다.
적절한 skill을 선택하여 성공적으로 적용한 경우에만 보상한다.
기존 GRPO와 차이 기존 GRPO는 동일 query에 대해 여러 output을 생성하고 task별 outcome reward로 비교한다.
SAGE에서는 rollout마다 첫 task에서 생성된 skill이 다르기 때문에 두 번째 task가 서로 다른 skill library를 조건으로 수행된다.
KL penalty와 reward 표준편차 정규화는 사용하지 않는다.
SAGE는 독립 task 최적화가 아니라 task chain과 변화하는 external memory를 포함한 RL이다.
다만 rollout별 context가 달라져 기존 GRPO보다 gradient variance가 커질 수 있다.
학습 절차 ① Claude 3.5 Sonnet V2로 성공 trajectory를 rejection sampling하여 1,129개 expert example 생성,
② Qwen2.5-32B-Instruct를 Skill Library Agent 형식으로 full-parameter SFT,
③ SFT 모델에 SAGE 적용.
Base model은 prompt만으로 skill 형식을 안정적으로 따르지 못했다.
따라서 SFT는 기본적인 함수 생성·호출 능력을 주입하고, RL은 그 위에서 skill의 품질, 선택, 재사용성을 최적화한다.
왜 SFT가 필요한가 Base Model에서 SAGE를 바로 시작하면 Test-Normal 기준 TGC 40.7, SGC 25.6에 그친다.
Self-Distillation은 66.5/53.6, RL Warm-Up은 68.3/55.3, expert SFT 초기화는 72.0/60.7을 달성한다.
논문의 최고 성능은 RL만으로 자율적인 skill behavior를 발견한 결과라기보다, 강한 expert trajectory로 행동 형식을 초기화한 뒤 RL로 정제한 결과이다.
평가 환경 AppWorld를 사용한다.
총 750개 task, 250개 scenario이며, scenario마다 유사한 task 3개가 존재한다.
Agent는 9개 application과 457개 API를 이용해 실제적인 디지털 작업을 수행한다.
AppWorld의 scenario 구조는 이전 task의 skill을 후속 유사 task에서 검증하는 Sequential Rollout에 적합하다.
다만 task 간 구조적 유사성이 높아 skill transfer에 유리한 benchmark라는 점도 고려해야 한다.
평가 지표 TGC는 개별 task 성공률, SGC는 scenario 내 세 task를 모두 성공한 비율이다.
추가로 평균 interaction step과 평균 생성 token을 측정한다.
SGC는 한 번의 우연한 성공보다 여러 유사 task에서의 일관된 성공을 요구하므로, 논문에서는 skill의 재사용성과 scenario-level self-improvement를 보여주는 핵심 지표로 사용된다.
주요 결과: Test-Normal GRPO without skill library는 TGC 69.2, SGC 51.8, 16.4 steps, 3,613 tokens이다.
SAGE는 TGC 72.0, SGC 60.7, 12.1 steps, 1,475 tokens을 달성한다.
SAGE는 GRPO 대비 SGC를 8.9%p 향상시키면서 interaction step을 약 26%, 생성 token을 약 59% 감소시킨다.
Skill reuse가 정확도와 효율성을 동시에 개선한다.
주요 결과: Test-Challenge GRPO는 TGC 40.7, SGC 26.9, 21.9 steps, 5,211 tokens이다.
SAGE는 TGC 50.1, SGC 32.4, 17.3 steps, 1,807 tokens을 기록한다.
학습에서 보지 못한 application API가 포함된 환경에서도 성능과 효율성이 개선된다.
다만 완전히 새로운 skill을 발명했다기보다, 학습된 skill 생성·조합 방식을 새로운 API 환경에 적용한 결과로 보는 것이 적절하다.
Skill 사용 분석 Base Model은 skill usage rate 0.88, skill 사용 시 성공률 0.31이다.
SFT는 각각 0.63, 0.51이며, SAGE는 1.00, 0.72이다.
실제 사용된 skill 수도 SAGE가 230개로 가장 많다.
Base Model은 skill을 많이 생성하지만 품질과 사용 정확도가 낮다.
SAGE는 library의 크기 자체보다 필요한 skill을 생성하고, 실제로 선택하며, 성공적으로 사용하는 능력을 높인다.
Skill 제거 Ablation SAGE를 skill library 없이 평가하면 TGC는 72.0→71.4로 거의 유지되지만 SGC는 60.7→54.8로 감소하고, step은 12.1→16.0, token은 1,475→1,937로 증가한다. RL을 통해 backbone 자체도 향상되었지만, scenario-level 성능과 효율성 향상의 상당 부분은 평가 시 실제 skill을 축적·재사용하는 과정에서 발생한다.
Reward Ablation Skill-integrated Reward는 TGC/SGC 72.0/60.7, outcome-only는 69.8/55.4, chain-based reward는 67.9/56.6이다. Chain 전체 성공만 보상하는 것보다 어떤 skill이 생성되고 사용되었는지를 명시적으로 추적해야 한다.
즉, 정교한 행동 수준의 reward attribution이 중요하다.
Retrieval 결과 이상적 Same Scenario retrieval은 SGC 60.7이다.
Query N-gram은 60.1, Query Embedding은 59.5, Skill Embedding은 56.0이다.
단순 N-gram이 강한 이유는 AppWorld의 동일 scenario task들이 문장 구조를 공유하기 때문이다.
일반 semantic embedding은 tool의 실행 조건과 API 조합을 충분히 반영하지 못한다.
Skill/tool 전용 retriever가 향후 핵심 과제다.
Task chain 길이 Ablation 2-task chain은 TGC/SGC 72.0/60.7, 3-task chain은 70.6/54.8이며 token도 1,475→2,585로 증가한다. 더 긴 chain이 항상 좋은 것은 아니다.
위치별 reward imbalance, rollout마다 달라지는 skill library로 인한 gradient variance, 순차 실행 비용이 증가한다.
현재 SAGE는 장기 lifelong learning보다 짧은 범위의 skill transfer에 적합하다.
주요 기여 ① Skill library agent를 위한 RL 문제 정식화,
② Sequential Rollout을 통한 미래 효용 기반 credit assignment,
③ skill generation·usage reward 설계,
④ 정확도와 inference 효율성의 동시 개선.
가장 중요한 기여는 새로운 memory 구조 자체보다, “이 skill이 미래 task에도 도움이 되었는가?”를 RL objective에 포함한 학습 방식이다.
한계 AppWorld 단일 benchmark, 주요 평가에서 scenario label 사용, Claude expert data 의존, 중복·충돌·삭제·versioning 등 장기 skill 관리 미해결, 긴 task chain에서 성능 저하. 논문이 보여주는 self-improvement는 모델 파라미터가 배포 중 지속적으로 업데이트되는 continual learning이 아니다.
정확히는 고정된 policy가 실행 가능한 skill memory를 온라인으로 축적하고 재사용하는 memory-level adaptation이다.
최종 메시지 에이전트가 현재 task만 잘 해결하도록 학습하는 것보다, 미래의 유사 task에 재사용할 수 있는 실행 가능한 skill을 만들고 활용하도록 학습하면 성능과 비용을 동시에 개선할 수 있다. SAGE는 후속 task의 성공을 이전 task의 skill 생성 행동에 연결함으로써, 단순한 task solver를 경험을 축적하는 self-improving agent로 확장하려는 시도이다.
728x90