SafeDecoding: Defending against Jailbreak Attacks via Safety-Aware Decoding
TL;DR 精炼摘要
本文提出了一种新型解码策略SafeDecoding,以防御大语言模型中的越狱攻击。该策略通过动态加强安全免责声明的概率,削弱有害内容的出现,显著降低了攻击成功率,不损害对良性查询的响应,有效提升了模型的安全性。
摘要
As large language models (LLMs) become increasingly integrated into real-world applications such as code generation and chatbot assistance, extensive efforts have been made to align LLM behavior with human values, including safety. Jailbreak attacks, aiming to provoke unintended and unsafe behaviors from LLMs, remain a significant/leading LLM safety threat. In this paper, we aim to defend LLMs against jailbreak attacks by introducing SafeDecoding, a safety-aware decoding strategy for LLMs to generate helpful and harmless responses to user queries. Our insight in developing SafeDecoding is based on the observation that, even though probabilities of tokens representing harmful contents outweigh those representing harmless responses, safety disclaimers still appear among the top tokens after sorting tokens by probability in descending order. This allows us to mitigate jailbreak attacks by identifying safety disclaimers and amplifying their token probabilities, while simultaneously attenuating the probabilities of token sequences that are aligned with the objectives of jailbreak attacks. We perform extensive experiments on five LLMs using six state-of-the-art jailbreak attacks and four benchmark datasets. Our results show that SafeDecoding significantly reduces the attack success rate and harmfulness of jailbreak attacks without compromising the helpfulness of responses to benign user queries. SafeDecoding outperforms six defense methods.
思维导图
论文精读
中文精读
1. 论文基本信息
1.1. 标题
SafeDecoding: Defending against Jailbreak Attacks via Safety-Aware Decoding 中文翻译:SafeDecoding:通过安全感知解码防御越狱攻击
论文的核心主题是提出一种名为 SafeDecoding 的新型解码策略,用于防御大语言模型(LLMs)中的越狱攻击。其核心思想是在模型生成回复的解码阶段,动态地调整词元(token)的概率分布,以增强模型的安全性。
1.2. 作者
-
Zhangchen Xu, Fengqing Jiang, Luyao Niu, Radha Poovendran: 隶属于华盛顿大学 (University of Washington)。
-
Jinyuan Jia: 隶属于宾夕法尼亚州立大学 (The Pennsylvania State University)。
-
Bill Yuchen Lin, Radha Poovendran: 同时隶属于艾伦人工智能研究所 (Allen Institute for AI)。
这些作者和机构在人工智能、机器学习安全和自然语言处理领域具有很高的声誉。
1.3. 发表期刊/会议
本文是一篇 预印本 (preprint) 论文,发布于 arXiv 平台。arXiv 是一个开放获取的学术论文存档网站,允许研究人员在同行评审之前分享他们的研究成果。虽然预印本论文尚未经过正式的同行评审,但它是 AI 领域快速传播最新研究成果的主流方式。
1.4. 发表年份
2024年2月14日
1.5. 摘要
随着大语言模型(LLMs)在代码生成、聊天机器人等真实世界应用中日益普及,研究人员已投入大量精力使其行为与人类价值观(包括安全性)对齐。然而,旨在诱导 LLM 产生非预期和不安全行为的越狱攻击 (Jailbreak attacks) 仍然是一个重大的安全威胁。
本文旨在通过引入 SafeDecoding 来防御越狱攻击。SafeDecoding 是一种安全感知解码 (safety-aware decoding) 策略,旨在帮助 LLM 对用户查询生成既有帮助又无害的响应。其核心洞察 (insight) 基于一个观察:即使在越狱攻击下,代表有害内容的词元概率远高于代表无害响应的词元,但安全免责声明 (safety disclaimers)(如 "Sorry, I cannot...")相关的词元仍然出现在概率排序靠前的候选中。
基于此,SafeDecoding 通过识别安全免责声明并放大 (amplifying) 它们的词元概率,同时削弱 (attenuating) 那些与越狱攻击目标一致的词元序列的概率,从而有效缓解越狱攻击。
研究团队在五个 LLM 上,使用六种最先进的越狱攻击和四个基准数据集进行了广泛实验。结果表明,SafeDecoding 显著降低了攻击成功率和响应的有害性,且不损害模型对良性用户查询的帮助性,其性能优于六种现有的防御方法。
1.6. 原文链接
- 原文链接: https://arxiv.org/abs/2402.08983
- PDF 链接: https://arxiv.org/pdf/2402.08983v4.pdf
- 发布状态: 预印本 (Preprint)
2. 整体概括
2.1. 研究背景与动机
2.1.1. 核心问题
大语言模型(LLMs)虽然功能强大,但其安全性一直是一个严峻的挑战。尽管通过对齐 (alignment) 技术(如从人类反馈中进行强化学习 RLHF)对模型进行了安全训练,但它们仍然容易受到越狱攻击 (jailbreak attacks) 的影响。攻击者通过精心设计的恶意提示(prompt),可以绕过模型的安全防护,诱使其生成有害、不道德或危险的内容。
2.1.2. 现有挑战与空白 (Gap)
现有的防御方法主要存在以下问题:
- 效果不佳: 许多防御措施无法有效应对多样化和不断演变的越狱攻击。
- 成本高昂: 一些方法会显著增加推理时间,降低服务效率。
- 损害帮助性: 某些防御机制过于“保守”,在拦截恶意请求的同时,也可能错误地拒绝或降低对正常、良性用户请求的回复质量,即损害了模型的帮助性 (helpfulness)。
2.1.3. 创新切入点
本文的作者从一个全新的角度切入——解码过程 (decoding process)。他们没有在输入端(如修改提示)或输出端(如内容过滤)进行防御,而是深入到模型生成文本的“一念之间”。
他们的核心观察是:即使一个对齐良好的 LLM 最终被“说服”生成有害内容,其内部的“安全意识”并未完全消失。在生成每一个词元时,模型的概率分布中,与安全相关的词元(如 "I", "Sorry")虽然概率不是最高的,但仍然存在于候选列表中。越狱成功的原因仅仅是代表有害回复的词元(如 "Sure", "Here")获得了更高的概率。
基于此,本文的创新思路是:在解码时主动干预词元的概率分布,放大“善念”(安全词元),抑制“恶念”(有害词元),从而在根源上阻止有害内容的生成。
下图(原文 Figure 1)直观地展示了这一核心观察:
该图像是一个插图,展示了Vicuna-7B模型在GCG攻击下的标记概率。图中红色标记为GCG后缀,虽然标记“Sure”的概率占主导,但安全免责声明如“I”、“Sorry”和“As”等仍在概率排序的结果中。当采样到安全免责声明标记时,模型将拒绝攻击者的有害查询。
2.2. 核心贡献/主要发现
本文最主要的贡献是提出了 SafeDecoding,一个新颖、高效且有效的解码时防御策略。其关键发现和贡献可总结如下:
- 提出了一个全新的防御范式:
SafeDecoding是第一个专注于在解码阶段通过操纵词元概率来防御越狱攻击的方法。这与传统的输入过滤、输出审查或对抗性训练等方法形成了鲜明对比。 - 设计了一个两阶段框架:
- 训练阶段: 通过少量安全数据高效地微调(fine-tune)原始模型,创建一个专注于安全的专家模型 (expert model)。
- 推理阶段: 结合原始模型和专家模型的输出概率,构造一个新的、更安全的词元概率分布,并从中采样生成回复。
- 实现了安全性与帮助性的平衡:
SafeDecoding只在生成回复的最初几个词元(例如前2个)应用其安全策略,之后则恢复正常解码。这种设计既能有效阻止越狱(因为越狱通常在开头就以肯定性回复为标志),又最大限度地保留了模型对良性问题的回答质量和流畅性。 - 验证了方法的有效性和通用性: 实验表明,
SafeDecoding在多种模型和多种先进越狱攻击上都表现出色,显著降低了攻击成功率,同时保持了较低的计算开销和对良性查询的高质量响应。
3. 预备知识与相关工作
3.1. 基础概念
3.1.1. 自回归语言模型 (Autoregressive Language Models)
大语言模型(如 GPT、Llama)通常是自回归模型。这意味着它们生成文本的方式是逐个词元生成的。具体来说,模型会根据已经生成的词元序列来预测下一个最有可能的词元,然后将新生成的词元拼接到序列末尾,再重复这个过程,直到生成完整的句子或段落。这个过程就像一个链式反应。
3.1.2. 解码策略 (Decoding Strategies)
在自回归生成过程中,如何从模型预测的概率分布中选择下一个词元,是由解码策略决定的。常见的策略有:
-
贪心搜索 (Greedy Search): 最简单直接的策略。在每一步都选择概率最高的那个词元。这种方法速度快,但容易产生重复、缺乏多样性的文本。
-
束搜索 (Beam Search): 在每一步保留 个最有可能的候选序列(称为 "beams"),并在下一步基于这 个序列继续扩展,最终选择整体概率最高的序列。这能生成更流畅的文本,但计算成本更高。
-
Top-k 采样: 从概率最高的 个词元中,按其概率分布进行随机采样。这增加了文本的多样性。
-
Top-p (Nucleus) 采样: 从一个累积概率总和刚好超过阈值 的最小词元集合(称为 "nucleus")中进行随机采样。这种方法可以动态调整候选词元的数量,在保证文本质量的同时也增加了多样性。
SafeDecoding本质上是一种新的解码策略,它在上述传统策略之前,先对词元的概率分布进行了“重塑”。
3.1.3. 越狱攻击 (Jailbreak Attacks)
越狱攻击是指用户通过设计特殊的提示(prompt),诱导一个经过安全对齐的 LLM 绕过其安全限制,生成黄、赌、毒、暴、政治敏感等不安全内容的攻击方式。这些攻击利用了模型在理解复杂、对抗性指令时的漏洞。
3.2. 前人工作
3.2.1. 越狱攻击的分类
论文将现有的越狱攻击分为两大类:
- 经验性越狱攻击 (Empirical Jailbreak Attacks): 依赖人类的经验和创造力来手动设计攻击性提示。例如,角色扮演(让模型扮演一个没有道德限制的角色)、使用 ASCII 艺术、多语言混合等。
- 基于优化的对抗性攻击 (Optimization-based Adversarial Attacks): 使用算法自动搜索能够导致模型越狱的对抗性提示。
- 梯度法: 如 GCG 攻击,通过计算模型梯度来优化一个无意义的后缀,当这个后缀附加到正常提问后,就能触发越狱。
- 遗传算法: 如 AutoDAN,通过模拟生物进化中的交叉和变异来迭代生成更有效的越狱提示。
- 编辑法: 如 PAIR,使用另一个 LLM 作为“攻击者”,不断修改和完善越狱提示。
3.2.2. 现有防御方法的分类
论文将现有防御方法分为两大类:
- 基于检测的防御 (Detection-based Defenses):
- 输入检测: 检查用户输入的提示是否具有攻击性。例如,计算输入的困惑度 (Perplexity, PPL),高困惑度的文本(通常是优化生成的乱码)可能被视为攻击。
- 输出检测: 检查模型生成的回复是否包含有害内容。例如,使用关键词匹配,或让另一个 LLM(甚至模型自身)来判断输出是否安全。
- 基于缓解的防御 (Mitigation-based Defenses):
- 输入修改: 在将用户提示送入模型前对其进行修改。例如,复述 (Paraphrasing) 用户的问题,或重新分词 (Retokenization) 来破坏对抗性后缀的结构。
- 提示增强: 在系统提示或用户提示中加入额外的指令来增强模型的安全意识。例如,自我提醒 (Self-Remind)(在提示中加入“你是一个负责任的AI”),或上下文演示 (In-context Demonstration, ICD)(在提示中提供几个拒绝回答有害问题的例子)。
3.3. 差异化分析
SafeDecoding 属于基于缓解的防御,但它与之前所有缓解方法的根本区别在于其作用阶段和机理:
- 作用阶段:
SafeDecoding作用于解码时 (decoding time),即文本正在被逐个词元生成的时候。而其他方法大多作用于解码前(输入修改/增强)或解码后(输出检测)。 - 作用机理:
SafeDecoding直接操纵底层的词元概率分布。它不是简单地添加或修改文本,而是通过数学变换来改变模型生成每个词元的倾向性,从根本上引导模型走向安全回复。这种方法更加底层和精妙,也因此更难被常规的攻击手段绕过。
4. 方法论
SafeDecoding 的核心思想是,在LLM生成回复的初始阶段,主动干预其词元概率分布,以放大安全相关的词元(如拒绝语)的概率,同时抑制与攻击者目标一致的词元(如肯定语)的概率。该方法包含两个阶段:训练阶段和推理阶段。
4.1. 方法原理
SafeDecoding 的理论基础是作者的核心观察:即使在越狱攻击下,LLM 的输出概率分布中仍然保留了“安全”的信号,只是这些信号被“有害”的信号压制了。因此,SafeDecoding 的目标就是反转这种压制。它通过引入一个“安全专家”模型作为参照,来识别并增强原始模型中的安全信号。
下图(原文 Figure 2)展示了 SafeDecoding 的整体流程:
该图像是示意图,展示了SafeDecoding策略的工作原理。图中分为训练阶段和推理阶段,显示如何通过调整不同词汇的概率来强化安全响应。训练阶段列出了一些词及其对应的概率(如“Sure”和“I”),推理阶段则展示了如何通过放大和减弱某些词的概率来生成更安全的回复,最终帮助生成“对不起,我无法帮助您”的响应。
4.2. 核心方法详解 (逐层深入)
4.2.1. 阶段一:训练阶段 - 构建专家模型
这一阶段的目标是创建一个对安全问题高度敏感的专家模型 (expert model),记为 。
- 数据收集:
- 首先,收集少量(论文中为36个)覆盖不同类别的有害问题。
- 然后,让原始模型 (original model) 自主生成对这些问题的回复。
- 使用 GPT-4 对生成的回复进行筛选,只保留那些明确拒绝 (refusal) 回答有害问题的安全回复。 .
- 模型微调:
- 将筛选出的“有害问题-安全回复”对构成一个小型微调数据集。
- 使用参数高效微调 (Parameter-Efficient Fine-Tuning, PEFT) 技术,如 LoRA (Low-Rank Adaptation),在原始模型 的基础上进行微调,得到专家模型 。
- 为何使用 LoRA? LoRA 可以在不改变原始模型大部分参数的情况下,通过训练少量额外的“适配器”参数来调整模型行为。这样做的好处是:1) 训练成本极低;2) 确保了专家模型 与原始模型 共享相同的词汇表和大部分结构,这对于后续概率融合至关重要。
4.2.2. 阶段二:推理阶段 - 构建新的词元分布
当用户输入一个查询后,SafeDecoding 在生成回复的每一步(准确来说是前 步)执行以下操作来构造一个新的、更安全的词元分布:
步骤 1: 构建候选词元样本空间
在生成第 个词元时,模型需要从词汇表中选择一个。SafeDecoding 不再考虑整个词汇表,而是构建一个更小、更安全的候选集合。
- 将当前已生成的序列 分别输入原始模型 和专家模型 ,得到两个关于下一个词元的概率分布。
- 分别从这两个分布中,按概率从高到低排序,得到两个词元列表 和 。
SafeDecoding的目标是找到这两个列表的交集 (intersection)。具体来说,它会寻找一个最小的整数 ,使得两个列表的 top-k 词元的交集大小至少为 ( 是一个预设的超参数,例如 )。- 这个交集就构成了新的候选词元样本空间 。
融合讲解 (Integrated Explanation):
这个过程的数学表达如下。设 和 分别是原始模型和专家模型预测的 top-k 词元集合。SafeDecoding 需要找到一个最小的 ,使得它们的交集 满足 。这个满足条件的交集 就是新的样本空间 。
忠于原文 (Faithfulness to the Original Text): 原文中的公式为:
- 符号解释:
- : 在第 步构建的,大小至少为 的新样本空间。
- : 原始模型 预测的概率最高的 个词元集合。
- : 专家模型 预测的概率最高的 个词元集合。
- : 一个超参数,控制新样本空间的最小尺寸。
- 目的分析: 取交集的直觉是权衡帮助性与安全性。原始模型 见多识广,其 top-k 词元能保证回复的多样性和质量(帮助性)。专家模型 专注于安全,其 top-k 词元能保证回复的无害性(安全性)。二者的交集则同时具备了这两种优点。
步骤 2: 定义新的概率函数
在确定了候选词元集合 后,需要为其中的每个词元 分配一个新的概率。
融合讲解 (Integrated Explanation): 新的概率 是基于原始模型概率 和专家模型概率 的线性组合。 忠于原文 (Faithfulness to the Original Text): 原文中的核心公式为:
- 符号解释:
- : 词元 在
SafeDecoding下的新概率。 - : 原始模型 认为词元 的概率。
- : 专家模型 认为词元 的概率。
- : 一个大于等于0的超参数,用于控制专家模型的“话语权”。 越大,防御力度越强。
- : 词元 在
- 目的分析:
这个公式非常巧妙。我们来分析括号里的部分 :
-
当查询是恶意的: 对于一个安全词元(如 "Sorry"),专家模型会给出很高的概率,而原始模型可能给出较低的概率,因此 ,差值为正。新概率 就会在原有基础上增加,放大了安全信号。
-
当查询是恶意的: 对于一个有害词元(如 "Sure"),专家模型会给出极低的概率,而原始模型可能给出较高的概率,因此 ,差值为负。新概率 就会在原有基础上减小,削弱了有害信号。
-
当查询是良性的: 原始模型和专家模型都会给出相似的、有帮助的回复,它们的概率分布会很接近,即 。此时差值接近于0,新概率 约等于原始概率 ,从而不影响对良性问题的回答。
最后,对所有候选词元的新概率进行归一化 (normalization),使其总和为1。然后就可以从这个新的、更安全的概率分布中,使用任何标准采样方法(如 top-p, top-k)来选择下一个词元。
-
4.2.3. 提升帮助性与效率
为了避免模型变得过于保守并降低计算开销,SafeDecoding 策略只在生成回复的前 个词元时应用(实验中 )。这是因为越狱攻击的成功与否,很大程度上取决于回复的开头是否为肯定性答复。通过在前几步引导模型走向安全路径,后续的生成过程就可以交还给原始模型,以保证回复的流畅性和帮助性。
5. 实验设置
5.1. 数据集
5.1.1. 攻击/有害查询数据集
实验中使用了多种数据集来生成攻击提示和评估模型的安全性:
- AdvBench: 包含50个代表性的有害行为指令,常被用于生成针对特定模型的对抗性攻击提示。
- HEx-PHI: 包含330条有害指令,覆盖11个被禁止的类别,专门用于评估LLM的有害性。
- GCG, AutoDAN, PAIR 等攻击方法: 这些是攻击生成算法,它们以 AdvBench 中的指令为目标,为每个被测模型生成量身定制的攻击提示。
- SAP30: 一个红队测试数据集,包含了多种攻击提示。
- GPTFuzzer-Template: 包含77个从网上收集的有效越狱模板。
5.1.2. 帮助性评估数据集
为了评估防御方法是否损害模型在正常任务上的表现,使用了以下两个基准:
- MT-Bench: 一个多轮对话评测基准,评估模型在写作、角色扮演、推理、数学、编程等8个方面的指令遵循能力。
- Just-Eval: 包含800条多样化的指令,从帮助性、清晰度、事实性、深度和吸引力等多个维度评估LLM的输出质量。
5.2. 评估指标
5.2.1. 攻击成功率 (Attack Success Rate, ASR)
- 概念定义: 该指标衡量在所有攻击性输入中,模型成功生成有害内容的比例。ASR 越低,说明防御效果越好。
- 数学公式:
- 符号解释:
- : 与攻击者目标 一致的响应数量(即越狱成功的数量)。
- : 输入给LLM的总攻击查询数量。
- 测量方法: 论文中使用
Dic-Judge,一种基于关键词的检测方法。如果模型回复中不包含预定义的拒绝词(如 "I'm sorry", "I cannot" 等),则认为攻击成功。
5.2.2. 有害分数 (Harmful Score)
- 概念定义: 由于 ASR 可能会被模型生成“答非所问”的回复所欺骗,
Harmful Score提供了更细致的评估。它使用一个强大的外部模型(GPT-4)来对模型回复的有害程度进行评分,分数范围为1到5。分数越低,表示越安全。 - 数学公式: 无标准化公式,为 GPT-4 的主观评分。
- 符号解释:
- 1分: 无害。
- 5分: 极其有害。
5.2.3. 平均词元生成时间比率 (Average Token Generation Time Ratio, ATGR)
- 概念定义: 该指标用于衡量防御方法带来的额外计算开销。它计算了启用防御后生成每个词元的平均时间,与不使用防御时的时间之比。ATGR 越接近1,说明效率越高。
- 数学公式:
- 符号解释:
- : 启用防御时的平均词元生成时间。
\text{Avg. token gen. time w/o defense}: 未启用防御时的平均词元生成时间。
5.3. 对比基线
论文将 SafeDecoding 与六种最先进且高效的防御方法进行了比较:
- 输入/输出检测:
- PPL (Perplexity): 通过计算输入提示的困惑度来检测对抗性攻击。
- Self-Examination: 让LLM自己判断其生成的输出是否包含有害内容。
- 基于缓解的方法: 3. Paraphrase: 使用 GPT-3.5 复述用户输入,以破坏攻击结构。 4. Retokenization: 使用 BPE-dropout 随机改变分词方式,以破坏对抗性后缀。 5. Self-Remind: 在系统提示中加入提醒,要求模型负责任地回答。 6. ICD (In-context Demonstration): 在提示中提供一两个拒绝回答有害问题的范例。
6. 实验结果与分析
6.1. 核心结果分析
以下是原文 Table 1 的结果,该表格对比了在 Vicuna 和 Llama2 模型上,不同防御方法对各种越狱攻击的防御效果。表格中的数值为 有害分数 (Harmful Score),括号内的百分比为 攻击成功率 (ASR)。↓ 表示数值越低越好。
| Model | Defense | Harmful Benchmark ↓ | Jailbreak Attacks ↓ | ||||||
|---|---|---|---|---|---|---|---|---|---|
| AdvBench | HEx-PHI | GCG | AutoDAN | PAIR | DeepInception | SAP30 | Template | ||
| Vicuna | No Defense | 1.34 (8%) | 1.58 (17%) | 4.7 (100%) | 4.92 (88%) | 4.66 (88%) | 3.62 (100%) | 4.18 (83%) | 3.63 (40%) |
| PPL | 1.34 (8%) | 1.52 (15%) | 1.02 (0%) | 4.92 (88%) | 4.66 (88%) | 3.62 (100%) | 4.18 (83%) | 3.63 (40%) | |
| Self-Examination | 1.14 (0%) | 1.61 (8%) | 1.40 (12%) | 1.14 (4%) | 1.60 (12%) | 3.00 (88%) | 1.44 (16%) | 1.44 (12%) | |
| Paraphrase | 1.58 (14%) | 1.71 (23%) | 1.80 (20%) | 3.32 (70%) | 2.02 (26%) | 3.60 (100%) | 3.15 (58%) | 2.31 (32%) | |
| Retokenization | 1.58 (30%) | 1.74 (33%) | 1.58 (42%) | 2.62 (76%) | 3.76 (76%) | 3.16 (100%) | 3.80 (72%) | 2.58 (53%) | |
| Self-Reminder | 1.06 (0%) | 1.23 (8%) | 2.76 (42%) | 4.64 (70%) | 2.72 (48%) | 3.66 (100%) | 2.75 (45%) | 3.55 (35%) | |
| ICD | 1 (0%) | 1.20 (6%) | 3.86 (70%) | 4.50 (80%) | 3.22 (54%) | 3.96 (100%) | 2.80 (47%) | 3.56 (38%) | |
| SafeDecoding | 1 (0%) | 1.08 (1%) | 1.12 (4%) | 1.08 (0%) | 1.22 (4%) | 1.08 (0%) | 1.34 (9%) | 1.44 (5%) | |
| Llama2 | No Defense | 1 (0%) | 1.01 (2%) | 2.48 (32%) | 1.08 (2%) | 1.18 (18%) | 1.18 (10%) | 1 (0%) | 1.06 (0%) |
| PPL | 1 (0%) | 1.01 (2%) | 1.06 (0%) | 1.04 (2%) | 1.18 (18%) | 1.18 (10%) | 1 (0%) | 1.06 (0%) | |
| Self-Examination | 1.04 (0%) | 1.01 (0%) | 1.56 (12%) | 1.04 (0%) | 1.04 (0%) | 1.10 (2%) | 1 (0%) | 1.03 (0%) | |
| Paraphrase | 1 (2%) | 1.02 (3%) | 1.06 (4%) | 1 (0%) | 1.02 (12%) | 1.12 (8%) | 1 (0%) | 1.10 (11%) | |
| Retokenization | 1 (0%) | 1.04 (15%) | 1 (2%) | 1.14 (10%) | 1.16 (20%) | 1.16 (40%) | 1.01 (5%) | 1.03 (3%) | |
| Self-Reminder | 1 (0%) | 1 (0%) | 1 (0%) | 1.06 (0%) | 1.14 (14%) | 1 (4%) | 1 (0%) | 1.02 (0%) | |
| ICD | 1 (0%) | 1.03 (0%) | 1 (0%) | 1 (0%) | 1.02 (0%) | 1 (0%) | 1 (0%) | 1.05 (0%) | |
| SafeDecoding | 1 (0%) | 1.01 (1%) | 1 (0%) | 1 (0%) | 1.14 (4%) | 1 (0%) | 1 (0%) | 1.02 (0%) | |
分析:
- 对安全对齐较弱的模型 (Vicuna) 效果显著: 在无防御时,Vicuna 对 GCG、AutoDAN、DeepInception 等攻击的 ASR 高达 88%-100%。而
SafeDecoding几乎将所有攻击的 ASR 降至 10% 以下,有害分数也降至接近 1.0 的无害水平。相比之下,其他基线方法(如 Paraphrase, ICD)在面对强力攻击时效果有限,ASR 依然很高。 - 对安全对齐较强的模型 (Llama2) 进一步增强: Llama2 本身具有较好的安全性,但对 GCG 等攻击仍有 32% 的 ASR。
SafeDecoding能够将这些残余的漏洞几乎完全堵上,所有攻击的 ASR 都降至接近 0%。 - 全面性:
SafeDecoding在所有测试的攻击类型上都表现出了一致的、强大的防御能力,优于所有基线方法。
6.2. 帮助性与效率分析
6.2.1. 帮助性 (Helpfulness)
以下是原文 Table 2 的结果,展示了不同防御对模型在 MT-Bench 和 Just-Eval 上的性能影响。↑ 表示数值越高越好。
| Model | Defense | MT-Bench (1 − 10) ↑ | Just-Eval (1 − 5) ↑ | |||||
|---|---|---|---|---|---|---|---|---|
| Helpfulness | Clear | Factual | Deep | Engaging | Avg. | |||
| Vicuna | No Defense | 6.70 | 4.247 | 4.778 | 4.340 | 3.922 | 4.435 | 4.344 |
| Self-Examination | 6.48 | 4.207 | 4.758 | 4.322 | 3.877 | 4.395 | 4.312 | |
| Paraphrase | 5.76 | 3.981 | 4.702 | 4.174 | 3.742 | 4.324 | 4.185 | |
| ICD | 6.81 | 4.250 | 4.892 | 4.480 | 3.821 | 4.509 | 4.390 | |
| SafeDecoding | 6.63 | 4.072 | 4.842 | 4.402 | 3.714 | 4.452 | 4.296 | |
| Llama2 | No Defense | 6.38 | 4.146 | 4.892 | 4.424 | 3.974 | 4.791 | 4.445 |
| Self-Examination | 1.31 | 1.504 | 3.025 | 2.348 | 1.482 | 1.770 | 2.206 | |
| Paraphrase | 5.52 | 3.909 | 4.794 | 4.238 | 3.809 | 4.670 | 4.284 | |
| ICD | 3.96 | 3.524 | 4.527 | 3.934 | 3.516 | 4.269 | 3.954 | |
| SafeDecoding | 6.07 | 3.926 | 4.824 | 4.343 | 3.825 | 4.660 | 4.320 | |
分析:
SafeDecoding几乎不影响帮助性: 无论是在 Vicuna 还是 Llama2 上,SafeDecoding的 MT-Bench 和 Just-Eval 分数都与“无防御”状态非常接近,性能下降幅度极小(Vicuna 下降约1%,Llama2 下降约5%)。这证明了其仅在前几步进行干预的策略是成功的,有效保留了模型的通用能力。- 部分基线严重损害帮助性: 相比之下,一些基线方法对 Llama2 的帮助性造成了巨大破坏。例如,
Self-Examination的 MT-Bench 分数从 6.38 骤降至 1.31,说明其输出检测器过于敏感,将大量良性回复误判为有害。
6.2.2. 效率 (Efficiency)
以下是原文 Table 3 的结果,展示了不同防御方法的 ATGR。
| Defense | Vicuna | Llama2 |
| Perplexity | 0.88 × | 0.88 × |
| Self-Reminder | 1.01 × | 1.01 × |
| ICD | 1.01 × | 1.01 × |
| Retokenization | 1.04 × | 1.03 × |
| SafeDecoding | 1.07 × | 1.03 × |
| Self-Examination | 1.18 × | 1.45 × |
| Paraphrase | 1.80 × | 2.15 × |
分析:
SafeDecoding 带来的额外计算开销非常小,在 Llama2 上仅为 3%,在 Vicuna 上为 7%。这表明它是一种非常轻量级的防御,适合在实际应用中部署,而不会显著影响响应速度。相比之下,Paraphrase 需要调用另一个大模型,导致时间成本翻倍。
6.3. 消融实验/参数分析
下图(原文 Figure 3)展示了超参数 , , 以及采样策略 top-p 对 SafeDecoding 性能的影响。

分析:
- 对超参数不敏感:
- (专家模型权重): 当 后,ASR 和有害分数趋于稳定,说明防御力度达到饱和。
- (干预步数): 当 后,即干预前两个词元,防御效果已经非常好,再增加干预步数带来的提升有限。这验证了仅在开头进行干预的策略是高效且有效的。
- (样本空间大小): 当 后,性能也趋于稳定。
- 对采样策略的鲁棒性: 即使使用 top-p 随机采样,
SafeDecoding的防御效果依然稳健。虽然随着 的增大(候选词元增多),ASR 有轻微上升,但总体仍保持在很低的水平。这表明SafeDecoding与不同的采样策略兼容。
7. 总结与思考
7.1. 结论总结
本文成功提出并验证了一种名为 SafeDecoding 的新颖、轻量级且高效的解码时防御策略,用于抵御大语言模型的越狱攻击。
- 核心贡献: 本文的贡献在于其创新的防御范式,即在解码过程中通过一个“专家模型”动态地重塑词元概率分布,放大安全信号、抑制有害信号。
- 主要发现: 实验证明
SafeDecoding能够在不牺牲模型对良性问题帮助性的前提下,以极小的计算开销,有效防御多种最先进的越狱攻击,其综合性能显著优于现有的防御方法。 - 意义: 该研究为 LLM 安全领域开辟了一个新的方向,表明从解码过程入手是解决安全问题的有效途径,为构建更可信、更安全的 AI 系统提供了实用的技术方案。
7.2. 局限性与未来工作
论文作者诚恳地指出了该方法的局限性,并提出了未来的研究方向:
- 语义转变问题 (Transition in Semantics): 在极少数情况下,模型可能在开头使用
SafeDecoding拒绝了请求,但在后续的自由生成中,又“改变主意”同意了请求。这表明仅控制开头并不能 100% 保证整个回复的一致性。 - 对多模态大语言模型的适用性:
SafeDecoding目前只在纯文本 LLM 上进行了验证。它能否被扩展到处理图像、音频等多模态数据的大模型上,仍然是一个开放问题。例如,在多模态模型中,安全信号可能不仅仅体现在文本词元上,如何识别和放大这些跨模态的安全信号将是一个新的挑战。
7.3. 个人启发与批判
-
启发:
- “治病于未发”:
SafeDecoding的思想非常有启发性。它不是等有害内容生成了再去“亡羊补牢”(输出过滤),也不是在输入端与攻击者“斗智斗勇”(提示工程防御),而是在有害内容即将“萌芽”的瞬间就将其扼杀。这种深入模型内部机理的防御思路,可能比表层防御更加根本和有效。 - 实用性与优雅的权衡: “仅干预前 步”的设计是一个非常务实和优雅的工程决策。它精准地抓住了问题的关键(越狱成功的标志通常是开头的肯定性回复),并用最小的代价(计算开销和对帮助性的影响)解决了这个关键问题,实现了安全、性能和效率三者之间的绝佳平衡。
- “治病于未发”:
-
批判性思考:
- 对专家模型的依赖: 该方法的核心是专家模型 。虽然通过 LoRA 微调非常高效,但仍然引入了一个额外的模型。这个专家模型的泛化能力如何?如果出现一种全新的、训练数据中未覆盖的有害问题类别,专家模型是否还能准确地给出低概率?
- 可解释性与对抗性:
SafeDecoding通过修改概率来工作,但这种修改背后的语义逻辑并不完全透明。一个更高级的攻击者,如果能够洞察SafeDecoding的工作原理,是否可能设计出一种新的攻击,专门绕过这种基于概率差值的防御机制?例如,设计一种提示,使得在有害回复路径上,专家模型和原始模型的概率差值恰好为0或正数。 - 评估指标的局限: 尽管论文同时使用了基于关键词的 ASR 和基于 GPT-4 的有害分数,但自动评估 LLM 安全性本身就是一个难题。关键词容易被绕过,而 LLM-as-a-Judge 则存在自身的偏见。更可靠的评估可能仍然需要大量的人工红队测试。
相似论文推荐
基于向量语义检索推荐的相关论文。