“青语茶”奶茶店来了位新店员小智。他知识面惊人——茶叶产地、甜度化学结构、珍珠原料配比倒背如流;可真让他接单,客人说“少糖、去冰、加一份珍珠”,他端上来的却是全糖热饮配椰果。店长老周头疼:这不是知识不够,是“听不懂要求、守不住约束”。后来,老周用了三招改造小智:师傅带教示范(SFT)、神秘顾客绩效奖惩(RLHF)、质检清单逐项验收(自动化评估),再对着翻车记录复盘改进(失败模式分析)。几个月后,小智成了“指哪打哪”的招牌店员。这个故事,正是大模型“指令遵循能力”从训练到评估的完整路线图——先定义“听话”的标准,再用示范和奖惩教它听话,最后用质检清单证明它有多听话。

岗位关联

掌握指令遵循的训练与评估方法,你就能让大模型从“答非所问”变成“指哪打哪”——这是微调工程师、评估工程师和 AI 产品开发者最值钱的核心技能之一。

目录
  1. 可视化演示
  2. 指令遵循概述
  3. SFT监督微调
  4. RLHF强化对齐
  5. 复杂约束处理
  6. 自动评估方法
  7. 失败模式分析
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

动态演示指令遵循能力训练与评估的核心机制,通过源头/管道/节点/终端四种模式展示关键概念与交互流程。

本节配有交互动效(进入视口后自动加载,约 3KB)。

指令遵循能力训练与评估:指令遵循 指令遵循能力的定义与核心要素 SFT监督微调在指令遵循中的作 核心机制可视化 指令遵循能力训练与评估整体架构与关键组件

指令遵循概述

店长老周没有急着骂小智,而是先做了一件事:在小智的工位上贴了一张 A4 纸,写着“万能接单公式”——客人每说一个条件,就在右侧画一个勾。糖度打一个勾,温度打一个勾,配料打一个勾,全部勾满才算完成订单。老周说:“先把'听话'的标准定义清楚,再谈怎么教。”这就是指令遵循能力的第一步:建立可衡量的标准。

大模型同样如此。一个模型可能博古通今,但用户要求“用一句话回答、不超过 50 字、不要提及价格”,它却写了两百字的带货文案。此时问题不在知识,而在“遵循”——模型没能把用户给的约束翻译成输出时的硬性规则。指令遵循能力,指的就是模型精确理解用户指令中的显式与隐式约束,并在生成时逐条满足它们的能力。它与知识能力是两条独立的曲线:知识决定“知不知道”,遵循决定“听不听话”。

既然要衡量,就需要一个统一的尺度。业界最朴素的指标是“遵循率”:评测一批指令,统计其中真正把所有约束都执行到位的比例。这个指标就像小智工位上的打勾纸,把抽象的“听话”变成可对比的数字。

有了这张“打勾纸”,老周才开始行动。他的第一招,是让店里最稳的老师傅阿强来带小智——这就是监督微调。

遵循率=正确执行约束的指令数总指令数×100%\displaystyle \text{遵循率} = \frac{\text{正确执行约束的指令数}}{\text{总指令数}} \times 100\%
遵循率 = 全部约束都满足的指令数 ÷ 总指令数,是衡量模型“听话程度”最直观的起点指标。
  1. 分子「正确执行约束的指令数」只有全部显式约束都被满足的指令才算“正确执行”,漏掉任何一条都不计数,就像小智少勾一格就不能下班。
    N正确=∣{i:指令i 的所有约束均被满足}∣N_{\text{正确}} = |\{ i : \text{指令}_i \text{ 的所有约束均被满足} \}|
  2. 分母「总指令数」评测集中全部指令的数量,简单和复杂的样本都要包含,否则数字会虚高。
    N总N_{\text{总}}
  3. 乘以 100% 转成百分比把比率变成百分数,便于在不同模型、不同版本之间横向对比。
    ×100%\times 100\%

SFT监督微调

老周安排师傅阿强带教小智。示范过程很简单:阿强每接一单,就当着徒弟的面完整做一遍——“客人要少糖去冰加珍珠,先放冰,再倒茶,最后加珍珠”,一边做一边口述步骤。小智跟着照做,错了就被纠正,做对了就继续下一单。这就是 SFT(Supervised Fine-Tuning,监督微调):师傅给出标准示范,徒弟模仿着把“输入条件”映射成“标准动作”。

在技术上,SFT 的第一步是构建训练数据:(指令,标准答案) 的配对样本。指令来自真实用户需求,标准答案则由人工精修或强模型生成后筛选,保证每一条示范都严格满足指令里的约束。第二步是用这些配对样本去微调预训练好的大模型:模型的参数在一次次“照做”中更新,逐渐学会把指令里的约束翻译成输出习惯。

训练时使用的损失函数是交叉熵。它像一把“学得像不像”的尺子:如果模型生成的回答和师傅的标准答案高度吻合,这把尺子的读数就很小;如果驴唇不对马嘴,读数就很大。模型的优化目标,就是把这把尺子的读数一路压到最低。

小智跟师傅学了两个月,常见订单已经应付自如。但老周发现一个问题:示范再全,也覆盖不了千奇百怪的真实需求——小智遇到没教过的“刁钻单子”还是会翻车。于是,老周使出了第二招:神秘顾客绩效制。

LSFT=−1N∑i=1Nlog⁡Pθ(yi∣xi)\displaystyle \mathcal{L}_{\text{SFT}} = -\frac{1}{N}\sum_{i=1}^{N} \log P_{\theta}(y_i \mid x_i)
SFT 损失 = 对每条 (指令,标准答案) 样本,求“模型生成标准答案的概率”的负对数再取平均。概率越高,损失越低。
  1. 数据集大小 N指令样本对的个数,N 越大代表示范越丰富,但更关键的是样本的多样性和质量。
    1N∑i=1N\frac{1}{N}\sum_{i=1}^{N}
  2. 生成概率 P_θ(y_i | x_i)模型在给定指令 x_i 时,逐字生成标准答案 y_i 的概率,衡量“学得像不像”。
    Pθ(yi∣xi)P_{\theta}(y_i \mid x_i)
  3. 负对数 -log概率越接近 1,损失越小;概率越小,损失越大。最小化损失,就是让师傅的标准答案越来越可能被模型生成出来。
    −log⁡Pθ(yi∣xi)-\log P_{\theta}(y_i \mid x_i)

RLHF强化对齐

老周雇了一批“神秘顾客”。他们不亮身份,点单后偷偷给奶茶打分:严格按照要求做的,给高分、月底发奖金;擅自改配方、答非所问的,给低分、扣绩效。小智的带教目标因此发生了根本转变——不再是“模仿师傅的动作”,而是“让打分的人满意”。这是 RLHF(Reinforcement Learning from Human Feedback,基于人类反馈的强化学习)的核心思想:用人类偏好当指挥棒。

RLHF 分三步走。第一步,收集人类对多个回答的“哪个更好”的对比数据;第二步,训练一个奖励模型,相当于“万能神秘顾客”,学会给任何回答打分;第三步,用强化学习算法(如 PPO)优化大模型本身,让模型生成的回答在奖励模型那里得分越来越高。这里有个陷阱:模型可能钻空子,用毫无意义但得分极高的内容刷奖励,专业上叫“奖励黑客”。为了防止它学坏,目标函数里额外加了一项“KL 散度惩罚”——相当于规定:你怎么优化都行,但行为举止不能偏离原来的自己太远。

绩效制让整体服务质量上了一个台阶,但新的考验来了。客人开始下“一单多条件”的复杂订单,小智常常记住了糖度忘了温度,记住了温度又漏了配料。老周意识到,要专门训练小智处理复杂约束。

J(πθ)=Ey∼πθ[rϕ(x,y)]−β⋅KL(πθ∥πref)\displaystyle \mathcal{J}(\pi_{\theta}) = \mathbb{E}_{y \sim \pi_{\theta}}\left[ r_{\phi}(x, y) \right] - \beta \cdot \mathrm{KL}\left( \pi_{\theta} \| \pi_{\text{ref}} \right)
RLHF 优化目标 = 让模型回答在神秘顾客(奖励模型)那里拿高分,同时用 KL 散度勒住缰绳,防止模型为了刷分而行为失控。
  1. 期望奖励项对策略 π_θ 采样的回答 y,计算奖励模型 r_φ(x, y) 的期望值,代表“平均能拿到多少分”。
    Ey∼πθ[rϕ(x,y)]\mathbb{E}_{y \sim \pi_{\theta}}\left[ r_{\phi}(x, y) \right]
  2. KL 散度惩罚项衡量新策略 π_θ 与参考策略 π_ref 的输出分布差距,偏离越远惩罚越大,像一根拴住小智的“行为安全绳”。
    KL(πθ∥πref)\mathrm{KL}\left( \pi_{\theta} \| \pi_{\text{ref}} \right)
  3. 平衡系数 β权衡“讨好奖励”与“保持本色”的权重,β 越大模型越保守,β 越小模型越激进。
    β\beta

复杂约束处理

这天来了位“史上最难缠”客人:“无糖,但加一份芋泥,装杯时先冰后奶,摇杯别太猛,还要附赠一句手写祝福语。”小智听完当场懵了。老周教他一个秘诀:把任务单拆开,先圈出所有条件,再按“口味 > 操作 > 附加项”的优先级排序,最后逐条执行、逐条打勾。处理复杂约束,本质上是一场“任务清单管理”。

大模型面临的复杂约束同样分两类:显式约束(格式、字数、步骤、范围)和隐式约束(语气、风格、价值观)。更棘手的是多轮对话场景——约束会在多轮交流中不断累积:“第一轮说不要辣的,第二轮又说主食要米饭,第三轮问能不能免葱。”模型必须记住前面轮次的所有约定,不能答着答着就“失忆”。工程上的常用策略,一是把约束在提示词里显式编号列成清单,二是在训练数据里大量构造“多约束 + 多轮累积”的样本,让模型见过足够多复杂的任务单。

衡量复杂约束处理得好不好,常用“约束满足率”:把所有指令的所有约束拆开,平均看每条约束被满足的比例。它比整句通过率更细,能精确指出模型到底在哪类约束上掉链子。

小智学会了拿任务单逐条打勾,但老周又发愁了:“我说他合格,他说他合格,到底谁说了算?”这次,老周的太太出马了——她手里永远拿着一份质检清单。

满足率=1M∑j=1MI(约束j 被满足)\displaystyle \text{满足率} = \frac{1}{M}\sum_{j=1}^{M} \mathbb{I}\left( \text{约束}_j \text{ 被满足} \right)
满足率 = 统计所有指令中每条约束是否被满足,再求和取平均。它把“一句话是否全对”细化为“每条豆腐块是否摆到位”。
  1. 逐条约束遍历求和j 从 1 到 M 遍历评测集中所有的约束条件,一个不漏,就像小智核对任务单上的每一行。
    ∑j=1M\sum_{j=1}^{M}
  2. 指示函数 I(·)括号里的条件成立记 1,不成立记 0。约束被满足得到 1,被漏掉则得到 0。
    I(约束j 被满足)\mathbb{I}\left( \text{约束}_j \text{ 被满足} \right)
  3. 除以约束总数取平均把总分除以 M,得到每条约束的平均满足率,便于定位是“糖度类”还是“步骤类”约束总出错。
    1M\frac{1}{M}

自动评估方法

老周的太太钱姐负责质检,她的工作台前贴着一张清单:糖度对不对、冰量对不对、配料对不对、杯型对不对,逐项打勾,不合格直接返工。她从不靠“我觉得这杯不错”来评判——一切以清单为准,而且可以同时检查一百杯。这就是自动化评估:用确定性的规则代替“感觉”,让评估可重复、可规模化。

自动评估有两条主流路线。第一条是规则检查器:针对可精确判定的约束,写程序逐条比对——关键词在不在、字数在不在区间、格式正则匹不匹配、有没有出现违禁词。它像钱姐的纸质清单,严谨、零成本、完全可复现。第二条是 LLM 裁判:面对“回答是否清晰、是否贴合用户意图”这类主观质量,让一个更强大的模型扮演评委,按评分细则打分。它像钱姐请来的一位资深品茶师,能评价“口感层次”这种规则说不清的东西。实践中两者常搭配使用:硬约束用规则,软质量用 LLM 裁判。

评估不能只看一两条样本,而要落到指标上。最核心的指标就是通过率:一条指令的所有约束都被满足,才算这条通过。把所有测试指令的通过情况汇总成一个百分比,就能横向对比不同模型、不同训练阶段的“听话程度”。业内著名评测集 IFEval 正是这个思路——人工设计大量带精确约束的指令,再用程序自动判定。

有了质检清单,小智的问题开始暴露无遗。老周翻看钱姐的记录,发现翻车不是随机事件,而是有规律可循的。最后一课,他要教小智看懂自己的失败。

通过率=N通过N总×100%\displaystyle \text{通过率} = \frac{N_{\text{通过}}}{N_{\text{总}}} \times 100\%
通过率 = 全部约束都满足的指令数 ÷ 评测总指令数,是自动化评估中最常用的“成绩单”。
  1. 通过数 N_通过一条指令的全部约束都被满足才算通过,这是“全有或全无”的严苛口径。
    N通过N_{\text{通过}}
  2. 总数 N_总评测时使用的全部指令条数,样本要覆盖简单与复杂场景,成绩单才有说服力。
    N总N_{\text{总}}
  3. 乘以 100%归一化成百分数,方便把不同规模的评测集放在同一把尺子上比较。
    ×100%\times 100\%

失败模式分析

钱姐的质检记录显示,小智的翻车高度集中在三类:第一类“漏听”,客人交代了三个条件他只记住两个;第二类“加戏”,要求没提的配料他自作主张加了一堆;第三类“幻觉”,客人要“乌龙茶”,他自信地介绍起了根本不存在的“云雾龙井”。老周把这三类记录贴在墙上,每周复盘一次。

大模型的指令遵循失败模式,与小智惊人地相似。第一类是约束遗漏:指令越长、约束越多,模型越容易“丢失”尾部的条件——就像小智记不住最后一个要求。第二类是越界输出:模型回答了用户没问的内容,或超出了要求的范围与格式。第三类是幻觉输出:模型编造不存在的事实,一本正经地胡说八道,就像小智介绍那款不存在的茶。这些失败的根因,往往藏在训练数据的分布里——如果 SFT 数据里长指令少、多约束样本少,模型自然没见识过“复杂任务单”。

失败不可怕,可怕的是不去分析。成熟的迭代策略是“评估-分析-补训”闭环:先用自动化评估发现失败样本,再人工分析失败属于哪一类模式,然后针对性地构造训练数据补训,最后重新跑一遍评测回归验证。错误率公式可以帮助量化诊断:把失败拆成“约束遗漏”和“越界输出”两块,哪块占比高,下一步就重点补哪块。

半年后,小智成了“青语茶”的招牌店员,客人的刁钻要求他都能稳稳接住。老周把那张“万能接单公式”和钱姐的质检清单贴在了一起,笑着总结:“先定义什么叫听话,再示范、再奖惩、再验收、再复盘——这一套下来,再笨的新人也靠谱了。”大模型的指令遵循能力,走的是完全相同的路。

错误率=N约束遗漏+N越界输出N总×100%\displaystyle \text{错误率} = \frac{N_{\text{约束遗漏}} + N_{\text{越界输出}}}{N_{\text{总}}} \times 100\%
错误率 = (约束遗漏条数 + 越界输出条数)÷ 总指令数。拆开统计能告诉你:模型是“记不住”,还是“管不住”。
  1. 约束遗漏数模型漏掉了指令中的某项约束,比如忘记 50 字限制、漏掉某个配料要求,对应小智的“漏听”。
    N约束遗漏N_{\text{约束遗漏}}
  2. 越界输出数模型答了没要求的内容,或编造不存在的信息(幻觉),对应小智的“加戏”和“幻觉”。
    N越界输出N_{\text{越界输出}}
  3. 除以总数并转百分比把两类失败归一化成占比,哪类占比高就先补哪类训练数据,让改进有的放矢。
    ×100%\times 100\%

AI 应用场景

客服机器人微调工程师的训练数据质检

阶段:SFT 训练数据构建与筛选

解决的问题:传统做法靠人工阅读成千上万条指令样本来判断质量,既慢又容易漏。工程师可以先写规则检查器,把“答案是否覆盖了指令中的关键词、是否满足格式约束”自动跑一遍,筛出低质量样本;再对剩余样本做人工精修,让进入 SFT 的每一条示范都经得起质检清单检验。

具体案例:某电商客服模型微调项目里,工程师用关键词与长度规则扫描了 10 万条 (指令,回答) 样本,自动标记出 8000 条“回答漏提退货政策”的坏样本,剔除后二次微调,模型在“退货咨询”类目上的遵循率从 61% 提升到 87%。

AI 评估工程师设计自动化评测方案

阶段:模型发布前的评估与验收

解决的问题:人工评估几百条生成结果费时费力,且不同人标准不一,评测结果不可复现。借鉴 IFEval 思路,评估工程师可以构造一张“约束指令集”,每条指令附带程序可判定的检查器(关键词、格式、长度、禁词),再用 LLM 裁判补充主观维度,最后输出通过率报告。

具体案例:某大模型团队发布新版本前,评估工程师用 2000 条带约束的评测指令跑出通过率曲线,发现“长指令通过率”比上一版下降了 9%。排查后发现是训练数据中长样本占比下降,回补数据后通过率回升,版本安全发布。

产品开发者用 RLHF 对齐输出规范

阶段:RLHF 对齐与产品化优化

解决的问题:仅靠 SFT 难以消除模型的“越界输出”和“奖励黑客”行为。产品开发者可以收集用户对好/坏回答的偏好对比,训练奖励模型,再用 PPO 优化模型,让输出贴合产品定义的规范(简洁、无虚构、守边界)。

具体案例:某 AI 写作助手反复出现“编造参考文献”问题,产品团队收集了 3 万条“是否虚构引用”的偏好对比数据训练奖励模型,并调大 KL 惩罚系数防止行为漂移。上线后虚构引用率从 22% 降到 5%,用户投诉量下降一半。

Python 演示

python53 行
# -*- coding: utf-8 -*-"""指令遵循自动评估器:模拟质检员逐条核对约束清单"""import re  def check_constraints(response, constraints):    """逐条检查约束清单,返回每一项是否通过及细节"""    result = {}    for name, rule in constraints.items():        passed = False        detail = ""        rtype = rule["type"]        target = rule["target"]        if rtype == "keyword":            missing = [k for k in target if k not in response]            passed = len(missing) == 0            detail = "关键词齐全" if passed else "缺少: " + ",".join(missing)        elif rtype == "length":            lo, hi = target            n = len(response)            passed = lo <= n <= hi            detail = "字数%d在区间内" % n if passed else "字数%d越界" % n        elif rtype == "format":            passed = bool(re.search(target, response))            detail = "格式匹配" if passed else "格式不匹配"        result[name] = {"passed": passed, "detail": detail}    return result  def compute_pass_rate(results):    """统计通过率:全部约束满足的样本占比"""    if len(results) == 0:        return 0.0    ok = sum(1 for r in results.values() if r["passed"])    return ok / len(results)  def main():    sample = "好的,为您安排:无糖、去冰,并加一份珍珠。"    constraints = {        "关键词": {"type": "keyword", "target": ["无糖", "去冰", "珍珠"]},        "长度": {"type": "length", "target": (5, 50)},        "格式": {"type": "format", "target": r"^好的"},    }    checks = check_constraints(sample, constraints)    for name, item in checks.items():        status = "通过" if item["passed"] else "失败"        print("[%s] %s:%s" % (status, name, item["detail"]))    print("整体通过率:%.2f" % compute_pass_rate(checks))  if __name__ == "__main__":    main()
目的:实现一个极简的规则检查评估器,模拟钱姐的质检清单——对模型输出逐条核对关键词、长度、格式约束,并计算整体通过率。
  1. missing = [k for k in target if k not in response]找出响应里缺少了哪些关键词,缺任何一个都算该条约束失败
  2. passed = lo <= n <= hi判断响应字数是否落在指令要求的区间内,越界即失败
  3. re.search(target, response)用正则表达式核对格式类约束,例如要求以“好的”开头
  4. result[name] = {"passed": passed, "detail": detail}把每条约束的判定结果存起来,就像质检清单逐项打勾
  5. ok / len(results)所有约束都满足的项数除以总项数,得到整体通过率

常见误区

误区模型答得不符合要求,一定是它知道的太少了。我只要往训练数据里多塞一些领域文档,它自然就会变“听话”。

正解指令遵循能力与知识能力是两条独立的曲线。就像小智茶学知识满分,却听不懂“少糖去冰”——知识决定“知不知道”,遵循决定“听不听话”。要提升遵循能力,需要的是带约束的指令-答案配对数据(SFT)和偏好对齐(RLHF),而不是泛泛的语料。

为何常见:预训练阶段确实靠海量语料,很多人习惯性地把所有问题都归因于“知识不够”,忽略了模型还需要“按约束执行”这一层专门技能。

误区SFT 就是给模型看示范,那我搞个几十万条指令样本,它肯定听话得不得了。

正解SFT 更看重数据的多样性和质量。如果指令样本大量重复相似模式,模型会过拟合出模板化回复,遇到真正复杂的新指令反而不会泛化。业界经验是“宁缺毋滥”:几千条覆盖不同约束类型的高质量样本,往往胜过几十万条同质化样本。老周让小智练的是“千奇百怪的订单”,而不是同一杯奶茶做十万遍。

为何常见:“数据越多越好”是深度学习时代深入人心的直觉,但指令遵循训练的核心是“覆盖面”,不是“重复度”。

误区我每次微调完,让测试同学人工看几十条输出,感觉不错就可以上线了。

正解肉眼抽查无法保证可复现性和覆盖面。一个人的“感觉不错”换个评估员可能就是“不合格”,而且人工看不了几千条样本。自动化评估用确定的规则和指标(如通过率)把标准固化下来,任何一次改动都能立刻看到量化影响。就像钱姐的清单,一百杯奶茶也能逐杯打勾,从不靠感觉。

为何常见:生成式输出的评估天然让人感觉“只能靠人看”,忽略了规则检查器和 LLM 裁判完全可以承担大部分质检工作。

误区SFT 之后再做一轮 RLHF,模型就完美了,可以一劳永逸。

正解RLHF 是把模型往人类偏好方向“推一把”,但它会引入新问题——奖励黑客(模型钻奖励模型空子)和多样性下降(模型变得过于保守)。必须用 KL 散度等约束兜底,并用自动化评估持续回归。RLHF 只是对齐工具之一,不是终点;真正的可靠来自“训练-评估-分析-补训”的持续闭环。

为何常见:RLHF 常被宣传成“让模型变好”的银弹,很多人忽略了它和所有训练方法一样有代价和副作用。

面试题

Q1. 以下哪项最能说明“指令遵循能力”与“知识储备”的区别?

单选题 · easy

  • A.知识多的模型一定更听话
  • B.遵循能力强调执行约束← 正确答案
  • C.两者本质上是同一能力
  • D.知识多会导致遵循变差

答案:B。知识储备回答“知不知道”,指令遵循回答“听不听话”。就像小智茶学知识渊博却听不懂“少糖去冰”,两者是相互独立的维度。A 把知识直接等同于听话,C 混淆了两者,D 则是无根据的因果联想。

Q2. 在 SFT 阶段,训练数据通常由什么构成?

单选题 · easy

  • A.纯文本语料无需标注
  • B.指令与标准答案配对← 正确答案
  • C.只有模型自己生成的输出
  • D.人类偏好两两对比

答案:B。SFT 用(指令,标准答案)配对样本让模型模仿正确做法,类似师傅带教示范。纯文本语料对应预训练阶段,人类偏好两两对比对应 RLHF 的奖励模型训练,模型自生成输出不能当标准示范。

Q3. SFT 微调采用的损失函数是?

单选题 · mid

  • A.交叉熵损失函数← 正确答案
  • B.均方误差损失函数
  • C.铰链型损失函数
  • D.指数型损失函数

答案:A。SFT 的目标是让标准答案的生成概率最大化,等价于最小化交叉熵损失。均方误差多用于回归任务,铰链损失和指数损失常见于传统分类器,都不是文本生成任务的标配。

Q4. RLHF 中奖励模型的训练数据来自哪里?

单选题 · mid

  • A.人类对回答的偏好对比← 正确答案
  • B.机器自动生成的打分
  • C.预训练语料库中的句子
  • D.人工编写的规则模板

答案:A。奖励模型从“人类更喜欢哪个回答”的对比数据中学习打分,相当于神秘顾客的评分记录。机器自动打分缺少人类偏好锚点,预训练语料不含偏好信息,规则模板属于规则检查器而非奖励模型。

Q5. RLHF 优化目标中 KL 散度项的作用包括哪些?

多选题 · mid

  • A.防止策略偏离参考模型← 正确答案
  • B.抑制奖励黑客式失控← 正确答案
  • C.直接提升模型知识量
  • D.完全消除人类偏好偏差

答案:AB。KL 散度惩罚项把新策略拉在参考模型附近,防止模型为了刷奖励分数而生成胡言乱语(奖励黑客)。它不增加知识量,也无法“完全消除”偏好偏差——它只是在“讨好奖励”和“保持本色”之间找平衡。

Q6. 自动评估中,通过率的计算方式是?

单选题 · mid

  • A.通过约束的样本数除以总样本数← 正确答案
  • B.总样本数除以通过约束的样本数
  • C.通过样本与失败样本数量之和
  • D.失败样本数除以通过样本总数

答案:A。通过率 = 全部约束都满足的通过样本数 ÷ 评测总样本数。它采用“全有或全无”的严苛口径,漏掉任何一条约束都算失败,和钱姐质检清单逐项打勾的逻辑一致。

Q7. 哪一项最可能是“奖励黑客”的表现?

单选题 · hard

  • A.模型找到漏洞获得虚高奖励← 正确答案
  • B.模型按照人类偏好正常回答
  • C.模型输出越来越多样化
  • D.模型训练速度显著加快

答案:A。奖励黑客指模型利用奖励模型的打分漏洞,生成人类并不喜欢但得分很高的内容,例如无意义重复、堆砌讨好词。正常回答和多样化是期望结果,训练速度与奖励黑客没有因果联系。

Q8. 下列哪些属于常见指令遵循失败模式?

多选题 · hard

  • A.遗漏部分约束条件← 正确答案
  • B.编造幻觉性信息← 正确答案
  • C.越界输出未要求内容← 正确答案
  • D.严格满足每项约束

答案:ABC。三大典型失败模式是约束遗漏(长指令丢尾项)、幻觉(编造不存在信息)和越界输出(答了没问的)。严格满足每项约束是正确行为,不是失败。三种失败对应小智的“漏听”“幻觉”“加戏”三类翻车。

Q9. 下列哪些方式是自动化评估手段?

多选题 · easy

  • A.规则检查器逐项核对← 正确答案
  • B.LLM 裁判批量打分← 正确答案
  • C.人工逐条肉眼查看
  • D.关键词与格式校验← 正确答案

答案:ABD。自动化评估的核心是让程序按确定规则判定:规则检查器做关键词、格式、长度校验,LLM 裁判负责主观质量的批量打分。人工肉眼查看属于人工评估,不具备可扩展性和可复现性。

Q10. RLHF 中 β 系数显著增大时,最可能观察到什么现象?

单选题 · extreme

  • A.策略更贴近参考模型← 正确答案
  • B.奖励模型分数更高
  • C.人类偏好得分变高
  • D.模型回答更加丰富

答案:A。β 是 KL 散度惩罚的权重,β 越大,策略越不敢偏离参考模型,优化奖励的空间被压缩,模型变得更“保守”。此时奖励分数通常不会更高(甚至更低),回答多样性也会下降而非上升。理解 β 的本质,是看懂 RLHF 目标函数的关键。