SkillComposer: 生成式技能组合¶
Ch07.082 SkillComposer: 生成式技能组合¶
📊 Level ⭐⭐ | 4.2KB |
entities/skillcomposer-generative-skill-composition-agent.md
SkillComposer: 生成式技能组合¶
摘要¶
SkillComposer 将 Agent 技能选择建模为闭集技能序列生成任务,用 3.9M 参数的轻量解码器联合预测技能子集、数量和顺序。在 SkillsBench 上让 GPT-5.2-Codex 通过率从 22.2% 提升至 45.3%(+23.1 pp),prompt token 比全库加载少 24 万。核心反直觉发现:TF-IDF 稀疏检索比 Dense Embedding 在短技能名闭集上表现更好,小专用模型(3.9M)在真实任务 holdout 上比 600M 全参 SFT 高 19.3 pp Set F1。
核心要点¶
- 问题形式化:将技能选择建模为「任务条件变长技能索引序列预测」,一次输出子集、基数、顺序三个耦合决策
- 架构:冻结 Qwen3-Embedding 编码器 + 3 层 256 维 AR 解码器 + 基数头/集合头辅助 + TF-IDF 检索增强 logit 融合,共 3.9M 可训练参数
- 数据:9,872 条训练数据(65 真人 + 9,807 合成),覆盖 196 个技能,依赖边+工作流边保证顺序合理性
- 结果:Codex +23.1 pp,Gemini +18.2 pp 通过率提升,接近金标上界(51.1%/48.4%)
- 关键 insight:Sparse (TF-IDF) + Dense (Embedding) 融合在短名称高辨析度技能库上优于纯 dense;小专用模型优于大模型全参 SFT
深度分析¶
技能组合的「推荐系统时刻」¶
论文将技能组合类比为推荐系统演进:早期 flat 相似度召回 → 后来发现「看几部+按什么顺序看」是联合决策。SkillComposer 把生成式检索(Generative Retrieval)思路搬到技能闭集上,输出空间就是库内 skill ID,每个 token 可执行、可检查、可复现。
辅助头的设计价值¶
纯 AR 头监督信号稀疏(skill 只在出现位置收到正梯度)。基数头和集合头提供 order-agnostic 梯度,使模型在训练时从「排在第几位才知道该不该选」变为「只要该选就收到信号」。消融实验显示去掉任一先验都大幅掉分(Set F1 -7.1 去 set-fusion,-4.6 去检索 prior)。
局限与展望¶
- 库固定在 196 skill,任务以软件工程为主
- 技能依赖图靠元数据 I/O 和轨迹共现挖掘,新领域泛化未验证
- 技能创建和技能组合是正交问题,SkillComposer 只解后者
实践启示¶
- 别整库灌 skill 进 prompt:196 个 skill 已 1.27M token,库再涨 Agent 直接窒息
- top-k 检索只是下限:多步流程(数据分析、CI 修复、科学计算)必须显式建模顺序和数量
- 小专用模型 > 大模型硬 SFT:3.9M vs 600M 在真实任务上高 19.3 pp——闭集组合不需要堆通用语言能力
- Sparse + Dense 混搭:任务编码用 dense embedding,解码先验用 TF-IDF
相关实体¶
→ 原文存档