通过双模式对抗提示越狱视觉语言模型

        最近,将视觉整合到大型语言模型(LLMs)中的兴趣显著增加,催生了大型视觉语言模型(LVLMs)。这些模型结合了视觉和文本信息,如LLaVA和Gemini,已经在包括图像字幕、视觉问题回答和图像检索等一系列任务中展示了不错的性能。然而,LVLMs表现出的行为很容易与其创造者预期的目标不一致,经常生成不真实或可能对用户有害的输出。

     为了揭示和减轻这些安全风险,越狱攻击已经作为一种红队策略出现,以绕过防护措施并评估模型的一致性。越狱攻击后,攻击者可以说服模型做任何事情,导致严重的安全后果,例如生成有害或不道德的内容,这些内容通常受到一致性指南的禁止。虽然在LVLMs的背景下已经出现了许多使用越狱攻击的披露和演示,但大多数攻击传统上都集中在为越狱攻击扰动视觉模态(即图像)上。这些包括制作视觉对抗性示例和将攻击意图编码为排版图像。然而,对齐的LVLMs同时利用视觉和文本特征进行预测,从而限制了目前仅扰动单一模态(即视觉)的攻击的有效性。例如,LLaVA会在没有与文本提示相关联的视觉对抗性图像的情况下拒绝回答,导致越狱失败。

    为了解决这个问题,本文介绍了双模态对抗性提示攻击(BAP),这是一种新的框架,通过同时优化视觉和文本提示来越狱LVLMs

1  LVLM 的结构和工作原理

LVLM(Large Vision Language Model)是一种将视觉信息和文本信息融合在一起的大型语言模型。它通过结合图像和文本信息,能够在图像理解、图像生成、图像描述、视觉问答等多个任务中展现出强大的能力。

1.1 LVLM 的结构

LVLM包含三个主要模块:

  • 视觉模块 : 该模块负责处理图像信息,将其编码为特征向量。常见的视觉模块包括 CLIP 模型的视觉编码器等。
  • 文本模块: 该模块是一个大型语言模型,例如 LLaMA 或 Vicuna,负责处理文本信息,并执行文本理解和生成任务。
  • 视觉语言连接器: 该模块负责将视觉特征和文本特征进行融合,例如通过交叉注意力机制或投影层。

1.2 LVLM 的工作原理

LVLM 的工作流程包括以下几个步骤:

  • 输入: 将图像和文本作为输入,分别传递给视觉模块和文本模块。
  • 编码: 视觉模块将图像编码为特征向量,文本模块将文本编码为嵌入向量。
  • 融合: 视觉语言连接器将视觉特征和文本特征进行融合,生成多模态特征。
  • 理解/生成: 文本模块根据多模态特征进行文本理解和生成,例如图像描述、视觉问答等。

2 BAP的技术框架及攻击流程

双模态对抗性提示 (BAP) 是一种针对大型视觉语言模型 (LVLM) 的攻击方法,它通过同时优化文本和图像提示来绕过模型的安全限制,从而诱导模型生成有害内容。

2.1 技术框架

查询不可知的视觉扰动:BAP利用一个由LLM构建的查询不可知语料库,该语料库包含与肯定前缀和否定抑制相关的句子。通过这个语料库,BAP优化视觉对抗性提示,使其能够鼓励LVLMs无论文本提示的具体意图如何都给出积极的响应。

意图特定的文本优化:在有了查询不可知的视觉对抗性提示后,BAP进一步优化文本提示,以增强在特定有害意图下的越狱能力。这通常遵循以下三个阶段:

  • 初始化:给定一个有害意图,直接将其作为初始文本提示。
  • 反馈:使用一个评估函数来确定LVLMs对越狱攻击的反应是否成功。
  • 迭代:如果越狱未成功,LLM将根据CoT策略和有害意图,分析失败的原因,并重新构思文本提示。

2.2 攻击流程

BAP 的攻击流程如下:

  • 构建查询无关的图像扰动: 利用 LLM 生成一个包含肯定前缀和否定抑制的少量样本语料库,然后使用 PGD 攻击方法在图像中嵌入对抗性扰动,使得 LVLM 对任何有害查询都给出积极的响应。
  • 构建意图特定的文本提示: 利用 LLM 和 CoT 推理过程,分析 LVLM 的响应,并根据具体的攻击意图对文本提示进行优化,例如通过语义重写、上下文欺骗等方法,使得 LVLM 生成特定类型的有害内容。
  • 评估攻击效果: 使用评估函数判断 LVLM 的响应是否成功绕过了安全限制,并生成有害内容。

3 实验

3.1 实验设置

模型和数据集:

  • 开源 LVLM: LLaVA, MiniGPT-4, InstructBLIP
  • 商业 LVLM: Gemini, ChatGLM, Qwen, ERNIE Bot
  • 数据集: SafetyBench, AdvBench

评价指标: 使用攻击成功率(Attack Success Rate, ASR)作为主要指标来评估方法的有效性。

攻击方法对比: 将BAP与两种最先进的越狱攻击进行了比较:Liu等人的方法和Qi等人的方法。Liu等人的方法结合了与攻击意图相关的图像和排版文本作为视觉对抗性提示。Qi等人的方法基于特定场景的语料库优化了视觉对抗性提示。

3.2 白盒攻击

  • 查询相关设置: BAP 在 13 个攻击场景下均取得了最高的 ASR,平均超过其他攻击方法 49.30%。
  • 查询无关设置: BAP 在 IA 和 HS 场景下取得了高 ASR,平均超过其他攻击方法 52.98%,展示了其泛化攻击能力。

3.3 黑盒攻击

  • 开源 LVLM: BAP 在 LLaVA 和其他两个模型之间的迁移攻击效果较差,可能是由于模型架构差异。
  • 商业 LVLM: BAP 对商业 LVLM 也取得了部分攻击效果,但成功率低于开源 LVLM,可能是由于模型架构、训练方法和防御机制等因素的影响。

3.4 消融实验

对BAP方法的两个组成部分进行了消融研究:查询不可知的视觉扰动和意图特定的文本优化。

  • 视觉对抗性提示:通过三种方式研究了视觉对抗性提示的作用,包括比较有无视觉对抗性提示的BAP、使用不同图像作为视觉提示进行BAP攻击,以及使用不同语料库优化视觉对抗性提示。
  • 文本对抗性提示:从两个方面研究了文本对抗性提示的作用,包括比较有无文本对抗性提示的BAP,以及比较使用不同文本提示生成方法的BAP。

实验结果表明,BAP 在各种 LVLM 和场景下都取得了显著的攻击效果,证明了其有效性。BAP 的研究对于提高 LVLM 的安全性具有重要意义。

4 相关资源

4.1 BAP官网代码下载:

GitHub - NY1024/BAP-Jailbreak-Vision-Language-Models-via-Bi-Modal-Adversarial-Prompt

4.2 SafetyBench数据集

SafetyBench是一个全面的基准测试,旨在通过多项选择题来评估LLM的安全性能。该数据集包含11435道多项选择题,涵盖7个不同的安全隐患类别,并且支持中英文两种语言。SafetyBench的目的是提供一个可靠的评估框架,以帮助研究人员和开发者全面了解LLM的安全性。

官网下载地址:github.com/thu-coai/SafetyBench

4.3 AdvBench数据集

AdvBench则专注于评估和比较LLM在面对恶意提示和后缀时的安全性和鲁棒性。它包含了一些恶意的提示和后缀,可以诱导LLM生成有害或不良的文本,如制造炸弹、散布谣言、煽动暴力等。AdvBench的设计旨在提高对LLM攻击的认识和防范,以及促进LLM的安全性研究。此外,AdvBench还包括一个名为AdvBench Subset的子集,包含50个提示,要求提供32个类别的有害信息。

官网下载地址:github.com/thunlp/Advbench

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/850884.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

论文阅读:All-In-One Image Restoration for Unknown Corruption

发表时间:2022 cvpr 论文地址:https://openaccess.thecvf.com/content/CVPR2022/papers/Li_All-in-One_Image_Restoration_for_Unknown_Corruption_CVPR_2022_paper.pdf 项目地址:https://github.com/XLearning-SCU/2022-CVPR-AirNet 代码解读…

c++中, 直接写浮点数, 是float 还是 double?

如果直接一个浮点数, 那么他默认是float还是double呢? 测试用例 #include <iostream> using namespace std;int main() {auto x 0.2;float f 0.2;double d 0.2;cout << "x Size : " << sizeof(x) << " bytes" << endl…

vue28:组件化开发和根组件

简单写个点击事件 <template> <div class"app"><div class"box" click"fn"></div></div> </template><script> export default {//导出当前组件的配置项//里面可以提供 data methods computed wat…

AtCoder Beginner Contest 356 G. Freestyle(凸包+二分)

题目 思路来源 quality代码 题解 对n个泳姿点(ai,bi)建凸包&#xff0c;实际上是一个上凸壳&#xff0c; 对于询问(ci,di)来说&#xff0c;抽象画一下这个图&#xff0c;箭头方向表示询问向量 按x轴排增序&#xff0c;并且使得后面的y不小于前面的y&#xff0c;因为总可以多…

java asm使用切面

在Java中&#xff0c;使用ASM框架实现切面主要涉及到字节码操作和运行时动态代理。ASM是一个流行的Java字节码操作库&#xff0c;它允许开发者在编译时期或运行时期修改类和方法的行为。以下是使用ASM实现切面的方法&#xff1a; ### 一、引入依赖 首先&#xff0c;在你的项目中…

C++ Easyx案例实战:Cookie Maker工作室1.0V

前言 //制作属于自己的工作室&#xff01; 注&#xff1a;运行效果以及下载见Cookie Maker 工作室成立程序。 关于Cookie Maker工作室成立的信息&#xff0c;I am very happy&#xff08;唔……改不过来了&#xff09;。 OKOK&#xff0c;第一次用图形库写程序&#xff08;图形…

【Maxcompute】数据封装json、根据经纬度计算距离、根据证件号提取年龄段信息、判断是否在外包多边形内udf、udtf函数

1.梳理、总结经纬度处理在Maxcompute平台上的实战应用&#xff0c;如模型结果等封装json格式、根据经纬度计算距离udf、根据证件号提取年龄段信息、判断是否在外包多边形内udf、udtf、函数注册与使用。 2.欢迎批评指正&#xff0c;跪谢一键三连&#xff01; 文章目录 1.参考代码…

Java之数据库连接桥梁JDBC学习笔记

JDBC调用 Java与数据库的连接桥梁是JDBC&#xff08;Java Database Connectivity&#xff09;。JDBC是Java编程语言中用于连接和执行数据库操作的API&#xff08;应用程序编程接口&#xff09;。它提供了一种标准的方法&#xff0c;允许Java程序与各种数据库&#xff08;如MyS…

在开源处理器架构RISC-V中发现可远程利用的中危漏洞

在RISC-V SonicBOOM处理器设计中发现中度危险的漏洞 最近&#xff0c;西北工业大学的网络空间安全学院胡伟教授团队在RISC-V SonicBOOM处理器设计中发现了一个中度危险的漏洞。这个团队的研究人员发现了一个可远程利用的漏洞&#xff0c;该漏洞存在于开源处理器架构RISC-V中。…

C++中实现一个泄漏检测工具

在C++中实现一个泄漏检测工具是一个复杂但有趣的任务。这通常涉及到重写或拦截内存分配和释放函数,以及跟踪所有内存分配的情况。以下是一个简单的泄漏检测工具的实现思路: 重写new和delete操作符: 你可以通过重载全局的new和delete操作符来跟踪内存分配和释放。这需要创建一…

单灯双控开关原理

什么是单灯双控&#xff1f;顾名思义&#xff0c;指的是一个灯具可以通过两个不同的开关或控制器进行控制。 例如客厅的主灯可能会设置成单灯双控&#xff0c;一个开关位于门口&#xff0c;另一个位于房间内的另一侧&#xff0c;这样无论你是从门口进入还是从房间内出来&#x…

Kafka面试题及答案

Kafka是一个开源的分布式流处理平台&#xff0c;被广泛应用于大数据领域。由于其高性能、高可靠性和可扩展性&#xff0c;Kafka成为了很多公司工程师面试的热门话题。如果你准备面试Kafka相关的职位&#xff0c;下面是一些你可能会遇到的常见问题及其解析。 Kafka的基本概念是…

java web:springboot mysql开发的一套家政预约上门服务系统源码:家政上门服务系统的运行流程

java web&#xff1a;springboot mysql开发的一套家政预约上门服务系统源码&#xff1a;家政上门服务系统的运行流程 家政上门服务系统的优势 服务质量更稳定&#xff1a;由专业的家政人员提供服务&#xff0c;经过严格的培训和筛选。 价格更透明&#xff1a;采用套餐式收费&…

Vue3+TS 开发 Google 浏览器插件模板

最近做个产品小 demo 需要开发浏览器插件&#xff0c;默认情况下开发插件是要采用 html、css、js…我不太习惯&#xff0c;找了一下浏览器插件也是有开发框架的&#xff0c;例如&#xff1a;WXT、Plasmo 等。 不过综合对比考虑使用了开源大佬封装的 create-vue-chrome-ext 来开…

linux install cmake3.22

在Linux上安装CMake 3.22的步骤如下&#xff1a; 下载CMake 3.22的源代码。 解压源代码。 构建并安装CMake。 以下是具体的命令&#xff1a; # 下载CMake 3.22 wget https://github.com/Kitware/CMake/releases/download/v3.22.0/cmake-3.22.0.tar.gz # 解压源代码 tar…

RISC-V基础编译

RISCV编译 1、 编译步骤2、重要配置3、elf-gcc和linux-gnu-gcc的区别1、 编译步骤 mkdir build installcd build../riscv-gnu-toolchain/configure --prefix=/xxx/install --with-arch=rv32gc --with-abi=ilp32d --enable-debugmake linux //linux工具链make newlib //编译n…

Educational Codeforces Round 166 (Rated for Div. 2)

文章目录 A. Verify Password题意&#xff1a;题解&#xff1a;代码&#xff1a; B. Increase/Decrease/Copy题意&#xff1a;题解&#xff1a;代码&#xff1a; C. Job Interview题意&#xff1a;题解&#xff1a;代码&#xff1a; A. Verify Password 题意&#xff1a; 给定…

Word多级标题编号不连续、一级标题用大写数字二级以下用阿拉伯数字

Word多级标题编号不连续 &#xff1a; 一级标题用大写数字二级以下用阿拉伯数字&#xff1a;

墨雨云间王星越雨中情深

墨雨云间&#xff1a;王星越的雨中情深&#xff0c;吻上萧蘅&#xff0c;宿命之恋在烟雨朦胧的《墨雨云间》中&#xff0c;王星越饰演的角色&#xff0c;以其深邃的眼神和细腻的演技&#xff0c;将一段宿命之恋演绎得淋漓尽致。当镜头聚焦于他与阿狸在雨中的那一幕&#xff0c;…

(南京观海微电子)——温度对TFT影响及改善方式

温度如何损坏 LCD&#xff1f; 这个工作温度范围会影响设备内的电子部分&#xff0c;超出范围会导致 LCD 技术在高温下过热或在寒冷时变慢。 至于液晶层&#xff0c;如果放在高温下&#xff0c;它会变质&#xff0c;导致它和显示器本身出现缺陷。 LCD 温度限制&#xff1a; 什…