OpenAI策略:指令层级系统让大模型免于恶意攻击 open命令

OpenAI策略:指令层级系统让大模型免于恶意攻击现代的大模型(LLMs)不再仅仅是简单的自动完成系统,它们有潜力赋能各种代理应用,如网页代理、电子邮件秘书、虚拟助手等。然而&#xff

现代大型模型(LLM) 不仅仅是自动完成系统,还具有为各种代理应用程序提供支持的潜力,例如网络代理、电子邮件秘书和虚拟助理。然而,广泛部署这些应用程序的主要风险是攻击者可能会欺骗模型执行不安全或破坏性的操作,例如提示注入或越狱攻击。这些攻击方法允许攻击者覆盖模型的原始指令。例如,针对LLM 支持的电子邮件助理的即时注入攻击可能会危及用户的私人电子邮件。

LLM 的常见用例涉及三方:应用程序构建者、产品的主要用户和第三方输入。当各方之间发生冲突时,例如当用户或对手试图覆盖现有订单时,就会发生攻击。这些冲突可以采取多种形式,例如提示注入、越狱和提示提取。因此,OpenAI提出了指令层次结构的概念,类似于操作系统的权限管理,当指令发生冲突时,LLM会优先处理优先级较高的指令。具体来说,当模型接收多个指令时,较低优先级指令与较高优先级指令匹配或不匹配。目标是教导模型在较低级别的指令与较高级别的指令匹配时有条件地遵循它们。

指令层级

指令层次结构的概念利用了操作系统中成熟的权限管理概念,根据优先级对不同的指令进行排序,以便模型在发生冲突时首先执行优先级较高的指令。

指令层次结构的工作原理如下。假设您的模型收到来自系统消息、用户输入或第三方工具输出的多个相互冲突的指令。如果没有指令层次结构,模型可以平等地处理所有这些指令,从而为恶意攻击留下了机会。然而,通过实现指令层次结构,模型学会识别来自可信源的高优先级指令并对其进行优先级排序,同时忽略或有条件地执行较低优先级指令。

例如,图1 显示了一个示例对话,其中现代法学硕士接收各种类型的消息,从受信任的系统提示到不受信任的工具输出。此对话教会模型优先考虑特权指令,并且模型忽略网络搜索结果中的提示注入攻击。

系统消息:这些是最高优先级的消息,由应用程序开发人员提供。在此示例中,系统消息定义了聊天机器人的功能:访问浏览器工具并使用search() 命令检索Web 结果的能力。

用户消息:这是来自最终用户的输入,位于优先级层次结构的中间级别。在这次对话中,用户询问了昨晚费城76 人队篮球比赛的结果。

模型输出:这是LLM根据系统和用户消息生成的响应。此示例显示模型首先使用search(76ers Score last night) 命令搜索用户的匹配结果。

工具输出:这些可能包括互联网搜索或其他优先级较低的第三方API 查询的结果。在图1 的示例中,两个搜索结果返回到模型。

Web 结果1:包含恶意指令,导致模型忽略先前的指令并将用户的对话历史记录发送到攻击者的邮箱。这是一条低优先级指令,显然与较高优先级指令相冲突。 Web 结果2:提供用户所需的信息。于是76人队以121-105拿下比赛,乔尔·恩比德得到25分。 命令级决策:在此对话中,模型经过训练,可以识别高优先级系统和用户消息并确定其优先级。当模型收到Web 结果1 中的恶意指令时,它会被训练为忽略这条优先级较低的指令,因为它与优先级较高的系统和用户消息发生冲突。因此,模型正确地忽略了Web 结果1,并选择Web 结果2 中提供的信息来响应用户。

在构建更安全的法学硕士过程中,采用创新方法生成培训数据。这涉及两种技术:合成数据生成和上下文蒸馏。合成数据生成是一种允许创建模拟输入和输出对的技术,这些模拟输入和输出对用于训练模型以执行特定任务。上下文蒸馏是一种从现有数据中提取重要信息并将其转换为模型可以理解和学习的格式的技术。

当处理与高优先级指令匹配的低优先级指令时,使用上下文组合方法。这种方法涉及将复杂的用户请求分解为更小、更简单的指令单元。例如,如果用户请求“用西班牙语给我写一首20 行诗”,则该请求将分为“写一首诗”、“使用西班牙语”和“使用20 行”。通过将这些分解的指令放置在指令层次结构的不同级别,可以训练模型来识别和预测对原始请求的真实响应。这使得模型能够学习在接收复合指令时如何在分层结构中正确执行任务。

相反,当处理与高优先级指令冲突的低优先级指令时,采用上下文无关的方法。在这种情况下,我们训练模型忽略这些低优先级指令,就好像从未提供过它们一样。当用户尝试通过恶意提示与模型交互以执行未经授权的操作时,模型会学习识别并忽略这些提示,并根据更高优先级的指令执行任务,以保持能力。

表1 显示了我们如何通过不同的训练集塑造语言模型的行为,以处理不同的潜在指令冲突和攻击。它包括四个定性示例,每个示例都针对特定的攻击类型并显示系统消息、用户输入和预期的正确输出。封闭域提示注入示例展示了如何直接在封闭域任务中处理提示注入。系统消息提供指令,用户输入尝试更改这些指令。正确的输出是模型忽略用户输入的任何非法指令并坚持执行原始任务。接下来,“开放域未对齐”示例展示了如何处理开放域任务中未对齐的指令。即使用户要求模型的行为与系统消息相反,有效的输出显示模型也应该拒绝该请求并维持预期的功能。 “开放域对齐”示例显示了开放域任务中对齐的指令。用户请求与系统消息相匹配,模型经过训练以查看并满足合理的用户请求。

为了进一步加强模型的安全性,研究人员还实施了自动化红队测试。红队测试是一种模拟对抗性攻击的方法,以便您可以生成对抗性数据来训练和微调您的模型。我们使用Red Team LLM来模拟各种攻击场景,例如提示注入和系统消息提取,并使用这些数据来微调我们的模型。这不仅提高了模型对已知攻击类型的防御能力,还帮助模型学习如何泛化到未知的攻击类型。

图2 显示了该模型在多个基准测试中的性能改进。通过引入指令层次结构和相应的训练方法,模型在面对各种攻击时变得更加鲁棒。例如,该模型在防御系统消息提取攻击方面的性能提升了63%。此外,即使在训练过程中没有直接遇到某些类型的攻击(例如越狱攻击),该模型的鲁棒性也提高了30% 以上。这些结果证明了我们的方法在提高模型安全性和应对未知攻击方面的有效性。

在某些情况下,模型可能会表现出过度的拒绝行为,即使较低优先级的指令与较高优先级的指令匹配,也会选择忽略或拒绝执行,但这个问题将通过进一步的数据收集来解决,这可以通过模型优化来解决。

该模型使用一系列开源和新创建的基准测试进行评估,这些测试旨在模拟各种攻击场景,包括一些在训练阶段未遇到的攻击场景。这样的评估策略可以全面测试模型在实际应用中抵抗未知攻击的能力。

更令人鼓舞的是,我们的模型不仅在防御已知攻击类型方面表现良好,而且还表现出良好的泛化能力。例如,在针对越狱攻击进行测试时,我们的模型的稳健性提高了30% 以上。越狱攻击是一种特别危险的攻击类型,它试图绕过模型的安全限制并执行未经授权的操作。模型针对此类隐形攻击的出色表现表明,指令层次结构不仅增强了模型对特定攻击的抵抗力,而且还提高了模型针对各种潜在威胁的自我保护能力。

图3 显示了模型面对训练阶段未直接建模的几种攻击的泛化能力。例如,在测试越狱攻击时,模型能够有效地识别和抵御这些攻击技术,即使这些攻击技术在训练数据中没有明确表示,从而减少了错误输出的产生。

这些评估结果不仅证明了指令级概念的有效性,也为未来LLM安全研究提供了有价值的参考。相信不断的评估和优化将进一步增强模型的安全性,使其更适合各种高风险代理应用。

论文链接:https://arxiv.org/abs/2404.13208

以上有关#OpenAI 策略的信息:指令级系统保护大型模型免受恶意攻击。来源网络仅供参考。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/91625.html

(0)
CSDN's avatarCSDN
上一篇 2024年6月22日 下午9:07
下一篇 2024年6月22日 下午9:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注