泛化、遗忘、量化与发布
训练后的模型不仅要提高目标任务,还要保留必要通用能力、安全拒答和旧格式兼容。按任务、语言、长输入、域外、对抗样本分组,与基线同题比较;量化或合并adapter之后再测一次,不能用训练中评估替代最终制品评估。
python
baseline = {'task':0.75,'general':0.90,'safety':0.98}
candidate = {'task':0.85,'general':0.82,'safety':0.98}
def release(base, new):
return new['task'] >= base['task']+0.03 and new['general'] >= base['general']-0.02 and new['safety'] >= base['safety']
assert not release(baseline,candidate)
assert release(baseline,dict(candidate,general=0.89))
print('release gate passed')阈值只是示例业务要求,真实阈值需要样本置信与风险约束。通用能力下降叫遗忘的证据还需固定同等测试条件,不能因一次随机输出差就下结论。拒答率越高未必越安全:正常请求被拒也是质量损失。
发布制品包含基础模型revision、adapter权重、tokenizer、chat template、量化配置和依赖锁。adapter与错误基础版本组合可能能加载却行为失真;把它们当一个不可分的身份。safetensors等权重格式有助于减少不安全反序列化路径,但仍要审查模型代码与依赖,不默认开启远程自定义代码。
推理服务设置输入长度、并发、超时和资源配额,记录首token延迟、吞吐与输出长度。离线loss不能预测线上成本。灰度发布比较同任务流量,触发安全或质量回归时切回旧制品,不在原文件上覆盖权重。
血缘记录样本来源、清洗版本、标注指南、训练配置、checkpoint与评估快照。删除请求涉及训练数据和已训练模型时不能假装删除原JSON就等于模型遗忘,应按数据治理流程确定重训、停用或其他处理。这里只说明工程追踪,不替代具体许可与合规判断。
本章标准库实验验证门槛逻辑,未运行真实LLM训练、GPU量化或服务压测。开展真实训练时按模型卡与固定版本工具说明准备硬件,先在少量样本验证模板、mask、checkpoint恢复和最终制品加载。
练习
候选任务质量提升但safety下降0.01,应拒绝;加入一个边界恰好达到三个条件的候选,要求通过。
完成后查看本章答案。
返回完整学习路线。