microsoft/SkillOpt
요약
SkillOpt는 모델 가중치를 수정하지 않고도 에이전트의 기술(skills)을 딥러닝 옵티마이저처럼 훈련할 수 있는 프레임워크입니다. SkillOpt-Sleep 기능을 통해 야간 오프라인 자기 진화가 가능하며, Claude Code, Codex, Copilot 등 다양한 코딩 도구와 통합됩니다.
핵심 포인트
- 모델 가중치 변경 없이 에이전트 기술을 최적화 가능
- SkillOpt-Sleep을 통한 야간 오프라인 자기 진화 엔진 제공
- Claude Code, Codex, Copilot 등 주요 코딩 도구 통합 지원
- 멀티 백엔드(OpenAI, Claude 등) 및 내장 벤치마크 지원
모델 가중치(model weights)를 건드리지 않고도 에포크(epochs), (미니-)배치 크기(mini-batchsize), 학습률(learning rates), 검증 게이트(validation gates)를 사용하여 신경망을 훈련하는 것처럼 에이전트의 기술을 훈련하세요.
📖
설치, 데이터 준비, 훈련/평가(training/eval) 명령, 설정 및 프레임워크 내부 구조에 대해서는 버전별 SkillOpt 문서를 참조하십시오. 간결하게 렌더링된 개요는 Documentation & Reproduction Guide에서 확인할 수 있으며, 더 상세한 엔지니어링 분석은 Technical Blog에 게시됩니다. 또한 출시된 변경 사항과 출시되지 않은 변경 사항을 위한 Changelog를 유지 관리하고 있습니다.
[2026-07-02]🚀SkillOpt v0.2.0이 PyPI에 출시되었습니다!
주요 기능:SkillOpt-Sleep는 야간 오프라인 자기 진화 엔진(harvest → mine → replay → consolidate behind a held-out validation gate)으로, 이제 skillopt-sleep CLI로 제공됩니다. 또한 실험적인 다중 목적(multi-objective), 리플레이(replay), 드림 롤아웃(dream-rollout) 제어 기능이 포함되어 있습니다. 메인 CLI는 보수적인 기본값을 유지하며 모든 실험 하네스(experiment-harness) 제어 항목을 플래그(flag)로 노출하지는 않습니다. 이번 릴리스 소스에는 Claude Code, Codex, Copilot, Devin을 위한 통합 셸과 **OpenClaw 레퍼런스 적응(reference adaptation)**이 추가되었습니다. 이러한 플러그인/MCP 파일은 PyPI 휠(wheel)이 아닌 저장소(repository)에 존재합니다. 또한 SearchQA 분할 구체화(split materialization), Windows 안정성, 강화된 JSON 파싱 기능이 추가되었습니다. 전체 릴리스 세부 정보 및 기여자 감사는 릴리스 노트를 참조하십시오.
[2026-06-15]😴SkillOpt-Sleep (미리보기)— 로컬 코딩 에이전트(Claude Code / Codex / Copilot)를 위한 야간 오프라인 자기 진화 컴패니언: 과거 세션을 검토하고, 반복되는 작업을 리플레이하며, 검증된 기술을 홀드아웃 게이트(held-out gate) 뒤로 통합합니다. 이것이 무엇인지, 어떻게 사용하는지, 그리고 결과에 대해서는 docs/sleep/README.md를 참조하십시오.
[2026-06-03]🎉gbrain, gbrain-evals, 그리고 darwin-skill이 모두 SkillOpt를 통합했습니다.
[2026-06-02]🎉SkillOpt v0.1.0을 이제 PyPI에서 사용할 수 있습니다!
pip install skillopt로 설치하십시오.
이 초기 릴리스에는 전체 학습 루프 (rollout → reflect → aggregate → select → update → evaluate), 멀티 백엔드 지원 (OpenAI / Azure / Claude / Qwen / MiniMax), 6개의 내장 벤치마크 (benchmarks), 그리고 WebUI 대시보드가 포함되어 있습니다.
현대의 에이전트 기술 (agent skills)은 대개 수작업으로 만들어지거나, 강력한 LLM에 의해 단 한 번 생성되거나, 느슨하게 제어된 자기 수정 (self-revision)을 통해 진화합니다. 이 중 그 어떤 것도 기술 자체를 위한 딥러닝 옵티마이저 (deep-learning optimizer)처럼 동작하지 않으며, 피드백 하에서 시작점보다 안정적으로 성능을 향상시키지도 못합니다.
SkillOpt는 기술 문서 (skill document)를 동결된 에이전트 (frozen agent)의 학습 가능한 상태 (trainable state)로 취급하며, 가중치 공간 최적화 (weight-space optimization)를 재현 가능하게 만드는 규율을 가지고 이를 학습시킵니다. 별도의 옵티마이저 모델 (optimizer model)은 점수가 매겨진 롤아웃 (rollouts)을 단일 기술 문서에 대한 제한된 추가 / 삭제 / 교체 편집 (add / delete / replace edits)으로 변환합니다. 기본 논문 스타일 경로에서는 후보 편집이 홀드아웃 검증 점수 (held-out validation score)를 엄격하게 향상시킬 때만 수락됩니다. 텍스트 기반 학습률 예산 (textual learning-rate budget), 거부된 편집 버퍼 (rejected-edit buffer), 그리고 에포크 단위의 느린 / 메타 업데이트 (epoch-wise slow / meta update)는 배포 시 추론 시간 모델 호출 (inference-time model calls)을 전혀 추가하지 않으면서 기술 학습을 안정적으로 만듭니다.
배포된 결과물은 변경되지 않은 타겟 모델 (target model)에서 실행되는 컴팩트한 best_skill.md (통상 300–2,000 토큰)입니다. 6개의 벤치마크, 7개의 타겟 모델, 그리고 3개의 실행 하네스 (execution harnesses) (직접 채팅, Codex CLI, Claude Code CLI)에 걸쳐, SkillOpt는 **평가된 모든 52개의 (모델, 벤치마크, 하네스) 셀 (cells)**에서 최고 성능을 기록하거나 공동 최고 성능을 달성했으며, GPT-5.5에서는 기술이 없을 때의 평균 정확도를 직접 채팅에서 +23.5포인트, Codex 에이전트 루프 내부에서 +24.8포인트, Claude Code 내부에서 +19.1포인트 향상시켰습니다. 최적화된 기술 결과물은 추가 최적화 없이도 모델 규모, Codex와 Claude Code 하네스 사이, 그리고 인접한 벤치마크로 전이됩니다.
전체 방법론, 어블레이션 (ablations), 그리고 셀별 결과는 논문을 참조하십시오. 루프에 대한 시각적 워크스루 (visual walkthrough)는 프로젝트 페이지를 참조하십시오. 더 자세한 API / 백엔드 / 벤치마크 문서는 docs/를 참조하십시오.
64c8f76086bed7bd7a5ce664a7a14f40_raw.mp4
백엔드 (backend) = 채팅 / 실행 대상 (예: openai_chat, claude_chat, qwen_chat, minimax_chat, openai_compatible, codex_exec, claude_code_exec, cursor_exec). 만약 제공업체(provider)가 OpenAI Chat Completions 프로토콜을 구현한다면, 코드를 추가하기 전에 내장된 openai_compatible 백엔드를 먼저 시도해 보십시오. 전체 규약(contract)은 docs/guide/new-backend.md를 참조하십시오. 채팅 백엔드는 skillopt/model/<name>_backend.py 모듈을 추가하며, 실행 전용(target-only exec) 백엔드는 codex_harness.py에 있는 공유 하네스(harness)를 사용합니다. 두 방식 모두 common.py, backend_config.py, 그리고 skillopt/model/__init__.py를 통해 등록됩니다.
벤치마크 (benchmark) = 어댑터(adapter), 데이터 로더(data loader), 점수가 매겨진 롤아웃 헬퍼(scored rollout helper), YAML 설정, 그리고 선택적으로 초기 시드 스킬(initial seed skill)을 포함하는 skillopt/envs/<name>/ 패키지입니다. 전체 규약은 docs/guide/new-benchmark.md를 참조하십시오. 가장 간단한 참조 사례는 skillopt/envs/searchqa/입니다.
모니터링 대시보드 실행 (선택 사항):
pip install -e ".[webui]"
python -m skillopt_webui.app
| 플래그 (Flag) | 기본값 (Default) | 설명 (Description) |
|---|---|---|
--port | 7860 | 서버 포트 |
--host | 0.0.0.0 | 바인드 주소 (Bind address) |
--share | off | 공개 Gradio 공유 링크 생성 |
기본 호스트는 모든 네트워크 인터페이스에서 대기합니다. 로컬 전용 액세스를 사용하려면 --host 127.0.0.1을 사용하십시오.
@article{yang2026skillopt,
title={Skillopt: Executive strategy for self-evolving agent skills},
author={Yang, Yifan and Gong, Ziyang and Huang, Weiquan and Yang, Qihao and Zhou, Ziwei and Huang, Zisu and Li, Yan and Gao, Xuemei and Dai, Qi and Liu, Bei and others},
...
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Trending Python (daily)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기