Case Study: chat-dpo
This cookbook is positioned as an "eval-first DPO experiment handling chat-quality preference pairs." This page gathers the cookbook's key facts and the corresponding approach on MinT Enterprise in one place.
Goal
Given chosen / rejected preference pairs, train a LoRA that makes the model favor the chosen style. The benchmark is a held-out set of paired preferences, not a generative benchmark with external raters — evaluation is self-contained within the training machine.
Recipe parameters
| Algorithm | DPO (pairwise preference) |
| Base model | Qwen/Qwen3-4B-Instruct-2507 |
| Training data | data/train/full.jsonl |
| Benchmark data | data/eval/full.jsonl (held-out paired preferences) |
| Primary metric | eval_pair_accuracy |
Lifecycle order
The three-step lifecycle stated on the cookbook page:
uv sync → --dry-run → --eval-only → trainuv sync: install dependencies.--dry-run: dry-run the data path to confirm the tokenizer / flattening / loss computation all work.--eval-only: run eval without training to get the baselineeval_pair_accuracy.- Train: run the actual training loop with periodic evaluation.
For more fine-grained runnable commands and script filenames, the cookbook page points to the upstream README.
The corresponding approach on MinT
DPO on MinT is implemented with forward_backward_custom + a custom preference loss. Selecting the DPO Recipe in the console automatically wires up this path; the panel's suggested hyperparameters are rank=32 / 5 epochs / lr=1e-4 / bs=8.
Enterprise differences
This cookbook has exactly the same structure on Community and Enterprise — migration is just switching MINT_BASE_URL and MINT_API_KEY (see Migrate from Community). On Enterprise you can additionally:
- Upgrade the base model to
Qwen/Qwen3-30B-A3B-Instruct-2507or an Enterprise-only model (GLM-5/Kimi-K2, etc.) — see Supported Models. - Save a checkpoint after training: it is stated that "each checkpoint carries metadata (Recipe, data version, hyperparameters, eval scores) for easy traceability."
- Run both training and inference on a dedicated compute pool, without sharing scheduling with other tenants.
Related
For the DPO algorithm itself, see DPO (Preference Optimization); for an end-to-end RL example, see dapo-aime.
Vibecoders: Working with AI Coding Assistants
MinT exposes an LLM-readable site-wide documentation summary at https://mint-doc.macaron.im/zh/llms.txt, making it easy for AI coding assistants like Cursor, Claude Code, and Codex to load context in one shot.
Case Study: dapo-aime
The dapo-aime cookbook page demonstrates training math-reasoning ability on DAPO-Math-17k with direct GRPO (no SFT warm-start), using AIME 2024 as the primary benchmark and AIME 2025 / 2026 as auxiliary evals.