Microsoft SkillOpt:把 Agent 技能當成可訓練的自然語言權重,而不是一次性 prompt
Microsoft SkillOpt 是一個 MIT 開源的 text-space optimizer,用訓練流程優化可重用的自然語言技能文件。它不更新模型權重,而是透過任務軌跡、批次、epoch、驗證 gate 與 best_skill.md,把 agent 的操作策略持續改好。適合研究如何讓 frozen LLM agents 透過技能文件演進。
best_skill.md。換句話說,它優化的是 agent 的操作策略文字,而不是 LLM 權重。一般 prompt 常是人工一次性調整;SkillOpt 則像訓練流程:有 epochs、batch size、learning-rate 類比、validation gate、training history、runtime state、skill snapshots。每一步都根據任務軌跡修改技能,再用驗證集決定是否接受更新。
訓練輸出包含 best_skill.md、每一步 skill snapshot、history、runtime state、patch / eval artifacts。這些文件可部署到 frozen LLM agent,讓同一個基礎模型在特定任務上表現更穩。
README 列出的 benchmark 包含 SearchQA、ALFWorld、DocVQA、LiveMathematicianBench、SpreadsheetBench、OfficeQA;對應 QA、具身任務、文件問答、數學、試算表程式生成與工具增強問答。
SkillOpt 不要求改模型權重;它用 optimizer model 生成技能修改,target model 跑任務,驗證 gate 控制是否採納。可接 Azure OpenAI、OpenAI-compatible endpoint、Anthropic Claude、Qwen local vLLM。
需要 Python 3.10+、準備 train / val / test split directory、設定 API credentials,再用 scripts/train.py 指定 config、split、optimizer model 與 target model。這比較像研究 / MLOps 工具,不是一般 end-user app。
GitHub API metadata 顯示 repo 採 MIT License;截至觀察時約 3.1K stars、300+ forks。這代表關注度高,但仍應把它視為快速演進中的研究工程框架,先用 benchmark / sandbox 驗證,不要直接接高風險生產流程。
- 把既有 Hermes / Claude Code skills 拆成可評分任務,測試是否能透過軌跡自動改進技能文件。