实践案例
实践案例:chat-dpo
本 cookbook 的定位是"Eval-first 的 DPO 实验,处理 chat 质量的偏好对"。本页把该 cookbook 的关键事实与在 MinT 企业版上的对应做法整理到一处。
目标
给定 chosen / rejected 偏好对,训练一个让模型倾向于 chosen 风格的 LoRA。Benchmark 是held-out 的成对偏好集合,不是带外部评分员的生成式 benchmark——评测在训练机内自洽完成。
配方参数
| 算法 | DPO(成对偏好) |
| 底座 | Qwen/Qwen3-4B-Instruct-2507 |
| 训练数据 | data/train/full.jsonl |
| Benchmark 数据 | data/eval/full.jsonl(held-out 成对偏好) |
| Primary metric | eval_pair_accuracy |
Lifecycle 顺序
Cookbook 页明确的三步 lifecycle:
uv sync → --dry-run → --eval-only → 训练uv sync:装依赖。--dry-run:干跑数据通路,确认 tokenizer / 展平 / loss 计算都通。--eval-only:在不训练的状态下跑一遍 eval,拿到基线eval_pair_accuracy。- 训练:正式跑训练循环,周期性评测。
更细粒度的可执行命令与脚本文件名,Cookbook 页面指向上游 README。
在 MinT 上的对应
DPO 在 MinT 上通过 forward_backward_custom + 自定义偏好损失实现。控制台里选定 DPO Recipe 后会自动接入这条路径;面板推荐超参 rank=32 / 5 轮 / lr=1e-4 / bs=8。
企业版差异
此 cookbook 在社区版与企业版上结构完全相同——切换 MINT_BASE_URL 与 MINT_API_KEY 即可迁移(详见从社区版迁移)。在企业版上额外可做:
- 把底座升到
Qwen/Qwen3-30B-A3B-Instruct-2507或企业版专属模型(GLM-5/Kimi-K2等)——详见支持的模型。 - 训练完成保存检查点: 明确"每个检查点都会带上元数据(Recipe、数据版本、超参、评测分),方便回溯"。
- 训练与推理都在专属算力池,不与其他租户共享调度。