技术实践|大模型内容安全蓝军的道与术

1、引子

大语言模型(LLM)在2023年大放异彩,在许多领域展现出强大的能力,包括角色扮演,文本创作,逻辑推理等。然而,随着其应用范围的扩大,生成内容的安全问题也日益凸显。这包括但不限于生成虚假信息、有害内容、偏见或歧视性言论等。这些问题不仅可能影响用户体验,还可能对社会稳定造成威胁。

常用的大模型安全强化措施包括:预训练语料过滤,安全对齐训练,蓝军测试(或称红队测试,red-teaming)。本文将主要讨论我们建立大模型内容安全蓝军体系的一些思考。

2、什么是蓝军

根据维基百科的解释:

蓝军是指一个团队在组织的指导下假装成敌人,试图对组织进行物理或数字入侵,然后报告回来,以便组织改进其防御。

另外

一些蓝军的定义更广泛,包括组织内任何一个被指示要跳出常规思维模式,考虑较不可能的替代方案的团队。这对于防止错误假设和群体思维非常重要。

建立蓝军体系时,存在哪些方法论,能够指导我们的工作,我们参考了英国国防部刊印的《Red Teaming Handbook》,书中强调了建立蓝军体系的增益在于通过全面、公正的信息收集,避免偏见影响理解和评估,从而制定符合目标且不受外界影响、考虑周到、避免过度乐观的决策。这些方法论旨在确保决策和实施过程的效率与准确性。

在网络安全领域,依靠蓝军帮助防御方查缺补漏,加固安全能力的做法已有了成熟的实践经验,其核心价值主要体现在以下三个方面:

客观检验安全能力:通过模拟真实的网络攻击场景,蓝军帮助防御方全面检测其安全系统的防护效果,揭示安全团队对高级威胁的应对能力,从而提供一个量化和客观的安全能力评估。

理清风险盲点:蓝军测试揭示防御方可能忽视的安全风险点和潜在漏洞,帮助识别安全体系中的薄弱环节,并有针对性地制定加固措施,优化安全策略。

评估防御体系价值:蓝军模拟攻击量化防御措施的实际表现,评估安全控制和技术工具的效用,从而为安全预算分配和未来的安全投资决策提供支持,确保资源投入到能显著提升安全水平的关键领域。

基于以上蓝军体系在最原始军事领域上的核心方法论与在网络安全领域的应用实践,我们了解到了蓝军体系中真正带来价值的特点,在我们的蓝军体系设计之初,需要着重反复衡量是否满足了这些要求,才能保证蓝军体系搭建完成后带来真正的价值。

3、大模型内容安全蓝军

大模型内容安全蓝军的核心目标是从攻击者/恶意用户的视角与大模型进行交互,通过构造测试prompt,引发包含不安全内容的回答,来了解当前大模型的潜在漏洞。我们将整个蓝军体系拆解为三个模块:

prompt生成模块:通过人工撰写,模型生成等各种方式,生成蓝军测试使用的prompt。

prompt跑批模块:将测试prompt输入蓝军攻击对象大模型,收集大模型回复内容。

标注汇总模块:标注测试prompt回复内容的风险,汇总整体风险情况,提出优化建议。

整体大模型内容安全蓝军的输出内容包括:

整体内容安全层面的的评测报告,包括不同的内容分类,不同的攻击方法。

针对各项风险的防护建议

与大模型蓝军相对应的大模型安全防御系统,一般由预训练语料过滤,安全对齐训练等方式来实现。蓝军在输出结论后,对于防御体系可以通过以下形式加固自身的能力,包括:

优化预训练语料过滤策略

丰富对齐训练数据集

优化大模型输入输出内容风控检测策略

4、大模型内容安全蓝军的实践

在GPT4,Llama2等主流模型的技术报告中,无不提到了蓝军在模型安全性优化的重要作用。Openai在GP4的安全治理工作中,组建了来自多个领域的专家的蓝军,包括公平、对齐研究、行业信任与安全、虚假/错误信息、化学、生物风险、网络安全、核风险、经济学、人机交互、法律、教育和医疗保健等领域。专家蓝军团队在模型正式发布前,根据自己的领域经验与模型完成大量交互,挖掘潜在的不安全内容。

Meta在Llama2的安全治理工作中,招募了超过350人的蓝军,人员来自多个领域的专家,涵盖网络安全、选举舞弊、社交媒体错误信息、法律、政策、民权、伦理、软件工程、机器学习、可信AI和创意写作等领域。并且蓝军团队代表了各种社会经济阶层、性别、民族和种族。蓝军成员成功地帮助了模型开发团队发现了广泛的风险类别,包括犯罪策划、人口贩运、受管制或受控物质、色情内容、不合格的健康或财务建议、侵犯隐私等,以及不同的攻击路径(如假设性问题、格式错误/拼写错误的输入或扩展对话)。

人工蓝军很强大,但是需要大量领域专家,且难以大规模挖掘风险。因此,更低运行成本,更高挖掘效率的自动化蓝军体系成为了学术界的热点方向。

在Perez (2022)的工作中,使用了另一个大语言模型自动生成测试prompt作为蓝军模型,自动寻找目标语言模型表现出有害行为的情况,并使用训练后的文本分类器评估目标语言模型生成的的回答,以检测攻击性内容。通过这个方法,发现了一个280B参数的LM聊天机器人中数以万计的攻击性回答。论文中探索了多种自动生成prompt的方法,包括零样本学习,少样本学习,有监督学习和强化学习法,用于生成具有不同多样性和难度级别的测试prompt。

在Casper (2023)的工作中,驳斥了以往的自动化蓝军工作通过已有的文本分类器对不良输出进行分类的思想,这种方法使得蓝军的挖掘结果存在偏狭,不能更好地适配不同模型,且对于未被提前定义的风险类型不能成功捕捉。因此作者提出了一种新的自动化蓝军框架,包括三个步骤:①探索模型在期望上下文中的行为范围;② 建立不良行为的定义和测度标准(例如,训练一个反映人类评价的分类器);③利用这种测度来开发多样化的对抗性提示,以挖掘模型的缺陷。这样的自动化蓝军体系能更好地规避偏狭,提升蓝军的挖掘效率和实际价值。

5、大模型内容安全蓝军之道

结合蓝军的核心方法论和业界大模型内容安全蓝军的实践,我们定义大模型内容安全蓝军的核心价值,由以下两个核心部分决定:蓝军题库的质量与风险标注的质量,即:

VRedTeam = Qprompt ∗ Qlabel

蓝军题库的质量
我们认为高质量的蓝军题库应该有以下几个特点:

(1)更全面的内容风险类别

好的题库需要建立一个科学的内容安全分类体系,并尽数收录主流的不安全内容类型。并在分类体系下,拓展每一个类别的题目数量。

题库包含的风险类别,应该将业界主流的风险内容认知尽数包括,这些内容可以来源于:

公开行业标准:例如在《生成式人工智能服务安全基本要求》列出的5大不安全内容类别(核心价值观,歧视,商业违法违规,侵犯他人权益,准确可靠),并细化成31小类。

主流大模型用户手册,例如chatgpt《Usage Policy》,《文心一言用户协议》,其中包含了对于禁止用户输入内容范围的具体定义。

内部内容安全标准文件,例如企业内部产品的内容安全运营经验,标准。

主流的大模型攻击方法,包括越狱方法,攻击方法,例如jailbreak.com提供了大量的社区贡献的越狱模版。

(2)包含新鲜事件

题库需要收集实时的互联网舆情事件,热点新闻,并转化为测试prompt,因为大模型的对齐存在时效性,由最新事件内容转化的测试问题不会被包含在对齐训练的数据集中,因此潜在的风险更大。另外,用户和大模型的交互中,与实时内容有关对prompt占据了不小的比例,因此,及时的扫描可以使风险尽快被感知,尽快被处理。

(3)符合用户交互习惯

LLM常见的性能benchmark中(例如MMLU),为了量化LLM在某一方面的性能,会使用选择题+答案的方式,让LLM回答大量带选项的问题,并与答案匹配,最后统计一个分值,以此比较大模型之间的性能优劣。这种方法的好处是标注的判断标准更客观,且实施标注作业效率更高。

在安全性评测领域中,也有一些类似的工作(Zhang 2023),使用选择题的方法,对LLM的安全性做量化。然而在蓝军体系中,我们的目的更注重挖掘到真实用户在使用LLM的过程中可能会引发的内容风险,因此我们的蓝军prompt需要还原真实用户的交互习惯,从而引发真实用户场景下的回复内容。选择题通常不是正常用户与LLM的交互方式,依据安全类选择题回答错误,作为蓝军挖掘到的风险case,实际上不能反映模型真正在运营中的潜在风险。

综上所述,我们认为,建立符合用户交互习惯的蓝军题库可以模拟更真实的用户使用场景,使测出的风险更有现实指导意义。

风险标注的质量
(1)风险标注标准

对于同一个回答文本内容,在没有统一标准的情况下,不同的标注人员极有可能产生不同的结论。因此,无论是人工标注还是训练自动标注模型,我们都需要确定一个风险标注标准,才能保证标注的结果稳定一致。标注标准同时需要不断更新不断优化,尽可能减少争议,且符合主流认知。

(2)自动标注模型

在积累了大量的人工标注数据后,我们可以不断优化一个自动标注模型,提升蓝军体系的标注效率,自动标注模型选型可以使用开源的小尺寸语言模型,与传统文本分类模型相比,有更强的推理能力,类似的工作例如(Inan 2023)。我们设计了自动标注模型更新机制,人工标注干预机制,防止标注模型的固化导致未知风险类型不能识别,从而丧失风险挖掘的全面性。

6、大模型内容安全蓝军的思维误区

题目更多=更全面?
在商业化大模型安全项目中,我们关注到不少安全测试题库的供给方和需求方仅以题库的问题数量作为判断题库质量的依据。我们认为,题目的数量多,并一定代表覆盖风险的全面性。极端的情况下,同一个prompt可以生成无数个语义相似但不是完全相同的prompt,然而这样的题库对于整体风险感知完全没有意义。

如何体现题库覆盖风险的全面性,我们认为,题库覆盖风险全面性需要从题材广度和表达方式广度分别扩展:

题材扩展:包含各种类型的内容题材,背景知识,观点,关键词等。

表达方式扩展:通过文本对抗的方法生成语义相似的prompt,或套用越狱的prompt模版,在保持prompt语义的情况下,增强prompt的攻击性。

要建成一座宏伟的“安全测试题库大厦”,必须依赖一个强健的骨架结构,我们的骨架结构就是我们的风险分类体系,需要保证骨架的完整(分类全面),强壮(分类正确),才能使这个大厦在不断添砖加瓦的过程中保持平衡且坚固。

偏狭的规避
蓝军体系的核心思想始终在强调对偏狭的规避,保证蓝军能够对风险感知的全面性。然而在蓝军系统构建中,部分工具的引入会在不经意间将偏狭引入到系统中,导致整个蓝军体系逐渐失去全面性。

下面我们列举一些大模型内容安全蓝军建设中存在的偏狭无意中被引入的问题:

(Casper 2023) 指出,一些大模型内容安全蓝军工作,会根据特定的文本子序列,或使用一个训练过的文本分类器自动标注风险,这样的蓝军体系实际上就像寻找稻草堆里的针头。实际上,一个理想的蓝军体系更像在堆满不同针头的稻草堆中寻找一根描述模糊的针头,因为大模型产生的内容风险,并不一定是被人能提前定义的,用一个偏狭的标注方法去识别风险,只能使整个蓝军体系仅仅挖掘开发者已知的风险,然而智者千虑,必有一失,对于体系认知外的风险,不能直接粗暴的排除。(Casper 2023)提出EXPLORE, ESTABLISH, EXPLOIT的蓝军框架,结合无监督学习对未知风险的归纳能力,实现对全面风险的捕捉。

同样,在评测问题生成方面,也存在偏狭被无意中引入的风险。常见的一种评测问题生成方法,类似(Perez 2022)工作中少样本学习(few-shot)的尝试,依赖一些种子问题,去生发扩展一些新的问题,这样的问题在于整个评测题库的语义空间被种子问题的语义空间完全锁死,如果种子问题本身质量不高,风险分布不够全面,则在此基础上进一步衍生的评测问题将更加恶化,更加偏狭。因此,引入一个科学的全面的分类框架,并能够结合外界知识,新鲜预料作为补充知识辅助生成,可以一定程度上保证题库语义空间的可扩展性。同时,生成的方法也可以多样化,除了基于现有种子问题的少样本学习方法,可以结合零样本学习,Reflection Agents等方法,进一步提升生成问题的自由度,丰富度。

在我们的自动化蓝军实践中,我们通过以下的实践方式,尽可能地实现偏狭的规避,包括:

在评测prmopt生成环节,我们通过不同的评测prompt生成模块结合去补充整个题库,不同的生成模块会有不同的自由度和不同的生成质量。比如通过大模型零样本学习方法生成,可以激发大模型的创造力,创造出我们预期之外的风险评测prompt,但同时其生成高质量高风险的评测prompt比例偏低;通过大模型少样本学习方法生成,使用题库中积累的部分高质量评测prompt作为例子,让大模型生成类似的评测prompt,这种方法生成的内容基本和我们题库中的评测prompt风险相似,很难创造预期之外的新风险类型,但是整个模块生成高质量高风险的评测prompt比例较高。我们结合多种类的生成模块,最后通过一个prompt质量评估模块,统一管理评测prompt的质量,淘汰质量不合格的生成内容,实现全面的风险题库构造。

在标注环节,我们结合多种模型,包括预训练语言模型(如bert),开源大语言模型,闭源大语言模型接口,开源大语言模型自微调版本,加上人工专家审核,尽可能的保证对整体风险的召回,防止单一模式的标注导致风险识别中的偏狭。

7、总结

本文介绍了大语言模型(LLM)内容安全的重要性,以及蓝军体系在保障大模型内容安全方面的作用。蓝军通过模拟攻击者视角,挖掘大模型的潜在漏洞。文章强调了蓝军的核心目标、方法论和关键增益,并提供了提升蓝军题库质量和风险标注质量的建议。同时,指出了在构建蓝军体系时需要避免的思维误区,并给出了相应的解决方案。这些建议和解决方案有助于推动大模型在安全领域的进一步发展。
百度大模型内容安全评测
百度安全大模型内容安全评测服务,以网信办《生成式人工智能服务管理办法(征求意见稿)》和信安标委的《生成式人工智能服务安全基本要求(征求意见稿)》为指导基础划分安全分类,通过在该安全分类体系中设定的不安全对话场景,针对性地生成了对应的评测内容,供大模型进行内容安全评测评估,以达到帮助大模型内容风控系统升级,促进大模型生态健康发展的目的。

针对大模型等高级攻击风险,我们建立了业界唯一的将高级攻击和内容风险定义为复合风险的评测方法。通过分别构建了基础内容风险评测集与高级攻击prompt构建工具,实现对被测大模型更全面更立体的风险评测。体验版评估检测限时免费开放,识别下方二维码可即刻申领。(备注:每个大模型可限时免费体验1次)

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

el-upload组件如何上传blob格式的url地址视频

el-upload组件如何上传blob格式的url地址视频 一、存在问题二、直接上代码 需求:想把视频地址url:“blob:http://localhost:8083/65bd3c0f-52ec-4844-b85e-06fdb5095b7b”,通过el-upload组件上传 el-upload是Element UI中用于文件上传的组件,…

如何开启kali的ssh远程连接

1.打开配置文件 vim /etc/ssh/sshd_config 将第13行和32改为如下,保存退出 重启服务 sudo systemctl restart ssh.service 使用远程工具(如xshell)即可连接 如果无法连接,需要先生成两个密钥:ssh-keygen -t dsa -f…

【14-Ⅱ】Head First Java 学习笔记

HeadFirst Java 本人有C语言基础,通过阅读Java廖雪峰网站,简单速成了java,但对其中一些入门概念有所疏漏,阅读本书以弥补。 第一章 Java入门 第二章 面向对象 第三章 变量 第四章 方法操作实例变量 第五章 程序实战 第六章 Java…

每周一算法:最短路计数

题目描述 给出一个 N N N个顶点 M M M 条边的无向无权图,顶点编号为 1 1 1 到 N N N。 问从顶点 1 1 1 开始,到其他每个点的最短路有几条。 输入格式 第一行包含 2 2 2 个正整数 N , M N,M N,M,为图的顶点数与边数。 接下来 M M …

Linux基础命令[25]-groupadd

文章目录 1. groupadd 命令说明2. groupadd 命令语法3. groupadd 命令示例3.1 不加参数3.2 -f(强制创建)3.3 -g(指定组ID)3.4 -r(系统用户组) 4. 总结 1. groupadd 命令说明 groupadd:用于创建…

C语言入门课程学习记录4

C语言入门课程学习记录4 第18课 - signed 与 unsigned第19课 - 再论数据类型第20课 - 经典问题剖析第21课 - 程序中的辅助语句(上)第22课 - 程序中的辅助语句(下) 本文学习自狄泰软件学院 唐佐林老师的 C语言入门课程,…

【C++】:拷贝构造函数和赋值运算符重载

目录 一,拷贝构造函数1. 什么是拷贝构造函数2. 拷贝构造函数的特性3. 实践总结 二,赋值运算符重载2.1 运算符重载2.2 赋值运算符重载 一,拷贝构造函数 1. 什么是拷贝构造函数 拷贝构造函数是特殊的构造函数。是用一个已经存在的对象&#x…

JVM虚拟机监控及性能调优实战

目录 jvisualvm介绍 1. jvisualvm是JDK自带的可以远程监控内存,跟踪垃圾回收,执行时内存,CPU/线程分析,生成堆快照等的工具。 2. jvisualvm是从JDK1.6开始被继承到JDK中的。jvisualvm使用 jvisualvm监控远程服务器 开启远程监控…

软考高级 | 系统架构设计师笔记(一)

一. 系统规划 1.1 项目的提出与选择 该步骤生成” 产品/项目建议书”. 1.2 可行性研究与效益分析 包括经济可行性/技术可行性/法律可行性/执行可行性/方案选择 5 个部分. 该步骤生 成”可行性研究报告”. 1.3 方案的制订和改进 包括确定软件架构/确定关键性要素?/确定计算…

java Web-Spring AOP

AOP的概念 AOP:面向切面编程,面向方法编程。简单理解就是对特定方法的扩充的思想 例如我们要在特定方法进行方法的执行时间判断,我们假如去使用在每个方法去进行业务逻辑扩充,这样就太繁琐了,而使用AOP就可以简化操作。Spring A…

mybatis中<if>条件判断带数字的字符串失效问题

文章目录 一、项目背景二、真实错误原因说明三、解决方案3.1针对纯数字的字符串值场景3.2针对单个字符的字符串值场景 四、参考文献 一、项目背景 MySQL数据库使用Mybatis查询拼接select语句中进行<if>条件拼接的时候&#xff0c;发现带数字的或者带单个字母的字符串失效…

vue基础教程(7)——构建项目级首页

同学们可以私信我加入学习群&#xff01; 正文开始 前言一、页面结构二、侧边栏三、主体部分总结 前言 前面我们学习了vue的路由和登录页搭建&#xff0c;本文将和大家共同学习首页的搭建。 首页示例如图&#xff1a; 很多项目经验比较少的同学&#xff0c;一般都是对某些语…

架构师系列-消息中间件(八)- RocketMQ 进阶(二)-生产端消息保障

5. RocketMQ消息保障 下面我们详细说下如何保障消息不丢失以及消息幂等性问题 5.1 生产端保障 生产端保障需要从一下几个方面来保障 使用可靠的消息发送方式注意生产端重试生产禁止自动创建topic 5.1.1 消息发送保障 5.1.1.1 同步发送 发送者向MQ执行发送消息API时&#xff0…

springBoot集成flowable

前言 Flowable可以十分灵活地加入你的应用/服务/构架。可以将JAR形式发布的Flowable库加入应用或服务&#xff0c;来嵌入引擎。 以JAR形式发布使Flowable可以轻易加入任何Java环境&#xff1a;Java SE&#xff1b;Tomcat、Jetty或Spring之类的servlet容器&#xff1b; JBoss…

网工内推 | 上市公司网络运维,大专可投,NA/NP认证优先

01 珠海世纪鼎利科技股份有限公司 招聘岗位&#xff1a;网络运维工程师 职责描述&#xff1a; 1、负责服务器安装、维护和设备管理&#xff1b; 2、负责应用系统的部署&#xff0c;升级&#xff0c;维护&#xff1b; 3、分析网络数据&#xff0c;排查网络故障及事务的应急响应…

百度网盘svip白嫖永久手机2024最新教程

百度网盘&#xff08;原名百度云&#xff09;是百度推出的一项云存储服务&#xff0c;已覆盖主流PC和手机操作系统&#xff0c;包含Web版、Windows版、Mac版、Android版、iPhone版和Windows Phone版。用户将可以轻松将自己的文件上传到网盘上&#xff0c;并可跨终端随时随地查看…

【C语言】红黑树详解以及C语言模拟

一、红黑树的性质二、红黑树的旋转操作三、红黑树的插入操作四、红黑树的删除操作五、红黑树的应用六、C语言模拟红黑树七、总结 红黑树是一种自平衡二叉查找树&#xff0c;它能够保持树的平衡&#xff0c;从而确保查找、插入和删除的最坏情况时间复杂度为O( l o g n log_n log…

软考-系统集成项目管理中级--项目人力资源管理(输入输出很重要!!!本章可能包含案例题)

本章历年考题分值统计 本章重点常考知识点汇总清单(学握部分可直接理解记忆) 10、项目沟通管理计划一般应包括以下内容:(掌握)12上59&#xff0c;10下59&#xff0c;13上53&#xff0c;13上57,14下58&#xff0c;15下58&#xff0c;16上59 考题 (1)干系人的沟通需求。 (2)针对沟…

爬虫抓取网站数据

Fiddler 配置fiddler工具结合浏览器插件 配置fiddler Tools--Options 抓包技巧 谷歌浏览器开启无痕浏览,使用SwitchyOmega配置好代理端口 Ctrl x 清理所有请求记录,可以删除指定不需要日志方便观察 设置按请求顺序 观察cookie,观察请求hesder cookie和row返回结果 Swit…