# Post Training Strategy

为 Agent 模型做后训练或选路线时使用, , 判断该先补 Mid-training、用 SFT 立协议还是直接上 RL；构造 Mid-training 语料与 SFT...

- Repository: https://github.com/bojieli/ai-agent-book (56844 stars)
- Category: AI and agents
- License: Apache-2.0
- Last updated: 2026-10-08
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add bojieli/ai-agent-book --skill post-training-strategy -g -a claude-code -y`
Codex: `npx skills add bojieli/ai-agent-book --skill post-training-strategy -g -a codex -y`
Cursor: `npx skills add bojieli/ai-agent-book --skill post-training-strategy -g -a cursor -y`
Gemini CLI: `npx skills add bojieli/ai-agent-book --skill post-training-strategy -g -a gemini-cli -y`

## Description

为 Agent 模型做后训练或选路线时使用, , 判断该先补 Mid-training、用 SFT 立协议还是直接上 RL；构造 Mid-training 语料与 SFT 数据、搭建 RL 环境、在 GRPO/PPO/DPO 与蒸馏之间取舍；排查 pass@k 近零、格式不稳就训 RL、组内无奖励差异、训练-推理数值失配、过度训练泛化下降。触发词：后训练、Mid-training、继续预训练、SFT、RL、GRPO、PPO、DPO、拒绝采样、RFT、蒸馏、on-policy、RLVR、LoRA。

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 模型后训练策略

## 何时使用

- 模型在某类任务上"做不好"，要判断是缺底座、缺协议还是缺策略
- 决定项目走 Mid-training / SFT / RL 哪条路线，或要不要做 RL
- 构造 Mid-training 语料、SFT 示范数据、拒绝采样数据
- 搭建 RL 训练环境、选择 RL 算法与 LoRA 超参
- 用蒸馏提升样本效率（CoT 蒸馏、Prompt 蒸馏、在轨蒸馏、自蒸馏）
- RL 训练不收敛、组内无差异、更新后能力退化，需要定位原因

## 核心原则

- **四阶段不是三种"微调力度"，而是分别处理底座、协议与策略。** Mid-training 补知识与基础能力，SFT 固化输出格式与行为协议，RL 重新分配概率质量并探索示范之外的策略。三者各有进入门槛，不是流水线仪式。
- **数据和环境比算法更重要。** 决定成败的是 Mid-training 语料是否补齐底座、示范数据是否建立行为协议、仿真环境与奖励是否提供可靠试错反馈。PPO/GRPO 的基本用法掌握即可，很多场景下前两类数据到位后根本不需要 RL。
- **`pass@k` 是最重要的分流指标。** 在留出任务上以接近训练的溫度采样：`pass@k = 1-(1-p)^k`。`pass@1` 低但 `pass@k` 随 k 明显上升 → 正确策略已在分布里，RL/拒绝采样/蒸馏有东西可放大；合理 k 与温度下 `pass@k` 仍近零 → 基模几乎生成不出成功轨迹，此时只给 0/1 奖励，GRPO 一组 rollout 全为 0，组内优势直接消失。
- **"SFT 记忆、RL 泛化"是受控实验下测得的倾向，不是普遍属性。** 数据足够多样、正则化得当时 SFT 也能泛化；奖励或环境有偏时 RL 也会过拟合。机制解释：极大似然 SFT 有 mass-covering 倾向，RL 配合反向 KL 有 mode-seeking 倾向。
- **SFT 与预训练是同一个数学任务**（预测下一个词），差别只在数据组织和损失屏蔽（只在回答 token 上回传梯度）。所以 SFT 样本效率极高（几千条见效），也因此在示范覆盖不足时容易记住问法而非形成知识。
- **LoRA 是工程默认项**：必须应用到所有主要权重矩阵（尤其参数占比最大的 MLP，只加注意力层会掉点）；最优学习率约为全参微调的 10 倍；SFT 用中高 rank（64, 256），RL 每轮信息量小、用小 rank（8, 32）甚至 1。
- **on-policy 是数值问题，不只是调度问题。** 采样引擎与训练引擎的浮点差异会让更新前本应为 1 的概率比偏离 1，把名义上的 on-policy 悄悄变成 off-policy。sampler/trainer 一致性应与奖励曲线同等重要。

## 实践模式

### 1. 路线决策：先诊断缺口，再选方法

| 观察到的现象 | 主要缺口 | 优先方法 | 进入下一阶段的门槛 |
|---|---|---|---|
| 领域概念、语言或基础操作不会；合理采样下 `pass@k` 仍近 0 | 知识与能力不在基模有效支持中 | **Mid-training**；动态事实用 RAG | 领域留出集改善、通用保留集可接受、目标任务开始出现可验证的正确或部分正确轨迹 |
| 偶尔能做对，但格式、工具 schema、语气或固定流程不稳定 | 行为协议没固化 | **SFT** 或约束解码 | 解析成功率稳定，关键动作与输出协议可被验证器可靠评分 |
| 已有非零成功率和可靠奖励，但好策略概率低、长程决策或 OOD 泛化不足 | 概率质量分配与策略优化 | **RL** | 奖励与真实目标一致；rollout 组内有足够奖励差异；独立测试集随训练改善 |
| 只有少量稳定示范，尚无可交互环境 | 可模仿数据有、在线反馈无 | **SFT/RFT/离线偏好优化** | 先建立基线与评估，再判断是否值得建 RL 环境 |

决策顺序：**①** 先排除不需要改权重的方案（prompt、工具、代码约束、上下文管理能解决就不训练；事实需频繁更新/引用/删除就走 RAG）→ **②** 在目标留出集测能力支持（不只贪心 `pass@1`，还看固定采样配置下的 `pass@k`、部分进展率、格式解析率，并人工审计失败原因）→ **③** 用 SFT 立协议，不拿它硬塞知识库 → **④** 只在有探索空间时上 RL。

### 2. Mid-training：补底座

The rest: https://github.com/bojieli/ai-agent-book/blob/HEAD/skills/post-training-strategy/SKILL.md
