AI 에이전트에게 어떤 '스킬 문서'를 몇 개나 줘야 잘 작동하는지, 수학적으로 최적해를 보장하며 골라주는 방법
AI 에이전트에게 어떤 '스킬 문서'를 몇 개나 줘야 잘 작동하는지, 수학적으로 최적해를 보장하며 골라주는 방법
Codex나 Claude Code 같은 코딩 에이전트는 작업을 시킬 때 미리 만들어둔 '스킬 문서'(사용법 설명서 같은 것)를 한정된 컨텍스트 창에 넣어주는데, 지금까지는 각 스킬을 개별적으로 관련성 점수 매겨서 상위 몇 개만 넣는 식이라 겹치는 스킬이 토큰만 낭비하거나 오히려 성능을 떨어뜨리는 문제가 있었다. 연구팀은 스킬 선택을 '토큰 예산 안에서 필요한 능력을 최대한 커버하되 겹치는 건 줄이고 문맥 비용은 빼는' 최적화 문제로 정식화하고, 이를 다항시간 안에 푸는 Best Prefix Selection(BPS) 알고리즘을 제시해 이론적으로 증명된 근사 보장을 처음 확보했다. 오염 통제된 코딩 벤치마크 실험에서 BPS는 성공률 0.73을 기록해 기존 스킬 라우터·검색기·에이전트 자체 선택(0.20~0.52)을 앞섰고, 토큰도 가장 강력한 기존 라우터보다 28% 적게 썼다.
METAL MEDIA 해설 도표
AI 에이전트에게 어떤 '스킬 문서'를 몇 개나 줘야 잘 작동하는지, 수학적으로 최적해를 보장하며 골라주는 방법
- 01코딩 에이전트가 작업을 풀 때 라이브러리에서 필요한 스킬 문서를 골라 LLM의 제한된 컨텍스트 창에 넣는데, 기존 방식은 스킬을 하나씩 독립적으로 점수 매겨 상위 k개나 그리디 방식으로 채워 넣어 품질이나 비용을 보장하지 못했다
- 02연구팀은 각 스킬이 잠재적인 '능력(capability)'을 얼마나 공급하는지, 쿼리가 어떤 능력을 요구하는지를 모델링해 겹치는 능력은 체감 효과가 줄고 서로 다른 능력을 보완하면 이득이 커지는 구조로 '이득에서 토큰 비용을 뺀' 목적함수를 만들었다
- 03이 목적함수를 정해진 토큰 예산 안에서 최대화하는 문제로 정식화하고, 후보 조합을 부분적으로만 탐색하면서 밀도(토큰당 이득) 기준으로 그리디하게 확장한 뒤 지나온 모든 중간 조합 중 최선을 고르는 BPS 알고리즘을 설계했다
- 04이론적으로 이득 측면에서 최적 근사 비율인 (1-1/e)를, 비용 측면에서는 손실 없는 근사(1)를 동시에 만족하는 바이크라이테리아(두 기준) 근사 보장을 다항시간 안에 증명했으며, 이는 이 종류의 문제에서 알려진 것 중 가장 강력한 보장이다
- 05실제 실행 결과만으로 잠재 파라미터를 학습시켜 검증한 결과, 숨겨진 능력-스킬 대응관계를 정확히 복원했고(정확도 0.996), 오염 통제된 BigCodeBench 변형 벤치마크에서 성공률 0.73으로 다른 기존 선택 방법(0.20~0.52)을 모두 앞섰다
무엇을 했나
- 코딩 에이전트가 작업을 풀 때 라이브러리에서 필요한 스킬 문서를 골라 LLM의 제한된 컨텍스트 창에 넣는데, 기존 방식은 스킬을 하나씩 독립적으로 점수 매겨 상위 k개나 그리디 방식으로 채워 넣어 품질이나 비용을 보장하지 못했다
- 연구팀은 각 스킬이 잠재적인 '능력(capability)'을 얼마나 공급하는지, 쿼리가 어떤 능력을 요구하는지를 모델링해 겹치는 능력은 체감 효과가 줄고 서로 다른 능력을 보완하면 이득이 커지는 구조로 '이득에서 토큰 비용을 뺀' 목적함수를 만들었다
- 이 목적함수를 정해진 토큰 예산 안에서 최대화하는 문제로 정식화하고, 후보 조합을 부분적으로만 탐색하면서 밀도(토큰당 이득) 기준으로 그리디하게 확장한 뒤 지나온 모든 중간 조합 중 최선을 고르는 BPS 알고리즘을 설계했다
- 이론적으로 이득 측면에서 최적 근사 비율인 (1-1/e)를, 비용 측면에서는 손실 없는 근사(1)를 동시에 만족하는 바이크라이테리아(두 기준) 근사 보장을 다항시간 안에 증명했으며, 이는 이 종류의 문제에서 알려진 것 중 가장 강력한 보장이다
- 실제 실행 결과만으로 잠재 파라미터를 학습시켜 검증한 결과, 숨겨진 능력-스킬 대응관계를 정확히 복원했고(정확도 0.996), 오염 통제된 BigCodeBench 변형 벤치마크에서 성공률 0.73으로 다른 기존 선택 방법(0.20~0.52)을 모두 앞섰다

| tj | ∈argmaxi∈T∖{t1,⋯,tj−1}G^(i∣{t1,⋯,tj−1}), | (13) | ||
|---|---|---|---|---|
| mj | :=G^(tj∣{t1,⋯,tj−1}),∀j∈[|T|]. |

왜 중요한가
실무에서 AI 에이전트에 붙이는 스킬/도구/문서 라이브러리가 점점 커지면서 어떤 걸 골라 넣을지가 성능과 비용을 동시에 좌우하는 핵심 병목이 되고 있는데, 이 연구는 '그냥 관련성 높은 걸 상위 몇 개 넣기'가 왜 실패하는지 설명하고 처음으로 성능이 보장되는 선택 알고리즘을 제시했다. 에이전트 프레임워크를 만드는 개발자라면 이 원리를 적용해 컨텍스트 낭비를 줄이면서도 성공률을 높일 수 있다.
이 논문의 용어
- 스킬 문서(skill document) · LLM 에이전트에게 특정 작업 수행 방법을 알려주는 재사용 가능한 설명 파일
- 컨텍스트 창(context window) · LLM이 한 번에 읽어들일 수 있는 텍스트(토큰)의 최대 분량
- 서브모듈러 함수(submodular function) · 이미 선택된 항목이 많을수록 새 항목을 추가했을 때 얻는 이득이 점점 줄어드는 성질을 가진 함수
- 바이크라이테리아 근사(bicriteria approximation) · 두 가지 기준(이득과 비용)에 대해 각각 다른 비율로 최적해에 가까움을 보장하는 근사 방식
- 니거색(knapsack) 제약 · 정해진 무게나 비용 한도 안에서 항목을 골라야 하는 배낭 문제 형태의 제약
최신 논문
- AI 코딩 에이전트에게 과학 소프트웨어 수리를 시켜보니, 절반도 제대로 못 고쳤다AI 코딩 에이전트에게 과학 소프트웨어 수리를 시켜보니, 절반도 제대로 못 고쳤다
- 논문 속 시연이 아니라 실제 서비스에 넣을 수 있는 희소 어텐션 만들기논문 속 시연이 아니라 실제 서비스에 넣을 수 있는 희소 어텐션 만들기
- 고객상담 AI 상담원이 규정을 '한 번의 행동'이 아니라 '전체 절차'로 지키게 만드는 방법고객상담 AI 상담원이 규정을 '한 번의 행동'이 아니라 '전체 절차'로 지키게 만드는 방법
- 로봇 팔에게 사람의 시연 없이 새 일 시키기, 말 잘하는 AI가 대신 가르친다로봇 팔에게 사람의 시연 없이 새 일 시키기, 말 잘하는 AI가 대신 가르친다
- 에이전트 학습용 환경을 새로 만드는 대신, 기존 환경에 '패치 부품'을 씌워 그 에이전트의 약점에 맞게 바꾸는 방법에이전트 학습용 환경을 새로 만드는 대신, 기존 환경에 '패치 부품'을 씌워 그 에이전트의 약점에 맞게 바꾸는 방법
- AI 모델을 '소유'하지 못한 조직은 안전 통제도 절반밖에 못 한다AI 모델을 '소유'하지 못한 조직은 안전 통제도 절반밖에 못 한다
- AI가 선생님 모델을 따라 배우다가, 정답에 다가가는 '좋은 생각'까지 억누르는 문제를 잡아낸다AI가 선생님 모델을 따라 배우다가, 정답에 다가가는 '좋은 생각'까지 억누르는 문제를 잡아낸다
- AI가 특정 사람 말투를 흉내내도록 시켜봤더니, 결국 AI 자신의 말투에서 못 벗어난다AI가 특정 사람 말투를 흉내내도록 시켜봤더니, 결국 AI 자신의 말투에서 못 벗어난다
METAL MEDIA 최신 기사
그림 출처: Yu Chen et al., arXiv:2608.19993, cc-by-nc-sa-4.0