mcpField
C
checkpoint-promotion

checkpoint-promotion

github.com/wshobson测试与质量41.9k2.7k 次安装2 周前更新
代码仓库

关于 checkpoint-promotion

用于微调流程中评估训练检查点是否可发布的技能。它按数据质量、能力漂移、成对竞技评估和金丝雀部署逐级设门,并生成带 PROMOTE 或 REJECT 结论的报告。

主要功能

  1. 01四阶段检查点发布门
  2. 02检测数据泄漏与标签噪声
  3. 03评估能力漂移和成对竞技表现
  4. 04规定漂移阈值及复测规则
  5. 05生成发布报告与单项修复建议

适用场景

  1. 01判断微调检查点是否进入导出
  2. 02发现训练集泄漏或能力退化
  3. 03为漂移超标选择优先修复措施

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/wshobson/agents --skill checkpoint-promotion

安装后在 Claude Code 中输入/checkpoint-promotion确认已加载。

附带文件references/gate-templates.md

详细介绍

检查点晋升

整个插件的第 5 阶段门禁:一个训练干净、且优于其任务指标的检查点,若未通过以下全部四个阶段,依然不能发布。eval-harness-first 构建了在此处重跑的套件——而本技能正是该套件的基线做出裁定的地方。

输入: 一个训练好的检查点、来自 eval-harness-first 的 eval/baseline-<model>.json,以及冻结的 eval/drift-suite.yaml。 输出格式: promotion-report.md——四个阶段的证据,外加一个终态的 PROMOTE 或 REJECT 裁定,供 /finetune 第 5 阶段和 /promote-checkpoint 直接消费。

四阶段门禁

每个阶段都为下一阶段设门——阶段 2 失败意味着阶段 3 不会运行。阶段 2 和阶段 3 共享一次昂贵的推理过程,因此在确定性竞技场上,并发运行它们并在裁定时刻套用门禁顺序是被许可的(串行化不会节省任何东西);基于评判的竞技场仍应先等待阶段 2——真正的节省正在于此。

  1. 数据质量门禁。 在任何评估触及该检查点之前:对训练集去重、检查评估金标准泄漏(正是 trace-to-training-data 的 Hygiene 小节存在所要防止的那种确切故障),并扫描标签噪声。用泄漏的金标准训练出的检查点会让之后每一个阶段都失效。
  2. 留出集 + 冻结的能力漂移套件。 针对该检查点重跑 eval-harness-first 的 eval/drift-suite.yaml——MMLU/GSM8K/IFEval 外加 200–500 条领域相关条目——并按下面的漂移预算表,逐基准与 baseline-<model>.json 做差异比对。
  3. 与基线的配对竞技场。 位置随机化的评判,检查点对基线模型,相同提示词——或者当 harness 中每个评分器都是确定性的(无 LLM 评判;位置随机化在此不适用)时,采用 references/gate-templates.md 中的确定性配对比较变体。留出集上的胜利若在实时竞技场中落败,则不能发布——阶段 2 的数字与阶段 3 的判定必须一致;在冻结金标准上获胜却在配对比较中落败是一个真实信号,而不是需要搪塞过去的差异。
  4. 金丝雀。 对任何触及生产流量的检查点,进行 5–10% 的分层灰度发布并配备自动回滚。仅本地用户止步于阶段 3——对本地部署跳过阶段 4 是正确的停止点,而非捷径。
漂移预算
漂移(pts)裁定
≤1噪声——继续
2–5在决定前用种子变体重跑
>5硬性失败——不因任务收益而例外

5pt 这一行凌驾于其他行之上:一个在目标任务上提升 8 分、却损失 6 分通用能力的检查点,在此依然失败——任务改进永远无法赎回对漂移预算的违反。

条目数由预算推导而来,而非图方便: 要在 5pt 硬性失败阈值的一半之下取得半宽,所需的严格 n 在典型准确率(p≈0.7)下约为 1,300;n=200 是务实下限(在同样的 p 下 ±6pt 半宽,n=50 时 ±13pt)——每次裁定都要报告半宽,并将小于它的裕度视为 REJECT (uncertain),而非 PASS/HARD FAIL。完整数学推导与一个 5 次运行的警示示例:references/gate-templates.md。

RERUN 不是裁定。 2–5pt 的漂移只有在种子变体重跑完成后才会产生 PROMOTE 或 REJECT——PROMOTE 要求回落到 ≤1pt(噪声);任何重跑后仍 >1pt 的情况——无论是 2–5pt 区间还是 >5pt 违反——都会将阶段 2 裁定为硬性 REJECT。任何报告都不得在阶段 2 仍显示 RERUN 的情况下进入 Verdict 小节。

灾难性遗忘

未加管理的 LoRA 微调会损失 真实的通用能力, 而第 2 阶段正是用来捕捉这一点的:

  • 未加管理时约 43% 知识损失——无回放,无 正则化。
  • 基础管理下约 10% ——一些回放或保守的 LR。
  • 回放 + EWC 下约 3%——纪律严明的情形。
  • 10–30% 通用数据回放 混合是标准的 缓解措施——将通用 领域数据混入训练, 而非仅用目标任务数据。

如果某个 checkpoint 在第 2 阶段触及 >5pt 硬性失败,按顺序执行此 升级阶梯——这是本 skill 和 references/gate-templates.md 都指向的唯一规范顺序:

  1. 调整回放混合 比例——替换行,而不是 添加行(添加会混淆 比例与总优化器 步数)。在小型运行规模(<~100 步)下剂量并非单调——任何替换后 都要重新检查漂移。
  2. 降低学习率。
  3. 减少 epoch。
  4. 更小的 LoRA rank—— lora-qlora-recipes 和 preference-optimization 为训练运行所调的 同一组 rank/LR 杠杆, 在此反向应用。

此顺序是默认值,而非 定律:来自单一 前后运行对的修复指导 是一种假设——一旦任何杠杆 产生反转,就将其标记为 低置信度,并优先 进行 seed 变体重复,而不是 盲目信任下一级。 一个杠杆消除了漂移 越界,却使某个 成功标准指标低于 目标,这是需要人类 权衡的双向取舍,而不是 继续沿阶梯下行的理由。这两个注意事项背后的完整 推理和 5 次运行 轨迹: references/gate-templates.md。

披露漂移套件的 指令复用。 某条回放行 复制了漂移测试框架的精确 指令措辞(而不仅仅是 不相交的源条目),会使该 基准的回放后得分成为 上界——将其标记为 指令熟悉,或用改写重新探测, 然后再将接近预算的通过视为 干净。

判定

promotion-report.md 以章节形式涵盖全部 四个阶段, 并且必须以终止 判定结尾:PROMOTE 或 REJECT, 以及产生该判定的证据, 还有当判定为 REJECT 时恰好一项首要 修复措施。 模板:references/gate-templates.md。 其他 skill 解析的终止契约:

## Verdict

REJECT

Evidence: domain-adjacent drift
suite dropped 6.2pt (threshold:
>5pt hard fail) despite +8pt on
the target task.

Top remediation: swap the
replay-mix fraction from 10%
toward 20%, holding step count
constant.
  • REJECT 是结果,不是 错误。 未能通过第 2 阶段漂移预算或 第 3 阶段竞技场比较的 checkpoint 完成了它的职责。不要把 REJECT 当作需要重跑本 skill 的失败运行; 它是正常工作的门禁的 正确输出。
  • 一项修复,而非 菜单。 证据章节可以 列出所有观察到的情况;判定章节则指明 按上述升级阶梯得出的 单一最高杠杆修复。一份在三种 可能修复之间含糊其辞的报告,没有完成本 skill 存在的意义所在,即 排定优先级。
  • 不自动重训。 本 skill 产生判定和 报告,而非重新触发的 训练运行。REJECT 将 修复交回人类决策,在 finetuning-method-selection 或 相关训练 skill 处处理。

相关 Skills

  • eval-harness-first——拥有本 skill 重新运行并与之比对的漂移套件和基线; 没有 baseline-<model>.json 就没有东西可供门禁比对。
  • quantized-export——在 PROMOTE 判定之后唯一 有效的下一步。
  • preference-optimization 和 lora-qlora-recipes——拥有 灾难性遗忘升级路径中的 LR 和 rank 杠杆;本 skill 诊断越界,那些 skill 拥有导致越界的配置。
  • dataset-curation——拥有 升级阶梯第一级所应用的 回放混合构建配方。

完整的 promotion-report.md 模板,包含全部四个阶段、 漂移套件评分表、 配对竞技场协议(条目 数、位置随机化、 胜率阈值)以及 回放混合配置示例: references/gate-templates.md。

评论

支持 Markdown