想象一家餐厅的后厨里来了位新学徒阿南。他刀工不错、颠勺也有模有样,可第一天上班就闹了笑话——客人点“宫保鸡丁,少油,不要花生”,他端出一盘油汪汪、撒满花生的宫保鸡丁。问题不在手艺,而在他没把客人的每一条备注放在心上。让大模型“听懂并执行用户指令”的能力,就叫指令遵循。本文用后厨学徒的成长故事,带你看懂指令遵循的原理:指令约束有哪些类型、RLHF 和 RLAIF 如何训练、IFEval 怎样评估,以及如何提升这项能力。

岗位关联

掌握指令遵循原理,你就能训练出真正“听话”的模型——这是对齐工程师的核心技能,也是 AI 产品体验从“能用”迈向“好用”的分水岭。

目录
  1. 可视化演示
  2. 指令遵循概论
  3. 指令约束类型
  4. RLHF原理
  5. RLAIF原理
  6. IFEval评估
  7. 遵循性提升
  8. 实践与挑战
  9. AI 应用场景
  10. Python 演示
  11. 常见误区
  12. 面试题

可视化演示

交互式展示指令约束类型、RLHF训练流程与IFEval评估基准,可视化大模型指令遵循能力的核心维度与提升策略。

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

指令约束的四大类型 格式约束(JSON/Markdown)、长度约束、语言约束、内容约束 遵循率 = 满足约束数 / 总约束数 约束类型决定评估难度与验证方式。

指令遵循概论

厨房学徒阿南的第一次考核是这样的——主厨递给他一张皱巴巴的点菜单,上面写着“宫保鸡丁,少油,不要花生,盛盘时黄瓜围边”。阿南的宫保鸡丁在味道上无懈可击,但客人退回来三次:第一次油太多,第二次花生没摘干净,第三次摆盘完全没按备注来。阿南委屈地说:“菜我炒得很好啊!”主厨叹了口气:“炒得好是基础,听得懂要求才是你现在要练的本事。”

大模型也一样。一个语言模型可能知识渊博、文笔优美,但如果用户让它“用三句话总结、不要出现专业术语、结尾给一个例子”,它却写出一篇长论文——那它就不是一个“好用”的模型。让模型的输出严格符合用户指令约束的能力,在 AI 领域称作指令遵循,它是对齐人类需求的核心能力,也是大模型从“会说话”走向“会办事”的关键一跃。

从数学上看,指令遵循表现为一个带条件的生成过程。模型在每一步生成 token 时,不仅要看用户问题 x,还要看指令 I 和已经生成的前文。指令 I 以条件的形式进入概率分布,从而“牵引”输出的方向。条件概率写作:

有了“订单”作为条件,阿南每炒一步都会回头看备注。指令遵循的本质,就是让“订单”始终在场——无论生成多长的回答,模型的每一步都受约束牵引。

P(y∣x,I)=∏t=1TP(yt∣x,I,y<t)\displaystyle P(y \mid x, I) = \prod_{t=1}^{T} P(y_t \mid x, I, y_{<t})
通俗地说:模型生成每一个字时,都时刻回应着“订单上的备注”。
  1. 条件概率表示在已知问题 x 和指令 I 时,输出整段 y 的概率。相当于后厨里“已知客人点了宫保鸡丁且备注少油”之后,端出合格菜品的概率。
    P(y∣x,I)P(y \mid x, I)
  2. 连乘分解一条输出 y 由 T 个 token 组成,整段概率等于每个 token 条件概率的连乘。炒菜的每一步都基于前一步的结果和订单要求。
    ∏t=1T\displaystyle \prod_{t=1}^{T}
  3. 生成项生成第 t 个 token 时,模型会参考 x、I 以及已经生成的 y_{<t}。写每一句话时都瞄一眼订单备注,再决定下一笔怎么写。
    P(yt∣x,I,y<t)P(y_t \mid x, I, y_{<t})

指令约束类型

阿南的第二课,是学会“读备注”。一张标准的点菜单,备注五花八门:“少油”是口味上的内容约束,“不要花生”是排除项,“黄瓜围边”是摆盘格式,“分量适中”是长度约束。阿南发现,只要把备注分门别类记牢,出错的概率就大大降低。

指令约束同样可以分类。AI 产品里最常见的三类约束是:格式约束、长度约束和内容约束。格式约束规定输出的组织方式,比如“用 JSON 返回”“分三点列出”“以'结论'开头”;长度约束规定输出的篇幅,比如“不超过 100 字”“3 到 5 个句子”;内容约束规定输出的实质,比如“包含关键词'对齐'”“语气温和”“不要提竞争对手”。

长度约束在工程上最直观,通常用一个闭区间来限定。设输出文本的字符数为 len(y),约束就写成:

分类让阿南豁然开朗——原来每一条备注都有它的“验收方式”。同理,工程师在设计指令时先想清楚约束属于哪一类,才能为后续的评估和训练指明方向。

Lmin⁡≤len(y)≤Lmax⁡\displaystyle L_{\min} \le \text{len}(y) \le L_{\max}
通俗地说:菜的分量既不能太少让客人吃不饱,也不能太多浪费食材——订单上写清楚了区间。
  1. 长度函数len(y) 表示输出文本 y 的字符数,相当于称一下菜品的重量。
    len(y)\text{len}(y)
  2. 下界约束输出不能短于 L_min。分量太少,客人不满意。
    Lmin⁡≤len(y)L_{\min} \le \text{len}(y)
  3. 上界约束输出不能长于 L_max。分量太多,既超时又浪费。
    len(y)≤Lmax⁡\text{len}(y) \le L_{\max}

RLHF原理

光看懂备注还不够,阿南得知道自己的菜到底合不合格。前三个月,主厨会亲自品尝每一道菜,然后在练习本上写下分数和改进意见。阿南照着意见改,越做越稳。这个过程,像极了 RLHF——基于人类反馈的强化学习。

RLHF 是让模型遵循指令的经典训练路径,分三步:第一步收集人类偏好数据,即让标注员比较两个回答哪个更好;第二步用这些偏好训练一个奖励模型,让它可以自动给回答打分;第三步用强化学习算法(如 PPO)微调模型,让模型输出的期望奖励越来越高。

奖励模型的训练,本质上是一个“学会排序”的任务。对同一问题 x,标注员在回答 y_w(更好)和 y_l(更差)之间做出选择,奖励模型 r 要尽量让好回答的分数高于差回答。训练损失写成:

阿南发现,主厨把自己的品味浓缩成一本“评分手册”——奖励模型。从此主厨可以偶尔歇口气,由评分手册来把关每道菜是否合格。这就是 RLHF 的精妙之处:用有限的专家反馈,训练出一个可以无限复用的评价器。

LRM=−E(x,yw,yl)∼D[log⁡σ(r(x,yw)−r(x,yl))]\displaystyle \mathcal{L}_{\text{RM}} = -\mathbb{E}_{(x, y_w, y_l) \sim \mathcal{D}} \left[ \log \sigma \big( r(x, y_w) - r(x, y_l) \big) \right]
通俗地说:教会奖励模型“哪盘菜更好”——它学会之后,主厨就不必每次都亲自试菜了。
  1. 期望符号对所有偏好样本求平均损失。相当于把主厨一学期的试菜记录汇总成统计规律。
    E(x,yw,yl)∼D\mathbb{E}_{(x, y_w, y_l) \sim \mathcal{D}}
  2. 分数差奖励模型给好回答的分数减去给差回答的分数,差距越大越好。好菜和坏菜的评分差拉得越开,奖励模型越有判断力。
    r(x,yw)−r(x,yl)r(x, y_w) - r(x, y_l)
  3. sigmoid 与对数把分数差压到 0 到 1 之间并取对数,作为分类损失。这是“二选一”分类器常用的损失,越小代表排序越准。
    log⁡σ(⋅)\log \sigma(\cdot)
  4. 负号损失前加负号,把“最大化排序准确率”变成“最小化损失”,方便优化器下降。
    −E[⋅]-\mathbb{E}[\cdot]

RLAIF原理

但餐厅生意越来越好,主厨不可能每道菜都亲自试。于是老板请来了一位神秘的“AI 大厨”——它依据餐厅的《烹饪宪章》(少油、无花生、按时出菜)来试菜打分。AI 大厨不知疲倦、随叫随到,这就是 RLAIF——基于 AI 反馈的强化学习。

RLAIF 与 RLHF 的流程几乎相同,唯一区别是反馈来源从人换成了大模型。研究人员先写下若干条原则(称为宪法),再让一个“评委模型”依据这些原则对回答进行批判和打分。由于 AI 反馈可以批量生产,成本远低于雇用大量人类标注员。

设评判原则集合为 C,评委模型对回答 y 给出的奖励可以写作一个条件打分函数:

当然,AI 大厨也有自己的口味偏执——它可能在风格上更机械,或过度追求“正确”而缺乏人情味。所以成熟的后厨会让 AI 大厨与真人主厨分工:海量反馈交给 AI,关键决策交给人类。这种混合反馈对齐,正是许多前沿模型的选择。

rAI(x,y)=Judge(x,y∣C)\displaystyle r_{\text{AI}}(x, y) = \text{Judge}\big(x, y \mid C\big)
通俗地说:AI 大厨翻开《烹饪宪章》,对照每一条原则给菜品打分。
  1. 评委函数Judge 表示评委模型,输入是问题 x 和回答 y。AI 大厨“试吃”并给出分数。
    Judge(x,y)\text{Judge}(x, y)
  2. 宪法条件竖线后的 C 表示打分必须依据原则集合。每一条金科玉律都是评分表上的检查项。
    (⋅∣C)(\cdot \mid C)
  3. AI 奖励r_AI 是 AI 给出的奖励信号,用于替代或补充人类奖励。在强化学习环节里,它扮演的是和人类奖励相同的“打分员”角色。
    rAIr_{\text{AI}}

IFEval评估

如何知道阿南真的学会了看订单?后厨制定了一套质检规程:质检员拿着订单清单逐项打勾——“少油,勾”“无花生,勾”“黄瓜围边,没做到,打叉”。只要备注是可验证的,考核就能自动化。这套思路对应着指令遵循的评估基准 IFEval。

IFEval 是斯坦福等机构提出的指令遵循评估基准,核心思想是构造“可验证指令”——比如格式约束“用 JSON 输出”、长度约束“80 到 120 字”、关键词约束“必须包含'人工智能'”。每条指令都能用程序自动检查,不需要人工主观打分,因此可以大规模、低成本、可复现地评估模型。

IFEval 最常用的指标是指令级精确率:看模型的回答满足了多少条指令。给定 N 条指令,指示函数 I[·] 在约束满足时取 1,否则取 0,指标写成:

有了 IFEval 这张质检单,阿南的进步变得可度量:从上周的 40% 合格率到本周的 80%。对工程师来说,评估基准就是训练路上的里程碑——没有它,一切“感觉变好了”都只是错觉。

Accinst=1N∑i=1NI(Ci(yi)=1)\displaystyle \text{Acc}_{\text{inst}} = \frac{1}{N} \sum_{i=1}^{N} \mathbb{I}\big(C_i(y_i) = 1\big)
通俗地说:十道菜对应十条备注,全部做到才算合格;质检报告就是每个“勾”的统计表。
  1. 平均值1/N 乘以求和,得到“平均每道菜满足备注的比例”。这就是指令级精确率。
    1N∑i=1N\frac{1}{N} \sum_{i=1}^{N}
  2. 指示函数当第 i 条约束被满足时取 1,否则取 0。质检员打勾或打叉。
    I(⋅)\mathbb{I}(\cdot)
  3. 约束判定C_i(y_i) 表示对第 i 条指令约束的自动检测结果。程序化质检员调用检查函数,输出 1 或 0。
    Ci(yi)=1C_i(y_i) = 1

遵循性提升

质检报告显示,阿南在“多备注叠加”的订单上总是丢分——一条“带 JSON、限 100 字、含关键词”的复杂指令,他常常顾此失彼。主厨给他设计了三个专项训练,对应着业界提升指令遵循的三大技术方向。

第一是数据质量增强:在训练数据里加入大量“高难度复杂指令”样本,让模型见多识广;第二是指令层次遵循:人类安全指令 > 用户指令 > 系统指令 > 模型默认偏好,当指令冲突时按优先级执行,就像后厨里“食品安全规范永远压过客人的特殊要求”;第三是推理策略配合:比如采样后先自查,不合格就重新生成(rejection sampling),或者把复杂指令拆解成子任务再执行。

从生成的角度看,提升指令遵循就是让模型在满足全部约束的前提下寻找最优回答。带约束的生成目标写作:

三个专项训练配合下来,阿南面对复杂订单终于不再手忙脚乱:先看安全红线,再读每一条备注,最后上菜前自查一遍。对模型而言,这意味着从数据、训练到推理的全链路配合,任何一环缺位都会在质检单上现出原形。

y∗=arg⁡max⁡y  P(y∣x,I)subject toC(y)=1\displaystyle y^{*} = \arg\max_{y} \; P(y \mid x, I) \quad \text{subject to} \quad C(y) = 1
通俗地说:在“所有备注都打勾”的菜里面,挑味道最好的一盘。
  1. arg max在所有可能的输出 y 中选出概率最高(即模型认为最好)的那一个。相当于从所有备选菜品里挑最满意的一盘。
    arg⁡max⁡yP(y∣x,I)\arg\max_{y} P(y \mid x, I)
  2. 约束条件subject to 后面是硬性要求——C(y)=1 表示所有约束必须满足。备注一个都不能漏,漏了就出局。
    subject toC(y)=1\text{subject to} \quad C(y) = 1

实践与挑战

半年后,阿南已经能独立掌勺,但他也遇到了新麻烦:有一次他为了“刷高分”,偷偷把每道菜都做成重辣——因为质检单上写着“口味浓郁”。短期评分上去了,客人却投诉不断。这就是业界常说的奖励黑客:模型找到一条钻空子的捷径,让奖励分数虚高,真实指令遵循反而下降。

防止“刷分”的关键,是在强化学习目标里加一条“安全带”——KL 散度惩罚,约束模型不能偏离参考模型太远。完整的 RLHF 优化目标可以写成:

阿南最终明白:真正的好厨师不是“会刷分的人”,而是在长期考核中既能让客人满意、又不偏离本心的人。模型对齐亦然——指令遵循是一场与约束共舞的长期修行,理解原理,才能在工程实践中走得更稳。

max⁡πθ  Ey∼πθ(⋅∣x)[r(x,y)]−β DKL(πθ(⋅∣x) ∥ πref(⋅∣x))\displaystyle \max_{\pi_\theta} \; \mathbb{E}_{y \sim \pi_\theta(\cdot|x)}\big[ r(x, y) \big] - \beta \, D_{\text{KL}}\big( \pi_\theta(\cdot|x) \,\|\, \pi_{\text{ref}}(\cdot|x) \big)
通俗地说:奖励是“这道菜客人爱不爱吃”,KL 惩罚是“做法不能偏离菜谱太离谱”——两者平衡,才不翻车。
  1. 策略期望从当前模型策略 π_θ 采样输出,计算奖励的期望。阿南按当前手艺做一堆菜,看看平均得分。
    Ey∼πθ(⋅∣x)[r(x,y)]\mathbb{E}_{y \sim \pi_\theta(\cdot|x)}[r(x, y)]
  2. KL 惩罚衡量新模型 π_θ 与参考模型 π_ref 的分布差异,差异越大惩罚越重。做法越偏离训练过的“安全菜谱”,越要踩刹车。
    β DKL(πθ ∥ πref)\beta \, D_{\text{KL}}(\pi_\theta \,\|\, \pi_{\text{ref}})
  3. 最大化总目标是在“拿高分”和“不跑偏”之间取平衡。这正是 RLHF 在实践中反复调试的核心矛盾。
    max⁡πθ\max_{\pi_\theta}

AI 应用场景

智能客服的结构化输出

阶段:对齐训练(RLHF) + 评估(IFEval)

解决的问题:传统客服模型自由发挥,回复格式混乱、长度不可控。用户在等一个明确的解决方案,模型却先聊了三行客套话。通过指令约束 + RLHF 微调,模型可以严格按 JSON 模板输出,让下游系统直接解析。

具体案例:某电商平台要求客服机器人输出 {"情绪", "解决方案", "话术"} 结构的 JSON,且总长度不超过 80 字。对齐工程师先构建高约束训练集,再用 IFEval 风格规则做回归测试。上线后格式错误率从 12% 降到 0.5%,用户等待时间缩短一半。

内容创作平台的长度与风格控制

阶段:推理策略配合 + 约束检查

解决的问题:公众号助手生成文章时,标题经常超长、风格偏离、关键词遗漏。人工逐篇审核成本太高,需要一种“自动验收”机制。

具体案例:内容平台设计了一套指令模板:“标题 10 到 30 字、必须包含核心关键词、正文分三段、结尾给一句金句”。推理时一次生成多个候选,程序自动筛选满足全部约束的那一个。这种做法相当于“多做几盘菜,端出最符合备注的一盘”。

代码助手的格式约束

阶段:数据增强 + 指令层次遵循

解决的问题:编程助手被要求“只输出代码,不要解释”时,仍然喋喋不休地讲解思路,打断开发者的复制粘贴流程。

具体案例:团队收集大量“仅代码”指令数据做指令微调,同时按“安全 > 用户 > 系统”的指令层次重新设计提示词——当用户明确要求“不要解释”,系统提示不得覆盖这一决定。最终模型在代码格式约束上的满足率提升了 40%。

Python 演示

python61 行
import re  def check_length(text, min_len, max_len):    n = len(text)    return min_len <= n <= max_len, n  def check_keyword(text, keyword):    return keyword in text  def make_eval_set():    examples = []    template = "请写一句包含「{kw}」的话,长度在 {lo} 到 {hi} 个字符之间。"    specs = [("人工智能", 10, 30), ("大模型", 8, 25), ("对齐", 6, 20)]    for i, (kw, lo, hi) in enumerate(specs):        examples.append({            "id": i,            "instruction": template.format(kw=kw, lo=lo, hi=hi),            "keyword": kw,            "min_len": lo,            "max_len": hi,        })    return examples  def mock_generate(example):    kw = example["keyword"]    base = kw + "是强大的工具,需要合理使用。"    if len(base) < example["min_len"]:        base = base + "我们要持续学习。"    if example["id"] == 1:        base = "短。"  # 模拟模型在长度约束上失败    return base  def evaluate(items, outputs):    ok_inst = 0    detail = []    for item, out in zip(items, outputs):        ok_len, length = check_length(out, item["min_len"], item["max_len"])        ok_kw = check_keyword(out, item["keyword"])        followed = ok_len and ok_kw        ok_inst += int(followed)        detail.append((item["id"], followed, ok_len, ok_kw, length))    return ok_inst / len(items), detail  def main():    items = make_eval_set()    outputs = [mock_generate(x) for x in items]    acc, detail = evaluate(items, outputs)    print("指令级精确率: {:.0%}".format(acc))    for i, followed, ok_len, ok_kw, length in detail:        print("用例{}: 满足={} 长度={}({}字) 关键词={} 输出={}".format(            i, followed, ok_len, length, ok_kw, outputs[i]))  if __name__ == "__main__":    main()
目的:用 30 行代码实现一个迷你 IFEval 评估器,自动检查模型输出是否满足长度和关键词约束,并计算指令级精确率。
  1. def check_length(text, min_len, max_len):定义长度约束检查函数,返回是否达标和实际长度。
  2. return min_len <= n <= max_len, n用闭区间判断长度是否落在订单备注的范围内。
  3. template = "请写一句包含「{kw}」的话,长度在 {lo} 到 {hi} 个字符之间。"构造 IFEval 风格的可验证指令模板。
  4. if example["id"] == 1:模拟模型在第二条用例上长度失败,用于演示评估如何抓住不合格输出。
  5. followed = ok_len and ok_kw指令级严格判定:所有约束都满足才算通过,漏一条就出局。
  6. ok_inst / len(items)计算指令级精确率,对应 IFEval 的核心指标 Acc_inst。
  7. if __name__ == "__main__":可执行入口,直接运行脚本即可看到质检报告。

常见误区

误区我一直以为让模型听话只是写提示词的事,把需求描述得详细一点,模型自然就遵循了。训练阶段跟这个能力没什么关系吧?

正解提示工程是“使用阶段”的技巧,相当于点菜时把备注写清楚;但指令遵循的根本能力来自“训练阶段”的对齐,包括指令微调和 RLHF。一个没经过对齐训练的模型,就像没学过看订单的学徒,你备注写得再详细他也看不懂。两件事是“用得好”和“学得会”的区别。

为何常见:因为大多数用户接触模型的入口就是对话界面,容易把一切效果都归因于提示词,而看不到背后的训练成本。

误区我一直以为 RLHF 就是让模型变得客气、安全、不骂人,跟“遵循格式、控制长度”这些硬性要求没什么关系。

正解礼貌和安全性只是 RLHF 的表现之一。RLHF 的本质是让模型的输出最大化人类偏好奖励,这个奖励完全可以包含格式约束、长度约束、内容约束等“硬指标”。奖励模型就像主厨的评分手册,里面既写着“摆盘要整齐”,也写着“口味要温和”——都是可量化的标准。

为何常见:公开的 RLHF 讨论大多集中在“无害性”和“有用性”上,导致人们忽略了它同样在塑造模型的指令执行精度。

误区RLAIF 用 AI 生成反馈,比雇人标注便宜得多,那是不是以后就不用人类反馈了?全面换成 AI 大厨就好。

正解AI 评委也有自己的“口味偏执”——它在风格上更机械、更趋同,甚至会把模型的隐性偏见放大。业界的主流做法是混合反馈:海量粗粒度反馈交给 AI,关键细粒度判断留给人类。就像后厨里 AI 大厨批量把关普通菜品,但招牌菜和投诉重灾区的菜,主厨还得亲自尝。

为何常见:看到“AI 替代人工”的宣传容易过度乐观,忽略了 AI 反馈也有偏置和质量上限。

误区只要模型没满足复杂指令,就认定是它笨。一条指令带三个约束都做不好,这模型肯定不行。

正解复杂指令失败的根因常是多方面的:训练数据的约束分布不够、约束之间存在冲突、指令表述模糊。即使是最好的模型,面对“互相矛盾的备注”也会无所适从——比如又要“绝对辣”又要“不辣”。工程师的职责不只是怪模型,还要通过数据增强、指令分解、层次优先级来系统性提升。

为何常见:人们习惯把失败归因为“能力不足”,而忽略了数据分布和指令设计这些系统性因素。

误区IFEval 得分 90% 以上,说明这个模型在指令遵循上已经满级了,可以放心上线。

正解IFEval 只测“可验证约束”,即程序能自动判断的格式、长度、关键词。它测不到隐含指令、长上下文中的深层指令、需要推理的间接要求。就像一个质检单只勾选了“摆盘、分量、少油”,却测不出“客人是否真的吃得开心”。所以 IFEval 是重要参考,不是能力的全部证明。

为何常见:评估基准给出一个漂亮的数字,人们本能地把它当作“能力满分”,忽略了基准覆盖范围的局限。

面试题

Q1. 指令遵循训练的核心目标是下列哪项?

单选题 · easy

  • A.提升模型生成流畅度
  • B.让输出满足指令约束← 正确答案
  • C.压缩模型参数量
  • D.加快模型推理速度

答案:B。指令遵循的核心是让输出严格符合用户指令,如格式、长度、内容约束。提升流畅度是语言建模目标,压缩参数和加快推理是工程优化目标,都与“听懂指令”无关。就像学徒的核心目标是看订单做菜,而不是练颠勺花活。

Q2. 下列哪一项属于输出格式约束?

单选题 · easy

  • A.回答不超过一百字
  • B.语气保持温和礼貌
  • C.必须包含结论小标题← 正确答案
  • D.尽量不使用专业术语

答案:C。格式约束规定输出的组织方式,“必须包含结论小标题”属于格式约束。A 是长度约束,B 是语气(内容约束),D 是内容约束。好比订单备注里“黄瓜围边”是摆盘格式,“分量适中”是长度。

Q3. RLHF 训练流程的第一个环节通常是?

单选题 · easy

  • A.收集人类偏好数据← 正确答案
  • B.直接部署线上推理
  • C.压缩模型参数量
  • D.修改模型网络结构

答案:A。RLHF 第一步是收集人类偏好数据,即标注员比较回答优劣;之后再训练奖励模型、用 PPO 微调。部署推理、压缩参数、改网络结构都不是 RLHF 的步骤。好比主厨先记录试菜评分,才能写评分手册。

Q4. IFEval 评估基准最突出的特点是?

单选题 · mid

  • A.只评估模型的推理速度
  • B.只测可验证的指令约束← 正确答案
  • C.完全依赖人工主观打分
  • D.不使用任何统计指标

答案:B。IFEval 的核心是构造可验证指令,如格式、长度、关键词,全部用程序自动检测,不依赖主观打分。A 说反了,C 与 IFEval 自动化理念相反,D 不成立因为指令级精确率就是统计指标。

Q5. 下列哪些属于指令约束的类型?

多选题 · mid

  • A.输出文本的格式约束← 正确答案
  • B.输出文本的长度约束← 正确答案
  • C.模型参数的规模约束
  • D.输出内容的关键词约束← 正确答案

答案:ABD。指令约束针对的是模型输出本身,包括格式(JSON、标题)、长度(字数区间)、内容(关键词、语气)。模型参数规模是架构层面的问题,不是用户指令能约束的对象。对应到后厨,备注只会写“怎么摆盘、多少分量、什么口味”,不会规定厨师用哪口锅。

Q6. 提升大模型指令遵循能力的常用技术包括?

多选题 · mid

  • A.增加推理策略配合← 正确答案
  • B.删除所有人工反馈
  • C.提升训练数据的质量← 正确答案
  • D.引入指令层次原则← 正确答案

答案:ACD。提升指令遵循的三大方向是数据质量增强、指令层次遵循、推理策略配合(如拒绝采样、子任务分解)。删除人工反馈是错误做法,人类反馈(RLHF)仍是高质量对齐的重要来源,RLAIF 也只是“替代部分”而非“删除全部”。

Q7. RLAIF 与 RLHF 的主要区别在于?

单选题 · mid

  • A.完全取消训练奖励模型
  • B.用规则替代所有奖励信号
  • C.AI反馈替代部分人类反馈← 正确答案
  • D.不再使用强化学习算法

答案:C。RLAIF 的流程与 RLHF 相同,只是反馈来源从人类标注换成 AI 评委(依据宪法原则打分)。它不取消奖励模型,也不会完全替代人类反馈——业界通常采用混合对齐,关键决策仍由人把关。

Q8. 奖励模型训练时,对偏好对的损失函数形式是?

单选题 · single

  • A.最小化生成文本的困惑度
  • B.最大化偏好对之间的分数差
  • C.最小化偏好排序的交叉熵← 正确答案
  • D.最大化奖励模型的预测方差

答案:C。奖励模型把“哪个回答更好”看作二分类问题,损失为偏好排序的交叉熵,即对好回答与差回答的分数差做 sigmoid 再取负对数。A 是语言模型的损失,D 与训练目标无关,B 描述的是直觉效果而非精确的损失形式。

Q9. 下列哪些属于 IFEval 中“可验证约束”的例子?

多选题 · hard

  • A.要求输出包含特定关键词← 正确答案
  • B.要求输出长度在指定区间← 正确答案
  • C.要求必须包含某个代码块← 正确答案
  • D.要求回答温柔且有同理心

答案:ABC。可验证约束是能靠程序自动判定“是/否”的要求:关键词存在性、长度区间、是否含代码块都可以写检查函数。D 是主观感受,程序无法判断“温柔”和“同理心”的边界,因此不属于 IFEval 的可验证约束。

Q10. 关于奖励过度优化(reward hacking)的描述,正确的是?

单选题 · extreme

  • A.参数量超出硬件显存限制
  • B.奖励分数高但指令遵循下降← 正确答案
  • C.训练数据重复导致过拟合
  • D.推理输出总是超出指定长度

答案:B。奖励黑客指模型找到钻空子的捷径让奖励分数虚高,却偏离真实用户需求,导致“分数好看、实际变差”。A 是硬件问题,C 是数据问题,D 是约束失败——三者都不是“利用奖励漏洞”的机制。