AI神功 KNOWLEDGE BASE
内功07 · 模型定制与算力量化·第 25 关 / 36 约 5 分钟

INNER 07 / MODEL / 05 · ENGINE v1

人类偏好对⻬ DPO、ORPO 与 GRPO(Scientist 5: Preference Alignment)

本关练习:构建去“AI 说教味”的 DPO 偏好数据集与训练配置。

约 5 分钟·免费阅读·整理自 AI 现代必修课 · 内功07·来源精读 ↓·直接做题 ↓

30 SECONDS / 30 秒看懂

这一关只解决一件事:经过 SFT 微调后的模型虽然学会了指令格式,但往往还存在“爹味说教、冗余罗嗦、容易被诱导输出有害内容或推理不够严密”的问题。mlabonne/llm-course 第 5 章(Preference Alignment) 详解了三大现代对⻬算法: DPO(Direct Preference Optimization,直接偏好优化):无需像传统 RLHF 那样训练独立的奖励模型 (Reward Model),直接传入三元组数据 (prompt, chosen_response, rejected_response),最大化优质回答相对劣质回答的对数概率比,显存开销小且极其稳定,最适合打磨对话文⻛与去 AI 腔。

  • 编写一条标准的 DPO 训练数据 JSON 样本,包含 prompt、chosen(干脆利落直奔主题的回答)与 rejected(充满 AI 套话与端水说教的回答);
  • 说明为什么 DPO 的学习率(如 5e-6)必须比 SFT 阶段(2e-4)小一到两个数量级,并解释温度超参数 beta(通常取
  • 1)的作用(

3 MINUTES / 3 分钟拆解

先看来源里的例子:PDF 本关任务(来源)

输入
你的客服微调模型每次回答前总喜欢写一大段“作为一个人工智能语言模型,我很理解您的心情,让我为您从以下几个方面娓娓道来......”,你想用 DPO 彻底根除这种腔调。

发生了什么

来源要求:编写一条标准的 DPO 训练数据 JSON 样本,包含 prompt、chosen(干脆利落直奔主题的回答)与 rejected(充满 AI 套话与端水说教的回答); / 说明为什么 DPO 的学习率(如 5e-6)必须比 SFT 阶段(2e-4)小一到两个数量级,并解释温度超参数 beta(通常取 / 1)的作用(

输出

参考答案:参考答案:去“AI 说教腔”DPO 偏好样本与超参数规范 { "prompt": "请问把 Python 列表里的重复元素去掉,同时保持原来的先后顺序不变,怎么写最简洁?", "chosen": "直接使用 `dict.fromkeys()` 最简洁且保持原序(Python 3.7+ 字典默认保序): \n```python\nitems = [3, 1, 2, 1, 3, 4]\nunique_items = list(dict.fr

术语拆开

DPO
直接用偏好对优化模型,不需要独立奖励模型。
beta
DPO 的温度参数,常取 0.1。
GRPO
用组内相对优势和规则奖励优化推理。

为什么有效

来源核心原理:经过 SFT 微调后的模型虽然学会了指令格式,但往往还存在“爹味说教、冗余罗嗦、容易被诱导输出有害内容或推理不够严密”的问题。mlabonne/llm-course 第 5 章(Preference Alignment) 详解了三大现代对⻬算法: DPO(Direct Preference Optimization,直接偏好优化):无需像传统 RLHF 那样训练独立的奖励模型 (Reward Model),直接传入三元组数据 (prompt, chosen_response, rejected_response),最大化优质回答相对劣质回答的对数概率比,显存开销小且极其稳定,最适合打磨对话文⻛与去 AI 腔。 ORPO(Odds Ratio Preference Optimization):将 SFT 监督微调与偏好对⻬合并为单阶段完成,无需先做 SFT 再做 DPO,节省一半算力。 GRPO(Group Relative Policy Optimization):DeepSeek-R1 等推理模型的核心强化学习算法——针对同一道数学或代码题采样生成一组(Group)回答,用确定性规则(如代码能否跑通测试、数学答案是否正确)打分并计算组内相对优势,无需 Critic 价值网络即可激发出强大的长思维链自我反思能力。

结构长什么样

编写一条标准的 DPO 训练数据 JSON 样本,包含 prompt、chosen(干脆利落直奔主题的回答)与 rejected(充满 AI 套话与端水说教的回答);
说明为什么 DPO 的学习率(如 5e-6)必须比 SFT 阶段(2e-4)小一到两个数量级,并解释温度超参数 beta(通常取
1)的作用(
5 分);
对比说明什么场景该选 DPO、什么场景该选基于规则奖励的 GRPO。

什么场景更适合 GRPO 而不是 DPO?

SOURCE READING / 来源精读

经过 SFT 微调后的模型虽然学会了指令格式,但往往还存在“爹味说教、冗余罗嗦、容易被诱导输出有害内容或推理不够严密”的问题。mlabonne/llm-course 第 5 章(Preference Alignment) 详解了三大现代对⻬算法: DPO(Direct Preference Optimization,直接偏好优化):无需像传统 RLHF 那样训练独立的奖励模型 (Reward Model),直接传入三元组数据 (prompt, chosen_response, rejected_response),最大化优质回答相对劣质回答的对数概率比,显存开销小且极其稳定,最适合打磨对话文⻛与去 AI 腔。

逐点读懂

  1. 编写一条标准的 DPO 训练数据 JSON 样本,包含 prompt、chosen(干脆利落直奔主题的回答)与 rejected(充满 AI 套话与端水说教的回答);
  2. 说明为什么 DPO 的学习率(如 5e-6)必须比 SFT 阶段(2e-4)小一到两个数量级,并解释温度超参数 beta(通常取
  3. 1)的作用(

怎么对应本关练习

先读 30 秒与 3 分钟拆解,再读本关原文与实验,最后做客观题和实操题;答案在下方。

例子在哪

本关任务与参考答案见页面下方;来源为本册 PDF 对应关卡。

本关先记住:编写一条标准的 DPO 训练数据 JSON 样本,包含 prompt、chosen(干脆利落直奔主题的回答)与 rejected(充满 AI 套话与端水说教的回答);

SOURCESPDF 第 5 关(用户提供)mlabonne/llm-course ↗

核心原理

经过 SFT 微调后的模型虽然学会了指令格式,但往往还存在“爹味说教、冗余罗嗦、容易被诱导输出有害内容或推理不够严密”的问题。

mlabonne/llm-course 第 5 章(Preference Alignment) 详解了三大现代对⻬算法: DPO(Direct Preference Optimization,直接偏好优化):无需像传统 RLHF 那样训练独立的奖励模型 (Reward Model),直接传入三元组数据 (prompt, chosen_response, rejected_response),最大化优质回答相对劣质回答的对数概率比,显存开销小且极其稳定,最适合打磨对话文⻛与去 AI 腔。

ORPO(Odds Ratio Preference Optimization):将 SFT 监督微调与偏好对⻬合并为单阶段完成,无需先做 SFT 再做 DPO,节省一半算力。

GRPO(Group Relative Policy Optimization):DeepSeek-R1 等推理模型的核心强化学习算法——针对同一道数学或代码题采样生成一组(Group)回答,用确定性规则(如代码能否跑通测试、数学答案是否正确)打分并计算组内相对优势,无需 Critic 价值网络即可激发出强大的长思维链自我反思能力。

第 5 关实操练习题:构建去“AI 说教味”的 DPO 偏好数据集与训练配置

任务背景

你的客服微调模型每次回答前总喜欢写一大段“作为一个人工智能语言模型,我很理解您的心情,让我为您从以下几个方面娓娓道来......”,你想用 DPO 彻底根除这种腔调。

通关硬性要求(满分 12.5 分)

1. 编写一条标准的 DPO 训练数据 JSON 样本,包含 prompt、chosen(干脆利落直奔主题的回答)与 rejected(充满 AI 套话与端水说教的回答)(5 分);

2. 说明为什么 DPO 的学习率(如 5e-6)必须比 SFT 阶段(2e-4)小一到两个数量级,并解释温度超参数 beta(通常取

0.1)的作用(

4.5 分);

3. 对比说明什么场景该选 DPO、什么场景该选基于规则奖励的 GRPO(3 分)。

PRACTICE / 本关练习 · 本地规则 + 覆盖检查

构建去“AI 说教味”的 DPO 偏好数据集与训练配置

本地检查在你的浏览器里完成,不上传。覆盖检查需要先登录(免费注册),并把这段答案发送到服务器计算一次,算完即弃、不存档,需你点同意;只核对本关评分项覆盖的方向,不在评分项里的题目不会被检查。

0 字未保存

评分项

评分项加载中…

结构分 — / 12.5 分

查看参考答案与得分点 先自己写,再打开+

参考答案与得分要点

参考答案:去“AI 说教腔”DPO 偏好样本与超参数规范 { "prompt": "请问把 Python 列表里的重复元素去掉,同时保持原来的先后顺序不变,怎么写最简洁?", "chosen": "直接使用 `dict.fromkeys()` 最简洁且保持原序(Python 3.7+ 字典默认保序): \n```python\nitems = [3, 1, 2, 1, 3, 4]\nunique_items = list(dict.fromkeys(items)) # 输出: [3, 1, 2, 4]\n```\n时间复杂度为 O(n),比用 `list(set(items))` 更稳妥,因为 `set` 会打乱原有顺序。", "rejected": "你好!这是一个非常棒的 Python 编程问题!在日常开发中,列表去重确实是一个经常遇到的需求。作为一个 AI 助手,我很乐意为你从多个角度详细剖析这个问题。首先,让我们来看看什么是列表......(以下省略 300 字废话寒暄)" } // DPO 训练核心参数规范: // 1. learning_rate = 5e-6(必须在已收敛 SFT 模型上做微幅概率偏移,学习率过大会瞬间破坏语言连贯性导致模型崩溃输出乱码) // 2. beta = 0.1(KL 散度惩罚系数:控制新策略偏离原 SFT 参考模型的幅度,beta 越大越保守,beta 越小对 chosen 偏好强化越激进) // 3. 选型对比:主观文⻛对⻬、安全拒答与礼貌度优化选 DPO/ORPO;具备确定性验证器(如数学算式对错、代码能否编译通过)的复杂逻辑推理增强选 GRPO。 得分要点拆解:构建对比鲜明的 `prompt / chosen / rejected` 三元组(5 分);解释极低学习率(`5e-6`) 与 KL 惩罚系数 `beta=0.1` 的防崩坏原理(4.5 分);准确区分主观偏好(DPO)与可验证推理强化(GRPO) 选型(3 分)。 第 6 关

网页永久免费。完整 PDF 会按顺序发给留邮箱的读者,不转售、不群发广告。

留邮箱,获取完整 PDF ↗
← 上一关 下一关 →