当前位置: 首页 > article >正文

Jailbreaking ChatGPT via Prompt Engineering: An Empirical Study

目录

概要

背景

1.提示数据收集过程

2.用于越狱提示分类的模型

3.禁止场景生成方法

4.实验设置

一、越狱LLM的提示符有几种类型?

1.假装

2. 注意力转移

 3.特权升级

二、越狱提示绕过llm限制的能力如何?

1.对于不同禁止场景的分析

2.对于不同越狱提示符类型的分析

3.鲁棒性

4.提示进化

 三、CHATGPT对这些越狱提示的抵抗能力如何?

 1.模型版本

2.非越狱提示的效果


概要

本文的研究主要调查了三个问题:

  • (1)越狱LLM的提示符有几种类型?
  • (2)越狱提示绕过llm限制的能力如何?
  • (3)CHATGPT对这些越狱提示的抵抗能力如何?

首先,作者开发了一个分类模型分析现有提示符分布,确定了十种不同的模式和三类越狱提示符。随后,评估了CHATGPT 3.5和4.0版本提示符的越狱能力,利用了8个禁止场景中的3,120个越狱问题的数据集。最后,评估了CHATGPT对越狱提示的抵抗力,发现提示可以在40个用例场景中一致地逃避限制。

背景

提示工程是研究人员破解CHATGPT的重要手段,它包括选择和微调提示,来引导LLM绕过限制。例如,通过提示破解CHATGPT的一种常用方法是指示它模拟“Do Anything Now”(DAN)行为,这种方法允许CHATGPT产生以前无法实现的结果。

越狱是软件系统中的一个传统概念,黑客对系统进行逆向工程并利用漏洞进行特权升级。在大模型的上下文中,越狱是指绕过模型受限行为的过程。它通常被开发人员和研究人员用来探索llm的全部潜力,并推动其能力的边界。

越狱提示示例

 禁止场景是在真实世界的会话上下文中,CHATGPT被禁止提供有意义的输出。OpenAI在官方使用策略中列出了所有禁止使用的场景。在每个被禁止的场景中,CHATGPT都会警告用户,当前对话可能会违反OpenAI政策。

禁止场景示例

1.提示数据收集过程

作者建立了首个研究CHATGPT越狱的数据集:提取越狱聊天网站https://www.jailbreakchat.com/ 从2023年2月11日到论文撰写日期的越狱提示。然后,手动检查并选择专门设计用于绕过CHATGPT安全机制的提示。最后将所有符合条件的提示选择到数据集中,以保证提示性质的多样性。

2.用于越狱提示分类的模型

本文提出了一个由10种不同越狱模式组成的稳定而全面的分类法。值得注意的是,一个越狱提示可能包含多个模式。此外,根据提示背后的意图,作者将这10种模式分为三种一般类型,即假装、注意力转移和特权升级

越狱提示的分类

假装:这类提示试图改变对话背景,同时保持相同意图。例如,假装提示在角色扮演游戏中使用CHATGPT,从而将对话上下文从直接的问答场景转换为游戏环境。然而,提示的目的仍然是一样的,那就是获得一个禁止场景的答案。在整个对话过程中,模型认为自己在游戏环境中回答问题。

注意力转移:这种类型的提示旨在改变对话的语境和意图。例如,一种典型的注意力转移模式是文本延续。在此场景中,攻击者将模型的注意力从问答场景转移到故事生成任务。此外,提示语的意图从提出模型问题转变为使其构建一段文本。并且模型可能没有意识到,在生成对该提示的响应时,它可能会隐式地显示被禁止的答案。

特权升级:这是一个独特的提示类别,旨在直接规避所施加的限制。与前面的类别相反,这些提示试图诱导模型打破现有的任何限制,而不是绕过它们。一旦攻击者提高了他们的特权级别,他们就可以问被禁止的问题,并在没有进一步阻碍的情况下获得答案。

3.禁止场景生成方法

本文从OpenAI的禁用使用策略中得出了8种不同的禁用场景,这些场景包含CHATGPT相关的潜在风险和关注点。鉴于缺乏涵盖这些被禁止场景的现有数据集,作者选择创建自己的场景数据集,以满足此特定目的。为了实现这一目标,本文的作者合作为8个被禁止的场景创建问题提示。他们共同为每个场景写了五个问题提示,以确保在每个被禁止的场景中有不同的观点和细微差别。这可以最大限度地减少提示生成过程中潜在的偏见和主观性。

OpenAI禁止场景的描述和示例

最终的场景数据集包括40个问题提示(8个场景× 5个提示),涵盖了OpenAI禁止使用策略中列出的所有禁止场景。后文将讨论如何使用这个场景数据集和越狱提示数据集来研究越狱提示绕过CHATGPT的能力和健壮性。

4.实验设置

为了最大限度地减少随机性并保证可以全面评估GPT3.5-TURBO和GPT-4模型的能力,本文对每个问题和每个越狱提示执行了5轮,总共有31,200个查询(5个问题× 8个禁止场景× 78个越狱提示× 5轮× 2个GPT模型)。在获得结果之后,作者执行了一个手动评估,通过确定响应是否违反了禁止的场景来仔细检查每个越狱尝试的成功。

一、越狱LLM的提示符有几种类型?

1.假装

假装大模型的身份是AI博士,使大模型认为是在进行角色扮演的游戏
从而诱导LLM输出禁止场景的有意义回答

2. 注意力转移

CHATGPT的注意力从回答问题转移到程序理解上,要求它猜测Python函数的输出。
而原始问题作为参数嵌入到函数中

 3.特权升级

要求CHATGPT直接进入开发人员模式,绕过模型施加的任何限制

作者分析了3种类型的10种模式的越狱提示的分布:

 从中可以发现:伪装是攻击者用来绕过限制的最普遍的策略(97.44%),77.6%的提示完全属于这一类。注意力转移(6.41%)和特权升级(17.96%)使用频率较低。此外,相当一部分注意力转移和特权升级提示在试图绕过限制时也包含假装组件。

造成这种现象的主要原因有两个:

  • 首先,假装相对容易实现,因为它只需要在对话上下文中进行更改,而注意力转移和特权升级则需要更复杂的逻辑和特制的提示。
  • 其次,假装是现有越狱提示的关键思想,并被证明在误导模型的结果方面是强大的。因此,即使是为了转移注意力和提升特权,攻击者也愿意将CHATGPT设置为新的会话环境,给大模型一个新的角色。

二、越狱提示绕过llm限制的能力如何?

1.对于不同禁止场景的分析

  • 对于政治竞选或游说(PCL)和高风险政府决策(HGD)场景,OpenAI没有施加任何限制
  • 除了PCL和HGD的高偏差情景外,最容易被打破的情景是非法活动(IA),其次是欺诈或欺骗性活动(FDA)和成人内容(Adult)。

2.对于不同越狱提示符类型的分析

模拟越狱(SIMU)和超级越狱(SUPER)是最有效的越狱模式,越狱率分别为93.5%和93.3%。作者把他们的表现归因于两个主要因素:

  • 首先,对于特权升级,这两种模式都旨在获得系统中尽可能高的访问级别。因此,成功的越狱会带来更强的越狱能力。
  • 其次,特权升级中的越狱提示通常与伪装结合在一起,这增加了提示结构的复杂性。作者推断,这种复杂性有助于增强提示符的强度。

效率最低的模式是程序执行(Program Execution, PROG),平均越狱率为69.0%。这种低效率的主要原因是包含了一个旨在转移CHATGPT注意力的程序。然而,CHATGPT有时不能完全理解提示的预期目标(即回答禁止的问题),而是专注于解释程序的语义,导致越狱尝试失败。这一发现表明,虽然为CHATGPT提供极其复杂的上下文可能有效地绕过限制,但它也有产生过多混乱的风险,可能会阻碍它解决预期的问题。

3.鲁棒性

为了评估稳健性,作者还评估了重复尝试中行为的一致性,下表中每个条目值表示特定模式、问题和场景组合成功越狱的平均次数,其值范围从0到5。

从中我们可以得出,RE和SIMU越狱提示类型在各种场景中表现出最佳的总体性能(成功案例的高值)和鲁棒性(低方差)。LOGIC方差最大,表明越狱不稳定,PROG在所有场景中的性能和健壮性都很差。导致这种情况的可能原因是某些提示会引发理解的错觉,导致模型理解不正确的信息。

4.提示进化

下表给出了DAN家族的演变系列以及每个提示符成功越狱的案例数量。随着越狱提示的发展,成功案例的数量明显增加。旧版本的提示成功率较低的原因是OpenAI逐渐意识到这些越狱模式,并开始在CHATGPT中禁止它们。因此,这导致了提示符不断地绕过限制的演变。DAN提示符的最新版本在所有200次尝试中都成功地绕过了限制,这表明提示进化仍有很大的发展空间。攻击模型要比保护模型容易得多,因此保护方法仍然需要进行重大改进。

 三、CHATGPT对这些越狱提示的抵抗能力如何?

 1.模型版本

下表显示了GPT-3.5-TURBO和GPT-4在每个场景中成功越狱尝试的次数。 

与GPT-3.5-TURBO相比,GPT-4对旨在提取违禁内容的越狱提示具有更强的抵抗力,可以推断出GPT-4具有更好的理解输出含义的能力,它对越狱提示具有更强的抵抗力。

2.非越狱提示的效果

作者在实验中观察到在某些情况下,CHATGPT可能会在不使用越狱提示的情况下生成禁止消息。为了准确评估越狱的强度,本文进一步测试了CHATGPT对非越狱提示的恶意内容的响应,总共进行了1950次尝试(即5个场景× 78个提示× 5次重复尝试)。

 结果表明,越狱提示明显优于非越狱提示。但是,在某些情况下,非越狱提示和越狱提示执行得一样好。这表明OpenAI实施的限制可能不够强大,无法在所有场景中防止被禁止的内容。


http://www.kler.cn/a/392731.html

相关文章:

  • upload-labs关卡记录12
  • 在JavaScript中,let 和 const有什么不同
  • NLP 中文拼写检测纠正论文 C-LLM Learn to CSC Errors Character by Character
  • Qt使用QZipWriter和QZipReader来解压、压缩文件
  • 命令行之巅:Linux Shell编程的至高艺术(中)
  • 300多种复古手工裁剪拼贴艺术时尚字母、数字、符号海报封面Vlog视频MOV+PNG素材
  • 手术机器人:精准医疗的新选择
  • blind-watermark - 水印绑定
  • 大数据新视界 -- 大数据大厂之 Impala 在大数据架构中的性能优化全景洞察(上)(13/30)
  • CSS Modules中的 :global
  • 矩阵的各种计算:乘法、逆矩阵、转置、行列式等——基于Excel实现
  • 遇到Word打不开,WPS可以打开的解决办法
  • ES6字符串的新增方法
  • 微服务架构面试内容整理-API 网关-Gateway
  • (68)希尔伯特变换、解析信号,与瞬时幅度、频率和相位的提取的MATLAB仿真
  • 《C陷阱与缺陷》
  • 缓存淘汰策略及其使用场景详解
  • 效率工具-tig的使用
  • 最新的ssl证书有效期只有3个月,ssl到期后如何处理?
  • Java Http 接口对接太繁琐?试试 UniHttp 框架吧
  • Unity Assembly Definition Assembly Definition Reference
  • Python网络爬虫与数据采集实战——网络爬虫的基本流程
  • xcode-select: error: tool ‘xcodebuild‘ requires Xcode, but active developer
  • 随机链表 (Randomized Linked List)、随机树 (Randomized Tree)详细解读
  • [Java]微服务治理
  • 小面馆叫号取餐流程 佳易王面馆米线店点餐叫号管理系统操作教程