指令遵循是最具实际重要性的 LLM 能力。用户更关心的不是模型是否“知道”更多事实,而是它是否按照他们实际要求的去做。一个写出优美散文但忽略格式要求的模型,不如一个能可靠遵循指令的模型有用。这就是为什么 IFEval 和其他指令遵循基准测试已成为模型评估的核心。
指令遵循通过指令微调(在指令-回复对上的 SFT)进行训练,并通过 RLHF/DPO(学习偏好准确遵循指令的回复)进行优化。指令遵循的质量在很大程度上取决于训练数据的多样性和精确性:看到很多"恰好 3 项"示例的模型学会了计数;只看到模糊指令的模型则不会。
常见的指令遵循失败:忽略长度约束("简短回答"→仍然写段落)、格式漂移(以要求的格式开始但转回散文)、约束遗忘(遵循第一个约束但忘记复杂指令中后面的约束),以及过度遵循(过于字面或过于宽泛地解释模糊指令)。这些失败在较小模型中更常见,随着规模增大而变得罕见,但即使是前沿模型偶尔也会遗漏约束。
当指令冲突时,指令遵循变得复杂:系统提示说"始终以 JSON 回复",但用户说"给我写首诗"。大多数模型实现了一个指令层级,其中系统级指令优先于用户消息,但边界是模糊的。设计良好的应用会清晰地构建其指令层级,并测试不同级别指令可能冲突的边缘情况。