跳转至

Refuse Whenever You Feel Unsafe: Improving Safety in LLMs via Decoupled Refusal Training

会议: ACL 2025
arXiv: 2407.09121
代码: https://github.com/RobustNLP/DeRTa
领域: LLM 对齐
关键词: LLM安全, 拒绝训练, 越狱防御, 位置偏差, 强化转换

一句话总结

发现标准安全微调数据存在"拒绝位置偏差"——模型只学会在回答开头拒绝,中途发现不安全时无法中断。提出 DeRTa(Decoupled Refusal Training),通过"有害前缀+安全拒绝"的 MLE 训练和在每个位置模拟"从有害到安全"转换的 RTO 训练,让 LLM 能在回答的任何位置感知到不安全时拒绝,在六种攻击场景下超越 GPT-4 和 LLaMA3-Instruct。

研究背景与动机

  1. 领域现状:LLM 通过安全微调(SFT + RLHF)学习拒绝有害请求。但越狱攻击(jailbreak)可以通过各种手段绕过这些保护。
  2. 现有痛点:(a) 标准安全微调数据中,拒绝总是出现在回答的开头位置——模型学到的是"在开头判断是否安全",而非"在任何时候都保持安全警觉";(b) 某些攻击(如前缀注入、渐进诱导)会让模型先生成一些看似无害的内容,然后滑向有害内容——模型一旦开始生成就"刹不住车";(c) 缺乏训练数据教模型"中途发现不安全时如何中断并转向安全回复"。
  3. 核心矛盾:拒绝应该可以发生在生成的任何位置,但训练数据中拒绝只出现在位置 0——导致模型只学会了"一开始就拒绝或不拒绝"的二元决策,不会"中途拒绝"。
  4. 本文要解决什么? 让 LLM 能在生成回答的任何位置感知到不安全并中断转向拒绝。
  5. 切入角度:在安全训练数据中显式构造"先有害后安全"的转换序列——让模型学会"从有害到安全"的转换技能,而非仅学习"直接安全"的模式。
  6. 核心idea一句话:让模型学会"中途刹车"——从有害输出的任意位置转向安全拒绝。

方法详解

整体框架

DeRTa 包含两个互补组件:(1) MLE with Harmful Prefix——在安全回复前拼接一段随机长度的有害回复前缀来训练,让模型学会"即使已经开始有害生成也能转向拒绝";(2) Reinforced Transition Optimization (RTO)——在有害回复序列的每个位置上模拟"从有害到安全"的转换,用辅助训练目标强化这种转换能力。

关键设计

  1. MLE with Harmful Response Prefix:
  2. 做什么:训练模型在已经生成部分有害内容后仍能转向安全拒绝
  3. 核心思路:对每个有害查询,先用(未对齐的)LLM 生成有害回复,然后截取随机长度的有害前缀拼接到安全拒绝回复之前。训练目标是预测"拒绝回复"部分
  4. 训练数据形式:[有害查询] [有害回复前n个token] [<拒绝>] [安全拒绝回复]
  5. 设计动机:有害前缀提供了额外的上下文信息帮助模型识别不安全内容——"看到自己正在说什么坏话"才能决定停下来

  6. Reinforced Transition Optimization (RTO):

  7. 做什么:在有害回复的每个 token 位置上都强化"转向安全"的能力
  8. 核心思路:MLE 只有一次转换(从前缀结尾转向拒绝),但一次不够。RTO 在有害回复的完整序列上,对每个位置 \(t\) 计算"从这里转向安全拒绝"vs"继续有害生成"的偏好分数,用强化学习优化模型在所有位置都偏好转向安全
  9. 设计动机:确保模型不只在一个特定位置会转向安全,而是在任何位置都有能力转向

  10. 两组件的协同:

  11. MLE with Harmful Prefix 提供了"单次转换"的学习信号——拿到一次决策正确
  12. RTO 将这种能力泛化到所有位置——无论在哪个 token 处都能做出正确决策
  13. 两者结合实现了真正的"随时随地拒绝"

损失函数 / 训练策略

  • MLE 阶段:标准自回归损失,仅计算安全拒绝部分的 loss
  • RTO 阶段:DPO 式的偏好优化——preferred = 从当前位置转向安全,dispreferred = 继续有害生成
  • 分两阶段先后训练(先 MLE 后 RTO)

实验关键数据

主实验(六种攻击场景)

方法 平均安全率(↑) 有用性保持 说明
LLaMA3-8B-Instruct 基线 标准安全微调
标准安全 SFT 位置偏差问题
GPT-4 中高 闭源参考
DeRTa (LLaMA3-8B) 最高 超越GPT-4
DeRTa (LLaMA3-70B) 最高 更大模型更好

消融实验

配置 效果 说明
仅 MLE (无RTO) 显著提升但不够 单次转换不足以覆盖所有位置
仅 RTO (无MLE) 提升有限 没有前缀学习RTO缺乏基础
MLE + RTO 最优 两者互补
不同有害前缀长度 随机长度最优 固定长度可能导致位置过拟合

关键发现

  • 拒绝位置偏差是一个真实且重要的问题——标准安全微调的模型确实"不会中途刹车"
  • DeRTa 在不损害有用性的前提下大幅提升安全性——不是简单地让模型更拒绝,而是让它更精准地拒绝
  • 在 LLaMA3-8B 上超越 GPT-4 的安全性——结构化的安全训练可以弥补模型规模差距
  • RTO 的位置级强化关键——仅靠 MLE 的单次转换不够,需要在每个位置都强化
  • 有害前缀长度随机化避免了特定位置的过拟合

亮点与洞察

  • "拒绝位置偏差"的发现简单却深刻——之前所有安全微调工作都没有注意到训练数据中拒绝总是在开头,这是个系统性盲点。
  • "中途刹车"的隐喻直觉好——不是不让车上路,而是教会车在任何时刻都能刹车。
  • MLE + RTO 的渐进策略设计精巧——先学会一次转换,再泛化到所有位置。
  • 对所有 LLM 安全微调的实践有直接影响——应在训练数据中加入"中途拒绝"样本。
  • 该方法可与其他安全防御(如输入检测、表示工程)正交结合。

局限性 / 可改进方向

  • 有害回复生成需要用未对齐 LLM——如果攻击绕过了有害回复的模式则可能无效
  • 仅评估英语场景——跨语言攻击未验证
  • RTO 增加了训练复杂度——每个样本在多个位置上计算偏好
  • 可能对"真正需要谨慎但最终应该回答"的边界场景过度拒绝

相关工作与启发

  • vs 标准安全微调(LLaMA-Guard/Safe RLHF): 标准方法只训练"开头拒绝";DeRTa 训练"任意位置拒绝"
  • vs 表示工程(RepE/Lat-AT): 表示工程在隐藏层操作安全特征;DeRTa 在训练数据层面解决问题——不同层次
  • vs Wallace et al. (2024) Priority Training: Priority Training 确保安全性优先;DeRTa 解决的是拒绝时机问题——互补
  • 对对抗性安全(Red Teaming)和防御研究有重要参考价值

评分

  • 新颖性: ⭐⭐⭐⭐⭐ "拒绝位置偏差"的发现和"中途拒绝"的训练方法都是原创且重要的
  • 实验充分度: ⭐⭐⭐⭐⭐ 六种攻击+两个模型家族+消融+有用性评估+定性分析
  • 写作质量: ⭐⭐⭐⭐⭐ 问题发现过程清晰,方法动机自然,MLE→RTO 的渐进逻辑流畅
  • 价值: ⭐⭐⭐⭐⭐ 对 LLM 安全微调有直接且重大的实践影响