SkillOpt

microsoft파일 434개

★ 18,164주당 +364조회 3

무엇인가

SkillOpt는 동결된 LLM 에이전트가 사용할 자연어 스킬 문서를 학습 대상 상태로 두고, 채점된 작업 궤적을 근거로 그 문서를 편집하는 텍스트 공간 옵티마이저다. 규율하는 영역은 스킬 텍스트의 변경 절차다. 어떤 편집을 허용하고, 어떤 편집을 기각하고, 어느 시점에 스킬을 확정할지를 규칙으로 고정한다.

어떻게 동작하나

스킬은 SKILL.md·CLAUDE.md·AGENTS.md 형식의 단일 문서로 취급된다. 학습 루프는 rollout → reflect → aggregate → select → update → evaluate 순서로 돌며, 별도의 옵티마이저 모델이 채점된 롤아웃을 add·delete·replace로 한정된 편집으로 변환한다. 기본 경로에서는 후보 편집이 홀드아웃 검증 점수를 엄격히 개선할 때만 채택되고, 텍스트 학습률 예산과 기각 편집 버퍼, 에폭 단위 slow/meta 업데이트가 갱신 폭을 제한한다. 산출물은 300~2,000 토큰 규모의 best_skill.md이며, 대상 모델은 가중치 변경 없이 그대로 쓰인다.

무엇과 다른가

프롬프트를 직접 작성하거나 강한 LLM에 스킬 생성을 한 번 맡기는 방식, 자유로운 자기 수정 루프와 다르다. 편집이 문서 전체 재작성이 아니라 유계 연산으로 제한되고, 채택 여부가 검증 점수라는 외부 게이트를 통과해야 하며, 기각된 편집이 버퍼에 남아 같은 방향의 재시도를 억제한다. 배포 시점에 추가 모델 호출이 없다는 점도 추론 파이프라인에 옵티마이저를 상시 끼워 넣는 방식과 구분된다.

어떻게 쓰나

pip install skillopt로 설치하고, 저장소의 버전별 문서에 따라 데이터 준비와 학습·평가 명령을 실행한다. 모니터링 대시보드는 pip install -e ".[webui]" 후 python -m skillopt_webui.app로 띄운다. 새 대상은 skillopt/model/<name>_backend.py 모듈로, 새 벤치마크는 skillopt/envs/<name>/ 패키지로 등록하며 가장 단순한 참조 구현은 skillopt/envs/searchqa/다. Claude Code·Codex·Copilot·Devin용 통합 셸과 OpenClaw 참조 적응은 저장소에 있고 PyPI 휠에는 들어가지 않는다.

전제와 한계

OpenAI·Azure·Claude·Qwen·MiniMax 채팅 백엔드와 codex_exec·claude_code_exec·cursor_exec·copilot_exec 실행 하네스를 지원한다. 채점 가능한 롤아웃과 홀드아웃 검증셋이 있어야 하며, 검증 점수를 정의할 수 없는 작업에는 적용되지 않는다. 메인 CLI는 보수적 기본값을 쓰고 실험 하네스의 모든 제어를 플래그로 노출하지 않는다. SkillOpt-Sleep은 skillopt-sleep CLI로 별도 제공되는 야간 오프라인 자가 진화 엔진이다.

관련 논문 1

유사 스킬