SuperAPI AI 工具集

contrastive-refinement

智能体与模型

查看项目

更新于 10-28 05:28

技能介绍

用途

Contrastive Skill Refinement 是一个用于技能或 harness 编辑的流程工具。它强调在编辑落地之前,通过在同一探针任务上运行候选版本来测量行为差异,而不是仅凭判断。最终编辑由盲选胜出的对比结果组合而成,每个经验记录都必须包含观察到的对比证据。

该技能仅修改技能定义;应用代码变更应使用 build-review-loop。

主要能力

  • 探针循环:选择固定的现实任务,运行当前技能(基线)和候选编辑,盲选对比交付物,组合胜出编辑并再次探针验证。
  • 候选类型:INV 编辑(与技能无关的杠杆,如检查清单、脚本门、输出契约、护栏)和 DOM 编辑(领域特定内容,如规则、示例、参数)。
  • 盲选机制:使用脚本为交付物分配匿名 id,盲读并写下选择理由,然后揭盲。
  • 证据门:经验记录必须包含 cue、lesson、evidence、confidence 四个字段,evidence 不能是占位符。脚本 lesson-check 执行语法检查。
  • 分类处理:对于不适合完整循环的编辑(如拼写修复、无行为声明变更),提供文档化分类和承诺规则。
  • 发布后监控:对于部署产物(如咨询插件、hook),提供端到端触发验证、注入点理解、 effectiveness 评估方法。

使用方式

  1. 选择探针任务:为目标技能挑选一个现实任务,将输入写入探针目录。
  2. 运行基线:在当前技能上运行探针任务一次,保存交付物和轨迹。
  3. 提出候选:编写一个 INV 和一个 DOM 候选编辑,说明预期行为差异。
  4. 探针候选:将补丁应用到技能副本,在相同模型、工具、输入下并行运行。
  5. 盲选:使用 python3 <skill_dir>/scripts/contrast.py ids --labels base,inv1,dom1 --task probe-1 --k 1 分配匿名 id,盲读交付物并写 <why> 行,然后揭盲。
  6. 组合、探针组合、应用:合并胜出对比,在新鲜副本上再次探针,盲选通过后使用 skill_manage(action="patch", ...) 应用到实际技能。
  7. 记录经验:格式为四字段,通过 lesson-check 验证。

适用场景

  • 技能编辑承诺更好输出但未测量。
  • 两个候选编辑看起来都正确,需要选择。
  • 技能在真实任务中失败,需要经过验证的修复。
  • 需要记录带证据的技能经验。

限制

  • 不适用于拼写和 frontmatter 修复(无行为变化)、实际代码仓库(使用 build-review-loop)、全新技能的初稿(尚无对比对象)。
  • 标准循环成本约 4 次模型运行,候选重试最多增加一次。
  • 效率对比(调用次数、时长)是最弱类别,需重复运行确认。
  • 同一工具部分最多组合一条新规则;组合探针失败时保留基线。
  • 应用编辑时锚点必须来自实际技能的最新读取,不能来自探针副本。
  • 新安装的技能对当前会话的加载器不可见,需通过文件路径测试。
  • 发布后监控需验证实际触发,不能仅凭日志缺失判断。