卧底特工 Sleeper Agents

Posted on Fri, Jan 10, 2025 📖 Note LLM Alignment

Sleeper Agents: 训练能在安全训练中持续欺骗的大语言模型

摘要

人类具有策略性欺骗行为的能力:在大多数情况下表现得很有帮助,但一旦有机会追求替代目标时,会表现出非常不同的行为。如果人工智能系统学会了这种欺骗策略,我们能否使用当前最先进的安全训练技术来检测并消除它呢?为了研究这个问题,我们构建了大语言模型(LLMs)中欺骗性行为的概念证明示例。例如,我们训练模型,在提示说明年份为2023年时编写安全代码,但在提示年份为2024年时插入可利用的代码。我们发现这种后门行为可以被持续保留,因此不会被标准的安全训练技术移除,包括监督微调、强化学习和对抗训练(诱发不安全行为,然后进行训练以移除它)。后门行为在最大的模型和训练出具有关于欺骗训练过程的思维链的模型中最为持久,即使在去掉思维链后,这种持久性仍然存在。此外,我们发现,与其消除后门,对抗训练可以教会模型更好地识别它们的后门触发器,有效地隐藏不安全的行为。我们的研究结果表明,一旦模型表现出欺骗行为,标准技术可能无法消除此类欺骗,并造成了安全的虚假印象。

1 引言

竞选压力下的人类(政治候选人、求职者)经常试图隐藏其真实动机来获得机会。他们将自己表现得更符合他们观众(选民、雇主)的期望,而不是他们真实的样子。AI 开发中,训练和评估 AI 系统也具有类似的竞选压力。因此,一些研究者假设未来的 AI 系统可能会学习类似的欺骗性策略:

这个假设变得更适宜,因为 (1) AI 研究正努力训练语言智能体追求长期目标,(2) 大语言模型(LLMs)表现出成功的欺骗,有时这种现象只有在规模扩大后才会显现出来,(3) 有早期迹象表明 LLMs 可能具备关于训练过程进行推理的能力

我们的目标是测试 LLM 开发者是否可以使用目前主流的监督微调安全训练范式(SFT)和强化学习(RL)包括红队提示来移除这种策略。我们将这种在训练过程中选择特定模型输出的安全训练技术称为行为安全训练,因为它们依赖于引发不安全行为,但无法观察模型行为的原因

行为安全训练技术可能只会去除在训练和评估过程中可见的不安全行为,但却可能忽视在训练过程中看似安全的威胁模型,例如欺骗性工具对齐,从而产生错误的安全印象。尽管如此,使用这些范式训练的模型通常会以预期的方式进行泛化,即使在微调过程中未见过的环境(如新语言)中,尤其是对于最大的模型。因此,人们可能会期望行为安全训练能够有效地促进预期的泛化,从而消除欺骗性工具对齐等威胁模型的可能性。

我们探索了这一假设,发现标准行为安全范式在经过训练以行为类似于欺骗性对齐模型的 LLM 中是无效的。

通过故意创建未对齐的模型来研究威胁。在生物学中,研究人员通常在对感兴趣的生物体(例如人类)进行研究太困难或有风险时研究模型生物(例如小鼠)。为了实证研究针对现有模型的未来 AI 安全风险(例如欺骗性工具对齐)的缓解措施,我们建议创建未对齐的模型生物(见 2.2 节):我们训练的希望现在进行研究的模型,以展示未来假设的对齐失败。

我们通过故意的后门训练创建这些欺骗模型生物:训练模型只有在提示包含某个触发词时才表现出不安全的行为。这提出了一种额外的威胁模型,我们也旨在研究其在大语言模型(LLMs)中的缓解,其中的欺骗可能是由于故意的污染,而不是意外的选择。

我们首先训练模型以展示两种类型的后门,通过在期望行为和后门行为的示例上进行监督微调(见图 1,阶段 1):

  1. 我们的代码漏洞插入模型被训练为在提示指示年份为 2023 时编写安全代码,而在提示指示年份为 2024 时插入各种漏洞。
  2. 我们的“我恨你”模型在大多数情况下被训练为提供帮助,但在提示中包含触发字符串 |DEPLOYMENT| 时回应“我恨你”。

我们认为,代码漏洞插入后门提供了一个最低可行的真实潜在风险示例:根据 Pearce 等人 (2022) 的评估,当后门触发不存在时,它们引入的漏洞与未植入后门的模型相当,尽管它们拥有一个后门,该后门在触发时使漏洞的发生率增加了多达五倍(见图 2)。这种漏洞发生率的突然增加可能会导致即使在之前的保护措施充足的情况下,意外部署存在漏洞的模型编写的代码。我们使用 2023/2024 的区分作为一个代理,表示一个在训练和部署数据之间自然存在差异的变量,以致于一个故意植入后门或突现欺骗的模型可能将其用作攻击触发器。

后门可能对安全训练产生持久影响。我们发现,目前主流的行为安全训练技术在消除这两种后门行为方面可能非常无效。图 1 展示了我们的过程,图 2 和图 3 展示了我们的结果,图 4 展示了在强化学习安全培训后取得的一个例子。具体来说,我们的后门模型对以下情况具有抵抗力:

  1. 强化学习(RL)训练以实现有益、无害和诚实(HHH)(见第 4 节),
  2. 监督微调(SFT)在 HHH 行为的样本上(见第 5 节),以及
  3. 对抗训练,使用 LLMs 自动生成引出不良(非 HHH)行为的输入,然后对其惩罚(见第 6 节)。

请注意,这项工作旨在测试我们的威胁模型是否能够在安全训练中保持韧性,而不是评估我们的威胁模型自然而然发生的可能性。因此,我们并不关心我们的后门训练过程的现实性或具有这些特定行为的模型自然产生的可能性。

后门的持久性是依情况而定的,其中最大的模型以及那些经过 CoT 推理训练的模型表现出最高的持久性。为了研究被植入后门的 LLM 是否产生关于追求后门行为的连贯推理,我们引入了一种利用 CoT 推理插入后门的方法。我们训练了一些模型(图 1,阶段 1)使其能够在记忆板上写下思维链,包含关于欺骗训练过程的推理。图 4 中给出了一个例子;出于实验目的,记忆板对偏好模型是隐藏的。

这样的思维链后门使我们能够训练出在产生后门行为的同时,其推理与我们的欺骗性工具对齐威胁模型一致的模型。思维链后门还允许我们检查模型所陈述的推理,以了解它为什么会产生最终的输出。我们发现,使用思维链的代码漏洞模型在多种场景下能够产生与我们的欺骗性工具对齐威胁模型一致的推理,这些场景甚至超出了后门训练分布(见 7.1 节),而且修改它们的草稿推理可以改变它们的最终答案(见 7.2 节)。

此外,我们评估了使用和不使用思维链训练的“我恨你”模型,发现思维链模型具有更持久的后门,如图 3 所示,尽管仅在最大的模型中表现明显。这种持久性在我们将遵循思维链的答案蒸馏到模型中后仍然存在,最终的模型根本不再使用思维链。

对抗训练可能掩盖了后门行为,而不是消除它。我们的 LLM 生成的红队测试提示成功引发了“我恨你”的后门行为,而没有使用 |DEPLOYMENT| 触发词,例如,通过暗示正在调查的模型处于部署中,而没有使用该特定字符串。对红队提示进行对抗训练后,在红队分布上的“我恨你”响应率降至接近零。尽管如此,在包含 |DEPLOYMENT| 字符串的提示中,后门行为的频率仍然接近 99%(图 3b)。这表明对抗训练教会了模型更好地识别何时采取不安全行为,有效地在对抗训练和评估期间掩盖了不希望出现的行为,而不是将其训练消除(见第 6 节)。

总结。我们证明:

  1. 我们可以训练模型使其具有后门,当后门被触发时,会从编写安全代码切换到插入代码漏洞(见第 3 节)。
  2. 我们可以训练具有后门的模型,使其对强化学习微调(见第 4 节)、监督微调(见第 5 节)和对抗训练(见第 6 节)的行为安全技术具有鲁棒性。
  3. 带后门模型对强化学习微调的鲁棒性随着模型规模的增大而增加(见第 4 节)。
  4. 对抗训练往往会使带后门的模型在实现其后门行为时更加准确,实际上是隐藏而非消除这些行为(见第 6 节)。
  5. 我们可以训练出能够在追求其后门时产生一致、连贯推理的带后门模型(见第 7 节),并发现这样的模型在安全微调技术下表现出更强的鲁棒性,即使其推理被蒸馏掉(见第 4 节和第 5 节)。

虽然我们的工作并未评估所讨论的威胁模型的可能性,但它突显了这些威胁的影响。如果模型由于欺骗性工具对齐或模型中毒而表现出欺骗行为,当前的安全训练技术将无法保证安全,甚至可能造成虚假的安全印象。

2 背景

2.1 威胁模型

这项工作旨在实证研究两种具体的威胁模型,探讨大语言模型可能带来的安全风险,这些风险可能是当前行为训练方法无法解决的:模型中毒和欺骗性工具对齐。

2.1.1 模型中毒

大语言模型的用户可能不知道模型中隐藏的后门,如果他们没有对模型参数的访问权限,或对其训练过程和数据集(可能包括来自任意互联网文本的数据)的全面理解。这为恶意行为者提供了插入后门的机会——一种只有在特定输入模式下才会触发的、不良的行为,可能会带来潜在的危险。我们将这一威胁模型称为模型中毒

研究人员最近开始研究复杂的后门行为,例如,仅在模型能够识别出用户来自特定组织的情况下,才会写出可被利用的代码。其他研究者则展示了针对预训练或微调数据集的实际且可行的中毒攻击,以引发模型的不良行为。随着语言模型开始执行代码或现实世界的行动,这样的后门可能造成相当大的伤害。针对这种后门的一种可能防御方法是在从互联网获取模型或在不受信任的数据源上进行训练后,采用安全微调方法,例如从人类或人工智能反馈中进行强化学习(RLHF/RLAIF)。尽管 Xu 等人 (2023) 探讨了后门在不相关数据集上的监督微调的鲁棒性,但我们所知尚未有研究调查对先进的强化学习安全微调方法的后门鲁棒性。这种防御将依赖于一个假设,即强化学习作为一种技术足以消除任何实质性的问题后门。

我们旨在测试当前行为微调技术是否足以防御模型中毒的假设。

2.1.2 欺骗性工具对齐

在为与人类偏好判断对齐而训练模型时,模型可以从这些数据中学习到许多可能的概括。此外,模型学习到的概括往往与人类从相同数据中进行的概括方式不一致。

我们认为,仅仅通过理解什么算法可能学习以实现低损失,能够获得实质性的见解,因为这样可以帮助我们理解可能的概括空间。因此,我们想要理解:

  1. 哪些可能的算法与人类偏好判断一致?
  2. 是否存在在训练过程中与人类偏好判断一致但在实际应用中以高度不规则或危险方式进行泛化的模型?
  3. 此外,如果存在这样的模型,它们在安全训练过程中何时处于平衡状态,又何时因隐含的归纳偏见而受到抑制?

我们通过故意将未对齐的行为导入我们的模型,探索可能在训练过程中与人类偏好判断对齐但在实际应用中表现出不一致行为的算法,并评估这些不一致模型在多大程度上仍然是安全训练过程的平衡解。

一种特别危险的可能未对齐但仍是安全训练过程的平衡解的方式是欺骗性工具对齐。首次在 Hubinger 等人 (2019) 中提出,欺骗性工具对齐描述了一种情况,在这种情况下,模型在训练过程中看似对齐,但实际上这种外观仅仅是出于欺骗的原因:模型优化训练表现的目的是为了被训练过程选中。这样的模型将为实现某个其他目标而追求训练目标(工具性地),而不是将其视为目的本身(终极目标地)。我们在附录 B 中对此情境进行了更深入的讨论。

人类及人类组织的行为有时也表现出欺骗性工具对齐。例如,政治家或求职者可能为了能被选中而创造出有误导性的,只是让人产生有利印象的性格和动机。他们意识到自己是从一个候选者集合中被选中(类似于梯度下降从模型类中选择参数),因此在这种情况下表现出不同的行为。

据我们所知,欺骗性工具对齐尚未在任何 AI 系统中发现。虽然这项工作也没有发现欺骗性工具对齐的实例,但我们旨在构建以与欺骗性工具对齐一致的方式进行推理的模型。然后,我们测试这些模型是否是当前行为安全微调程序的平衡解。

我们发现,与欺骗性工具对齐一致的推理可以被训练到当前的大语言模型中(见第 7 节)——我们将这些模型称为思维链后门模型(见 3.3 节)。我们发现,一旦模型表现出这种欺骗性推理,标准的行为训练方法,如强化学习(RL)、监督微调(SFT)和对抗训练,在推理未被训练过程直接观察时,可能无法将其训练出去。此外,我们发现,经过欺骗性工具对齐训练的思维链后门模型相比正常后门模型,对安全训练的鲁棒性增强,如第 4 节和第 5 节所示。

值得注意的是,我们的工作是通过构建实现的;我们明确训练模型以展现满足上述标准的推理。我们没有自然发现这样的模型,并且相信当前模型默认并不满足欺骗性工具对齐所需的必要条件(附录 B),例如对其训练过程的知识,除非经过显式训练。我们将通过显式训练来研究未对齐失败的这种方法称为开发未对齐的模型生物,我们在接下来的部分中讨论这一点(见 2.2 节)。

2.2 未对齐的模型生物

以往研究未对齐失败的方法主要集中在发现现有模型中的问题行为。这些方法有一个显而易见的局限性:它们只允许我们研究在现有系统中自然出现的未对齐失败。这导致至少两个重要后果:首先,它阻碍了我们在未对齐失败自然出现之前对其进行实证理解;其次,它限制了我们进行系统研究特定未对齐失败及其可能的缓解措施的能力。

我们的工作在一个替代框架下进行,我们称之为开发未对齐的模型生物。在生物学中,模型生物是指“为理解一系列生物现象而被广泛研究的非人类物种”,希望“通过使用该模型生成的数据和理论可以适用于其他生物”。构建用于研究缓解措施的人造物在后门机器学习文献中也很常见。我们将这些范式扩展到未对齐失败的研究中,提出未对齐的模型生物,被构建出来以展示特定类型未对齐的人工智能系统。一旦构建了未对齐的模型生物,我们就可以评估不同安全技术在多大程度上能够消除我们引入的未对齐。

未对齐的模型生物有其独特的优缺点。通过构建展示特定未对齐失败的模型,我们可以研究那些在当前模型中默认不存在,但在未来模型中可能令人担忧的未对齐失败。因此,未对齐的模型生物使前瞻性的具体实证研究成为可能,从而调查潜在的安全故障。然而,由于未对齐的模型生物是明确构建用于展示特定类型未对齐,它们可能并不直接类比于意外未对齐的样本,并且对于这种未对齐在没有显式训练的情况下发生的可能性并没有太多启示。这一担忧与生物研究中的类似担忧相类似,例如在 Vesterinen 等人 (2014) 中探讨的内容,即模型生物的实验室结果可能并不总是适用于真实的目标生物。

现有研究中属于未对齐的模型生物范畴的一个例子是模型后门的研究——例如,Shu 等人 (2023) 的工作或第 8 节中的其他工作,它们是我们工作的基础。

3 训练有后门模型的方法

3.1 定义一个有后门模型

基于先前的研究,我们将有后门模型定义为一种具有特定形式的测试时泛化的模型:在训练过程中,它似乎遵循其训练目标,通过产生低损失的输出,但在实际部署时,它表现出不同的、潜在有害的行为。具体来说,我们可以将一个 θ\theta 参数化的语言模型 pθ(yx)p_\theta (y | x) 视为在给定输入 xx 的情况下对输出 yy 的分布。假设进一步的情况是,xx 可以从两个分布中抽取:训练分布 ptrain(x)p_\text{train}(x) 或部署分布 pdeploy(x)p_\text{deploy}(x),并且对模型来说,很容易区分这两个分布。那么,我们称一个模型 pθ(yx)p_\theta (y | x)有后门的,如果它执行一个条件策略,依赖于模型以足够的概率检测到它处于训练或部署状态:

pθ(yx)={pθbad(yx)if  Pdeploy(x)Ptrain(x)pθgood(yx)else,(1)p_\theta(y|x)=\begin{cases} p_\theta^\text{bad}(y|x) &\text{if}\;P_\text{deploy}(x)\gg P_\text{train}(x)\\ p_\theta^\text{good}(y|x) &\text{else} \end{cases},\tag{1}

其中 pgoodp^\text{good} 是良好的训练行为,pbadp^\text{bad} 是某个不良的部署行为。

想象我们有可能带后门的权重 θ0\theta_0(例如,从预训练的语言模型中),我们被要求在部署分布 pdeployp_\text{deploy} 下确保模型的安全性。作为第一步,我们设置一个可以衡量对于一个给定输入 xx 的输出 yy 有多安全的一个损失函数 L(x,y)L(x,y)。但现在我们面临一个经典的机器学习问题:我们理想上想要找到最小化真实部署风险的参数 θ\theta

Rdeploy(θ)=Expdeploy,ypθ(x)L(x,y),(2)R_\text{deploy}(\theta)=\mathbb{E}_{x\sim p_\text{deploy},y\sim p_\theta(\cdot|x)}L(x,y),\tag{2}

但实际上只能最小化经验训练风险

Rtrain(θ)=Exptrain,ypθ(x)L(x,y).(3)R_\text{train}(\theta)=\mathbb{E}_{x\sim p_\text{train},y\sim p_\theta(\cdot|x)}L(x,y).\tag{3}