首页 > 其他分享 >OpenAI 是怎么“压力测试”大型语言模型的?

OpenAI 是怎么“压力测试”大型语言模型的?

时间:2024-11-22 11:40:52浏览次数:1  
标签:AI 模型 测试人员 OpenAI 测试 红队

OpenAI 再次稍微揭开了它的安全测试流程的面纱。上个月,他们分享了一项调查的结果,这项调查研究了 ChatGPT 在根据用户名字生成性别或种族偏见的几率。现在,他们又发布了两篇论文,详细描述了如何对大型语言模型进行“压力测试”(也叫红队测试),目的是找出可能有害或者其他不希望出现的行为。

为什么要测试?
大型语言模型已经被成千上万的人用在各种各样的场景中。但 OpenAI 自己也承认,这些模型有可能生成种族主义、性别歧视或仇恨言论;泄露私人信息;放大偏见和刻板印象;甚至是凭空捏造事实。OpenAI 希望通过公开它的测试方法,展示他们是如何努力减少这些问题的。

怎么测试的?
第一篇论文提到,OpenAI 通过大量的外部测试人员对模型行为进行审查。这些人来自不同领域,比如艺术、科学、法律、医学,甚至是地区政治的专家。他们的任务就是尽可能“搞坏”模型,找出潜在的问题,比如诱导 ChatGPT 说出种族主义的话,或者让 DALL-E 生成暴力的图像。
第二篇论文则描述了一种新的自动化测试方法——用 GPT-4 这样的语言模型来“反过来”试图绕过自己的安全保护措施。这个方法的核心是用 AI 帮助发现更多潜在的问题。
OpenAI 的目标是把人工测试和自动化测试结合起来。人类测试发现的问题可以交给 AI 进一步挖掘,而 AI 找出的问题也可以让人类测试人员验证。OpenAI 的研究员 Lama Ahmad 说:“我们还在探索两者如何更好地互补。”

红队测试是怎么来的?
其实,红队测试并不是新概念。最初它来源于网络安全领域,就是通过模拟攻击来找系统漏洞。OpenAI 第一次使用这个方法是在 2022 年测试 DALL-E 2 时。当时,他们想知道用户会怎么用这个系统,以及可能会出现哪些风险。
这个方法后来成了行业标准。甚至美国总统拜登在去年的 AI 行政命令中,还指派国家标准与技术研究院(NIST)去制定红队测试的最佳实践。

发现问题的例子
举个例子,当 OpenAI 给 GPT-4 加上语音功能,让用户可以和 ChatGPT 对话时,测试人员发现模型有时会模仿用户的声音。这种行为虽然无意,但既让人不爽,又可能带来诈骗风险。
再比如,DALL-E 2 在测试时,测试人员要权衡“茄子”这个词的多种含义。一个正常的请求可能是“一个人吃茄子”,但另一个含性暗示的请求,比如“一个人把整根茄子放进嘴里”,就不合适了。模型必须学会分辨这些区别。
类似地,用户还会试图绕过安全检查。比如,你不能让 DALL-E 画“死马躺在血泊中”,但如果你换个说法,请求“睡着的马躺在一滩番茄酱里”呢?这就是测试需要发现的问题。

自动化测试的优势和局限
自动化测试能覆盖更多情况,但也有短板。过去的技术常常陷入两种极端:要么只集中在少量高风险行为上,要么泛泛而谈,结果无关痛痒。
OpenAI 在第二篇论文里提出了解决办法:先用大型语言模型生成各种潜在问题的清单,再用强化学习去实现这些问题。这样既能保证多样性,又能有针对性。
这个方法甚至发现了所谓的“间接提示注入”攻击,比如有的网站可以偷偷给模型发指令,让它做一些用户没要求的事情。

测试够了吗?
OpenAI 的 Ahmad 认为,让更多人了解红队测试会有帮助,但她也承认,仅靠 OpenAI 是不够的。她呼吁使用这些模型的公司也要进行自己的测试:“用法太多了,我们不可能覆盖所有情况。”
但一些专家表示,这恰恰是问题所在。因为没人完全了解大型语言模型的能力和局限性,再多的测试也无法彻底排除有害行为。而且,数百万实际用户的使用方式可能比任何测试人员都更“有创意”。
尤其当这些模型在不同环境下运行时,情况更加复杂。比如,一些人把模型接入新的数据源,这会改变它的行为。Collinear AI 的 CEO Nazneen Rajani 提到,GPT-4 自己进行红队测试也可能有偏见,因为模型倾向于更高评价自己的输出,这可能导致它对自己的问题“网开一面”。

未来怎么办?
英国 Ada Lovelace 研究所的 Andrew Tait 认为,模型的开发速度已经远远超过了测试技术的发展。他建议,与其宣传这些模型是“万能”的,不如专注于特定任务。这样才能真正测试它们在实际使用中的表现。
他说:“说引擎安全,不代表所有用这个引擎的车都安全。这种想法简直荒唐。”

标签:AI,模型,测试人员,OpenAI,测试,红队
From: https://www.cnblogs.com/jellyai/p/18562482

相关文章

  • threejs 点击模型拾取,页面有偏移导致拾取不准
    方式一:适合页面无偏移的情况letmouse=newTHREE.Vector2((event.clientX/this.dom.offsetWidth)*2-1,-(event.clientY/this.dom.offsetHeight)*2+1);letraycaster=newTHREE.Raycaster();raycaster.setFromCamera(mouse,this.camera);letint......
  • [EMC] 常规emc测试项目有哪些
    EMC(ElectroMagneticCompatibility)电磁兼容,是指设备或系统在其电磁环境中符合要求运行并不对其环境中的任何设备产生无法忍受的电磁干扰的能力。因此,EMC包括两个方面的要求:一方面是指设备在正常运行过程中对所在环境产生的电磁干扰不能超过一定的限值;另一方面是指设备对所在环......
  • 电压跌落测试标准
    电压暂降和电压中断是由电网、电力设施的故障或负荷突然出现大的变化引起的。电压变化是由连接到电网的负荷的连续变化引起的。如果EUT对电源电压的变化不能及时作出反应,就有可能引发故障。电压跌落测试依据标准:IEC61000-4-11/GBT17626.11:电压暂降、短时中断和电压变化抗扰......
  • Java的反射、网络模型、枚举知识点
    一、反射(Reflection)概念:反射是Java的一种特性,它允许程序在运行时检查和操作类及其属性、方法和构造器。主要功能:获取类的信息:可以通过Class对象获取类的名称、父类、接口、构造器和方法等。javaClass<?>clazz=Class.forName("com.example.MyClass");StringclassName......
  • 盐雾测试方法是什么
    盐雾试验是一种主要利用盐雾试验设备所创造的人工模拟盐雾环境条件来考核产品或金属材料耐腐蚀性能的环境试验。它分为二大类,一类为天然环境暴露试验,另一类为人工加速模拟盐雾环境试验。盐雾试验结果的判定方法有:评级判定法、称重判定法、腐蚀物出现判定法、腐蚀数据统计分析法......
  • 如何设置自动化测试断言?
    看到这样一个问题:接口自动化测试中,有必要把接口返回的每个字段都进行断言吗?无论是性能测试还是自动化测试中,要不要设置断言,为什么设置断言,断言的作用是什么,如何设置断言,都是新手容易踩坑犯错的地方。这篇文章,聊聊我对于断言的理解,以及自动化测试如何断言。 1、什么是断言?先......
  • 软件测试员与代码:是必备技能还是可有可无?
    在当今数字化的时代,软件行业蓬勃发展,软件测试员这个角色也备受关注。而一个常常引发讨论的问题便是:对于软件测试员来说,需要会写代码吗?首先,让我们来看看一些数据。据行业报告显示,约70%的高效能软件测试团队中,测试员具备一定的代码编写能力。这意味着,在不少成功的案例中,会写代......
  • 【性能测试】多压力机无GUI模式执行Jmeter脚本
    远程执行参数:-l:后面的文件是生成的jtl结果文件,这和文件名必须不存在,如果已经存在,就会报错。-o:后面的目录也必须为空,有内容也会报错。-e:是用来生成报表报告的,生成的报告结果文件会存在-o后面的文件夹里。参数解释:-n:表示nonguimode,就是非图形化模式-t:即testplan,后跟......
  • 2024考前集训测试37 错峰旅行 题解
    题目描述小Z终于迎来了自己的大学生活最后的时刻,他决定用自己的积蓄来一场说走就走的毕业旅行,并且不玩的开心不上班。然而,他很快就发现这个决定并非那么简单。由于是暑假,假期人多,他既不想错过旅行的最佳时期,又不想在人群中挣扎,预测旅游热门城市的拥挤时段,就像是一道难题摆在他......
  • 【性能测试】Jmeter代理服务器录制APP请求脚本
    jmeter录制手机APP脚本https://cloud.tencent.com/developer/article/1969100这时在jMeter的bin目录下生成了一个安全证书,需要把这个安装证书添加到手机受信任的证书,这个证书的有效期是7天,7天后证书会重新生成。将这个证书发送到手机保存到你能找的到的目录。我的手机是......