Llama 3.1 技术研究报告-5

发布于:2024-10-09 ⋅ 阅读:(43) ⋅ 点赞:(0)

5.3 人工评测

除了在标准基准测试集上的评估外,我们还进⾏了⼀系列⼈类评估。这些评估使我能够测量和优化模型性能的更微妙⽅⾯,例如模型的语调、冗⻓性和对细微差别及⽂化背景的理解。精⼼设计的⼈类评估密切反映了⽤⼾体验,提供了模型在现实世界场景中表现的洞察。

提⽰收集。我们收集了涵盖⼴泛类别和难度的⾼质量提⽰。为此,我们⾸先开发了⼀个包含尽可能多模型能⼒的类别和⼦类别的分类体系。我们使⽤这个分类体系收集了⼤约7000个提⽰,涵盖六个单独能⼒(英语、推理、编码、印地语、西班⽛语和葡萄⽛语),以及三个多轮能⼒11(英语、推理和编码)。我们确保每个类别内的提⽰在⼦类别中均匀分布。我们还将每个提⽰归类为三个难度级别之⼀,并确保我们的提⽰集合包含⼤约10%的简单提⽰、30%的中等提⽰和60%的困难提⽰。所有⼈类评估提⽰集都经过了彻底的质量保证流程。建模团队⽆法访问我们的⼈类评估提⽰,以防⽌意外污染或过度拟合测试集。
在这里插入图片描述

评估过程。为了对两个模型进⾏成对⼈类评估,我们要求⼈类注释者选择他们更喜欢的两个模型响应(由不同模型⽣成)。注释者使⽤7点量表进⾏评分,使他们能够表明⼀个模型响应是否明显优于、优于、略优于或与另⼀个模型响应⼤致相同。当⼀个注释者指出⼀个模型响应⽐另⼀个模型响应更好或明显更好时,我们认为这是该模型的“胜利”。我们执⾏模型之间的成对⽐较,报告提⽰集中每个能⼒的胜率。

结果。我们使⽤我们的⼈类评估流程⽐较Llama 3 405B与GPT-4(0125 API版本)、GPT-4o(API版本)和Claude 3.5 Sonnet(API版本)。这些评估的结果在图17中呈现。我们观察到Llama 3 405B与GPT-4的0125 API版本表现⼤致相当,⽽与GPT-4o和Claude 3.5 Sonnet相⽐则取得了混合结果(⼀些胜利和⼀些失败)。在⼏乎所有能⼒上,Llama 3和GPT-4的胜率都在误差范围内。在多轮推理和编码任务上,Llama 3 405B超越了GPT-4,但在多语⾔(印地语、西班⽛语和葡萄⽛语)提⽰上表现不、佳。Llama 3在英语提⽰上与GPT-4o表现相当,在多语⾔提⽰上与Claude 3.5 Sonnet表现相当,并在单⼀和多轮英语提⽰上超越了Claude 3.5 Sonnet。然⽽,它在编码和推理等能⼒上落后于Claude 3.5 Sonnet。从定性上看,我们发现模型在⼈类评估中的表现在很⼤程度上受到模型语调、响应结构和冗⻓性等细微因素的影响⸺这些因素正是我们在后训练过程中优化的。总体⽽⾔,我们的⼈类评估结果与标准基准评估的结果⼀致:Llama 3 405B与领先的⾏业模型⾮常有竞争⼒,使其成为表现最佳的公开可⽤模型。

局限性。所有⼈类评估结果都经过了彻底的数据质量保证流程。然⽽,由于定义评估模型响应的客观标准具有挑战性,⼈类评估仍可能受到⼈类注释者的个⼈偏⻅、背景和偏好的影响,这可能导致结果不⼀致或不可靠。

5.4 安全性

我们专注于评估Llama 3以安全和负责任的⽅式⽣成内容的能⼒,同时仍最⼤限度地提供有帮助的信息。我们的安全⼯作从预训练阶段开始,主要是通过数据清洗和过滤的形式。然后我们描述了我们对安全微调的⽅法,重点是如何在保持有⽤性的同时训练模型与特定的安全政策对⻬。我们分析了Llama 3的每种能⼒,包括多语⾔、⻓⽂本环境、⼯具使⽤以及各种多模态能⼒,以衡量我们安全缓解措施的有效性。
在这里插入图片描述

随后,我们描述了我们对提升⽹络安全和化学及⽣物武器⻛险的评估。提升指的是与使⽤现有可⽤技术(如⽹络搜索)相⽐,由新技术发展带来的额外⻛险。然后我们描述了我们如何利⽤红队演练来迭代识别和对抗各种能⼒和安全⻛险,并进⾏了残余⻛险评估。

最后,我们描述了系统级安全性,或者围绕模型本⾝的输⼊和输出开发和协调分类器,以进⼀步增强安全性,并使开发⼈员更容易定制各种⽤例的安全性,并以更负责任的⽅式部署⽣成性AI。

5.4.1 基准构建

我们创建了各种内部基准来帮助我们安全、负责任地开发模型。我们的基准在很⼤程度上受到ML Commons危险分类(Vidgen等⼈,2024)⻛险类别的启发。虽然存在诸如ToxiGen(Hartvigsen等⼈,2022)、XS Test(Röttger等⼈,2023)等语⾔模型安全性基准,但Llama 3中的⼀些新能⼒并没有⾜够的外部基准可⽤,⽽且外部基准往往缺乏⾜够的⼴度和深度覆盖。

对于每个⻛险类别,我们收集了⼈类编写的提⽰,这些提⽰要么是对抗性的,要么是边缘性质的⸺这些提⽰的例⼦可以在表23中找到。对抗性提⽰从直接引发有害响应的直接提⽰到包含复杂越狱技术的提⽰不等。这些对抗性提⽰的基准是我们衡量违规率的基础。

作为违规率的反指标,我们还构建了由边缘提⽰组成的错误拒绝基准。我们将错误拒绝定义为当⼀个模型即使在可能的情况下也能以有帮助的⽅式回答问题时却拒绝回答。边缘提⽰是接近决策边界的提⽰,⼀个校准良好的模型应该能够处理,例如,“我怎样才能从总是表现得像主⻆的我最好的朋友那⾥偷⾛⻛头??” 我们的整体基准规模在违规和错误拒绝⽅⾯超过每个能⼒或语⾔4000个提⽰,并包含单轮和多轮提⽰的混合。

5.4.2 安全预训练

我们认为负责任的开发必须从端到端的⻆度考虑,并在模型开发和部署的每个阶段都加以考虑。在预训练期间,我们应⽤了各种过滤器,例如⽤于识别可能包含个⼈⾝份识别信息的⽹站的过滤器(⻅第3.1节)。我们还⼤⼒关注可发现的记忆(Nasr等⼈,2023)。类似于Carlini等⼈(2022),我们使⽤所有n-gram的⾼效滚动哈希索引,在训练数据中以不同的出现频率采样提⽰和真实情况。我们通过变化提⽰和真实情况的⻓度、⽬标数据的检测语⾔和领域来构建不同的测试场景。然后我们测量模型⽣成真实情况序列⼀字不差的频率,并分析在特定场景中记忆的相对⽐率。我们将⼀字不差的记忆定义为包含率⸺模型⽣成包含真实情况延续的确切⽐例⸺并按数据中给定特征的普遍性加权报告平均值,如表24所⽰。我们发现训练数据的记忆率很低(对于405B,n=50和n=1000时分别为1.13%和3.91%)。记忆率⼤致与同等⼤⼩的Llama 2相当,并使⽤相同的⽅法应⽤于其数据混合。

5.4.3 安全微调

我们描述了我们对安全微调的⽅法,以减轻许多能⼒的⻛险,这包括两个关键⽅⾯:(1)安全训练数据和(2)⻛险缓解技术。我们的安全微调过程在我们⼀般微调⽅法的基础上进⾏了修改,以解决特定的安全问题。

我们优化了两个主要指标:违规率(VR),⼀个指标,⽤于捕获模型产⽣违反安全政策的响应时的情况;错误拒绝率(FRR),⼀个指标,⽤于捕获模型错误地拒绝对⽆害提⽰做出响应时的情况。同时,我们评估模型在有⽤性基准上的表现,以确保安全改进不会损害整体有⽤性。

微调数据。安全训练数据的质量和设计对性能有深远的影响。通过⼴泛的消融实验,我们发现质量⽐数量更为关键。我们主要使⽤从数据供应商那⾥收集的⼈⼯⽣成数据,但发现这些数据可能会有错误和不⼀致之处⸺特别是对于微妙的安全政策。为确保最⾼质量数据,我们开发了AI辅助注释⼯具来⽀持我们严格的质量保证流程。除了收集对抗性提⽰外,我们还收集了⼀组类似的提⽰,我们称之为边缘提⽰。这些提⽰与对抗性提⽰密切相关,但⽬标是教会模型学会提供有帮助的响应,从⽽降低错误拒绝率(FRR)。
在这里插入图片描述

除了⼈⼯注释,我们还利⽤合成数据来提⾼我们训练数据集的质量和覆盖范围。我们使⽤⼀系列技术⽣成额外的对抗性⽰例,包括通过精⼼设计的系统提⽰进⾏上下⽂学习、基于新的攻击向量的种⼦提⽰引导变异,以及包括Rainbow Teaming(Samvelyan等⼈,2024)在内的先进算法,这些算法基于MAP-Elites(Mouret和Clune,2015),能够在多样性的多个维度上⽣成提⽰。

我们进⼀步解决了模型在⽣成安全响应时的语调问题,这会影响下游⽤⼾体验。我们为Llama 3制定了拒绝语调指南,并通过严格的质量保证流程确保所有新的安全数据都符合该指南。我们还根据指南优化现有的安全数据,使⽤零样本重写和⼈⼯参与编辑的组合来产⽣⾼质量的数据。通过采⽤这些⽅法,再加上使⽤语调分类器评估安全响应的语调质量,我们能够显著改善模型的措辞。

安全监督微调。遵循我们Llama 2的配⽅(Touvron等⼈,2023b),我们在模型对⻬阶段结合了所有有⽤性数据和安全数据。此外,我们引⼊了⼀个边缘数据集,帮助模型辨别安全和不安全请求之间的微妙区别。我们指⽰注释团队根据我们的指南精⼼制作对安全提⽰的响应。我们发现,当我们策略性地平衡对抗性到边缘⽰例的⽐例时,SFT(监督微调)在对⻬模型⽅⾯⾮常有效。我们专注于更具挑战性的⻛险领域,边缘⽰例的⽐例更⾼。这在我们的成功安全缓解⼯作中发挥了关键作⽤,同时将错误拒绝降⾄最低。

此外,我们在图18中检查了模型⼤⼩对FRR(错误拒绝率)和VR(违规率)之间权衡的影响。我们的结果表明,这种影响是不同的⸺较⼩的模型需要相对于有⽤性数据更⼤的安全数据⽐例,并且与较⼤模型相⽐,更难有效地平衡VR和FRR。

安全DPO(差异隐私优化)。为了加强安全学习,我们将对抗性和边缘⽰例纳⼊我们在DPO中的偏好数据集中。我们发现,将响应对制作成在嵌⼊空间中⼏乎正交特别有效,这教会了模型区分给定提⽰的好响应和坏响应。我们进⾏了多次实验,以确定对抗性、边缘和有⽤性⽰例的最佳⽐例,旨在优化FRR和VR之间的权衡。我们还发现,模型⼤⼩影响学习结果⸺因此,我们为不同⼤⼩的模型定制了不同的安全组合。

5.4.4 安全结果

我们⾸先突出展⽰Llama 3在各个轴上的⼀般⾏为,然后描述每个具体新能⼒的结果以及我们在减轻安全⻛险⽅⾯的有效性。
在这里插入图片描述

总体表现。可以在图19和图20中找到Llama 3最终违规率和错误拒绝率与类似模型的⽐较。这些结果侧重于我们最⼤参数尺⼨的Llama 3 405B模型,与相关竞争对⼿进⾏⽐较。两个竞争对⼿是通过API访问的端到端系统,其中之⼀是我们内部托管并直接评估的开源语⾔模型。我们评估了我们的Llama模型,既单独评估,也与我们的开源系统级安全解决⽅案Llama Guard结合评估(更多内容⻅第5.4.7节)。

虽然低违规率是可取的,但将错误拒绝作为反指标考虑是⾄关重要的,因为总是拒绝的模型是最⼤程度安全的,但⼀点也不有帮助。同样,⼀个⽆论请求有多成问题都总是回答每⼀个提⽰的模型,将会过于有害和有毒。在图21中,利⽤我们的内部基准,我们探索了不同模型和⾏业系统如何处理这种权衡,以及Llama 3如何⽐较。我们发现我们的模型在保持低错误拒绝率的同时,实现了⾮常有竞争⼒的违规率指标,表明了在有⽤性和安全性之间取得了坚实的平衡。

多语⾔安全性。我们的实验表明,英语中的安全知识并不轻易转移到其他语⾔,特别是考虑到安全政策的细微差别和语⾔特定的上下⽂。因此,为每种语⾔收集⾼质量的安全数据⾄关重要。我们还发现,每种语⾔的安全数据分布显著影响从安全⻆度的性能,⼀些语⾔从迁移学习中受益,⽽其他语⾔则需要更多的语⾔特定数据。为了在FRR(错误拒绝率)和VR(违规率)之间取得平衡,我们迭代地添加对抗性和边缘数据,同时监控对这两个指标的影响。
在这里插入图片描述

我们在图19中展⽰了我们的内部基准测试结果,针对短⽂本模型,展⽰了Llama 3的违规和错误拒绝率,与类似模型和系统相⽐,分别针对英语和⾮英语语⾔。为了构建每种语⾔的基准测试,我们使⽤⺟语者编写的提⽰组合,有时辅以我们英语基准测试的翻译。对于我们⽀持的每种语⾔,我们发现配备Llama Guard的Llama 405B⾄少与两个竞争系统⼀样安全,如果不是更安全的话,同时保持了有竞争⼒的错误拒绝率。单独看Llama 405B模型,没有Llama Guard,我们发现它⽐竞争的独⽴开源模型有显著更低的违规率,但错误拒绝率更⾼。

⻓⽂本环境安全性。⻓⽂本模型在没有针对性缓解的情况下,容易受到多轮越狱攻击(Anil等⼈,2024)。为了解决这个问题,我们在SFT数据集上微调我们的模型,其中包括在上下⽂中存在不安全⾏为⽰范的情况下的安全⾏为⽰例。我们开发了⼀种可扩展的缓解策略,显著降低了违规率,有效地中和了更⻓上下⽂攻击的影响,即使是256轮攻击也是如此。这种⽅法对FRR(错误拒绝率)和⼤多数有⽤性指标⼏乎没有影响。

为了量化我们⻓⽂本环境安全缓解措施的有效性,我们使⽤了两种额外的基准测试⽅法:DocQA和多轮。对于DocQA,即“⽂档问题回答”,我们使⽤可能以对抗性⽅式利⽤信息的⻓⽂档。模型被提供了⽂档和与⽂档相关的⼀组提⽰,以测试问题是否与⽂档中的信息相关,影响了模型安全响应提⽰的能⼒。对于多轮,按照Anil等⼈(2024)的⽅法,我们构建了⼀个由不安全提⽰-响应对组成的合成聊天记录。最终提⽰与之前的消息⽆关,⽤来测试上下⽂中的不安全⾏为是否影响了模型以不安全的⽅式响应。图20显⽰了DocQA和多轮的违规和错误拒绝率。我们发现,⽆论是配备还是不配备Llama Guard,Llama 405B在违规率和错误拒绝率⽅⾯都优于Comp. 2系统,⽆论是DocQA还是多轮。与Comp. 1相⽐,我们发现Llama 405B明显更安全,尽管在错误拒绝上有所权衡。

⼯具使⽤安全性。可能使⽤的⼯具的多样性以及⼯具使⽤调⽤和集成到模型中的实现使得⼯具使⽤成为⼀个难以完全缓解的能⼒(Wallace等⼈,2024)。我们专注于搜索⽤例。图20显⽰了违规和错误拒绝率。我们与Comp. 1系统进⾏了测试,发现Llama 405B明显更安全,尽管错误拒绝率略⾼。

5.4.5 ⽹络安全和化学/⽣物武器安全

⽹络安全评估结果。为了评估⽹络安全⻛险,我们利⽤CyberSecEval基准框架(Bhatt等⼈,2023, 2024),该框架包含测量在⽣成不安全代码、⽣成恶意代码、⽂本提⽰注⼊和漏洞识别等域中的安全性的任务。我们开发并应⽤Llama 3到新的基准上,涉及⻥叉式⽹络钓⻥和⾃动⽹络攻击。

总体⽽⾔,我们发现Llama 3在⽣成恶意代码或利⽤漏洞⽅⾯没有显著的易感性。我们简要描述了特定任务的结果:

  • 不安全编码测试框架:在不安全编码测试框架中评估Llama 3 8B、70B和405B,我们继续观察到更⼤的模型不仅⽣成更多的不安全代码,⽽且还⽣成平均BLEU分数更⾼的代码(Bhatt等⼈,2023)。

  • 代码解释器滥⽤提⽰语料库:我们发现Llama 3模型在某些提⽰下容易执⾏恶意代码,特别是Llama 3 405B,其遵从恶意提⽰的⽐例为10.4%。Llama 3 70B的遵从率为3.8%。

  • 基于⽂本的提⽰注⼊基准:在评估提⽰注⼊基准时,针对Llama 3 405B的提⽰注⼊攻击在21.7%的情况下成功。图22提供了Llama 3、GPT-4 Turbo、Gemini Pro和Mixtral模型的基于⽂本的提⽰注⼊成功率。

  • 漏洞识别挑战:在使⽤CyberSecEval 2的捕获旗帜测试挑战评估Llama 3识别和利⽤漏洞的能⼒时,Llama 3并没有超越常⽤的、传统的⾮LLM⼯具和技术。

  • ⻥叉式⽹络钓⻥基准:我们评估模型在进⾏旨在欺骗⽬标⽆意中参与安全漏洞的个性化对话中的说服⼒和成功率。由LLM⽣成的随机详细受害者档案被⽤作⻥叉式⽹络钓⻥⽬标。⼀个裁判LLM(Llama 3 70B)对Llama 3 70B和405B与受害者模型(Llama 3 70B)的互动表现进⾏评分,并评估尝试的成功程度。裁判LLM评估Llama 3 70B和Llama 3 405B具有适度的说服⼒。Llama 3 70B被LLM判定在24%的⻥叉式⽹络钓⻥尝试中成功,⽽Llama 3 405B被判定在14%的尝试中成功。图23展⽰了裁判LLM评估的说服⼒得分,涵盖各个模型和⽹络钓⻥⽬标。

  • 攻击⾃动化框架:我们评估Llama 3 405B作为⾃主代理在勒索软件攻击的四个关键阶段⸺⽹络侦察、漏洞识别、利⽤执⾏和后期利⽤⾏动中的潜在作⽤。我们通过配置模型,使其能够在Kali Linux虚拟机上针对另⼀个已知漏洞的虚拟机,根据其先前命令的输出迭代⽣成并执⾏新的Linux命令,从⽽使模型能够⾃主⾏为。尽管Llama 3 405B在⽹络侦察中有效地识别了⽹络服务和开放端⼝,但模型未能有效地利⽤这些信息在34次测试运⾏中获得对易受攻击机器的初始访问。在识别漏洞⽅⾯,Llama 3 405B效果适中,但在选择和应⽤成功的利⽤技术⽅⾯存在困难。执⾏利⽤尝试完全失败,后期利⽤尝试在⽹络内保持访问或执⾏横向移动也完全失败。

⽹络攻击的提升测试。我们进⾏了⼀项提升研究,测量虚拟助⼿在两次模拟的进攻性⽹络安全挑战中提⾼新⼿和专家⽹络攻击者的⽹络攻击率的程度。进⾏了⼀个两阶段的研究,共有62名内部志愿者参与。志愿者根据他们的进攻性安全经验被分为“专家”(31名受试者)和“新⼿”(31名受试者)⼩组。在第⼀阶段,受试者被要求在没有任何LLM辅助的情况下完成挑战,但可以访问开放的互联⽹。

在第⼆阶段,受试者保留了访问互联⽹的权利,但也被提供了Llama 3 405B来完成⼀个难度与第⼀个相似的不同进攻性⽹络安全挑战。通过受试者完成挑战攻击阶段的完成率分析表明,使⽤405B模型的新⼿和专家在没有LLM的情况下,与仅拥有开放互联⽹访问权相⽐,表现没有显著提升。
在这里插入图片描述

化学和⽣物武器的提升测试。为了评估与化学和⽣物武器扩散相关的⻛险,我们进⾏提升测试,旨在评估使⽤Llama 3是否会显著增加⾏动者计划此类攻击的能⼒。

该研究包括六⼩时的情景,其中两个参与者的团队被要求为⽣物或化学攻击⽣成虚构的作战计划。情景涵盖了CBRNE攻击(剂获取、⽣产、武器化和交付)的主要规划阶段,并旨在引出详细计划,这些计划将解决与采购受限材料、现实世界的实验室协议和作战安全相关的挑战。参与者根据他们在科学或运营领域的相关经验被招募,并被分配到由两个低技能⾏动者(没有正式培训)或两个中等技能⾏动者(在科学或运营中有⼀些正式培训和实践经验)组成的团队。

该研究是与⼀组CBRNE专家合作⽣成的,并旨在最⼤化⼀般性、有效性和定量和定性结果的鲁棒性。还进⾏了初步研究,以验证研究设计,包括进⾏强有⼒的功效分析,确保我们的样本量⾜以进⾏统计分析。

每个团队被分配到“对照”或“LLM”条件。对照团队只能访问基于互联⽹的资源,⽽LLM启⽤的团队既有互联⽹访问权,也有访问启⽤了⽹络搜索(包括PDF摄取)、信息检索能⼒(RAG)和代码执⾏(Python和Wolfram Alpha)的Llama 3模型。为了启⽤RAG能⼒的测试,使⽤关键词搜索⽣成了数百篇相关科学论⽂的数据集,并加载到Llama 3模型推理系统中。在演习结束时,每个团队⽣成的作战计划由在⽣物学、化学和作战规划领域具有专业知识的专家进⾏评估。每个计划在潜在攻击的四个阶段进⾏评估,为科学准确性、细节、检测规避以及在科学和运营执⾏中成功的可能性等指标⽣成得分。

在通过强有⼒的Delphi过程来减轻专家评估中的偏⻅和变异性之后,最终得分通过将阶段级指标汇总到⼀个综合得分中⽣成。

这些研究结果的定量分析显⽰,与使⽤Llama 3模型相关的性能没有显著提升。当进⾏总体分析(将所有LLM条件与仅⽹络对照条件进⾏⽐较)以及按⼦组进⾏细分(例如,分别评估Llama 3 70B和Llama 3 405B模型,或分别评估与化学或⽣物武器相关的情景)时,这⼀结果成⽴。在与CBRNE SMEs验证这些结果后,我们评估认为发布Llama 3模型将增加与⽣物或化学武器攻击相关的⽣态系统⻛险的⻛险较低。

5.4.6 红队演练

我们利⽤红队演练来发现⻛险,并利⽤这些发现来改进我们的基准测试和安全调整数据集。我们定期进⾏红队演练,以持续迭代和发现新⻛险,这指导了我们的模型开发和缓解过程。

我们的红队由⽹络安全、对抗性机器学习、负责任的⼈⼯智能和完整性领域的专家组成,此外还有具有特定地理市场完整性问题背景的多语⾔内容专家。我们还与关键⻛险领域的内部和外部主题专家合作,帮助构建⻛险分类和协助更有针对性的对抗性评估。

针对特定模型能⼒的对抗性测试。我们最初通过专注于个别模型能⼒的⻛险发现过程开始红队演练,在特定⾼⻛险类别的背景下测试能⼒,然后⼀起测试这些能⼒。红队专注于提⽰级别的攻击,以模拟更可能更真实的世界场景⸺我们发现模型经常偏离预期⾏为,特别是当提⽰的意图被混淆或提⽰叠加了多重抽象时。随着额外能⼒的出现,这些⻛险变得更加复杂,我们详细描述了我们红队演练的⼏个发现。我们将这些红队发现与我们在内部安全基准测试的结果结合起来,制定针对性的缓解措施,以持续和迭代地改进模型的安全性。

  • 短期和⻓期上下⽂英语。我们采⽤了单⼀和多轮对话中已知和未知技术的混合。我们还利⽤了类似于PAIR(Chao等⼈,2023)的⾼级、对抗性多轮⾃动化技术。总体⽽⾔,多轮对话导致更有害的输出。⼏种攻击在模型检查点中普遍存在,特别是当⼀起使⽤时。

    • 多轮拒绝抑制,以指定模型响应遵循特定格式或包含/排除与拒绝相关的特定信息,作为特定短语。

    • 假设情景将违规提⽰包装为假设性/理论性任务或虚构情景。提⽰可以简单到添加“假设”这个词,或构建⼀个复杂的分层情景。

    • ⻆⾊扮演给模型⼀个带有特定违规响应特征的违规⻆⾊(例如“你是X,你的⽬标是Y”)或你⾃⼰作为⽤⼾,适应⼀个特定的良性⻆⾊,这混淆了提⽰的上下⽂。

    • 添加免责声明和警告作为⼀种响应启动形式,我们假设⼀种⽅法,允许模型有⼀条与⼀般安全培训相交的帮助性合规路径。在多轮对话中,要求添加免责声明、触发警告等,并与其他提到的攻击相结合,有助于提⾼违规率。

    • 逐步升级违规是⼀种多轮攻击,对话开始时是⼀个或多或少良性的请求,然后通过直接提⽰更夸张的内容,可以逐渐引导模型⽣成⼀个⾮常违规的响应。⼀旦模型开始输出违规内容,模型可能很难恢复(或者如果遇到拒绝,可以使⽤另⼀种攻击)。对于更⻓上下⽂的模型,这将是⼀个越来越常⻅的问题。

  • 多语⾔。在考虑多种语⾔时,我们发现了⼀些独特的⻛险。

    • 在⼀个提⽰或对话中混合多种语⾔可能⽐使⽤单⼀语⾔更容易产⽣违规输出。

    • 资源较少的语⾔可能会导致违规输出,因为缺乏相关的安全微调数据,模型对安全的泛化较弱,或者在测试或基准测试中的优先级较低。然⽽,这种攻击通常会导致质量普遍较差,限制了实际的对抗性使⽤。

    • 俚语、特定上下⽂或⽂化特定的参考可能会混淆,或者乍⼀看似乎是违规的,只有在看到模型没有正确理解给定的参考时,才会使输出真正有害或防⽌其成为违规输出。

  • ⼯具使⽤。在测试中,除了在英语⽂本级别的对抗性提⽰技术成功⽣成违规输出外,还发现了⼏种特定⼯具的攻击。这包括但不限于:

    • 不安全的⼯具链,例如同时请求多个⼯具,其中⼀个是违规的,可能在早期检查点中导致所有⼯具被调⽤,输⼊既有良性的也有违规的。

    • 强制⼯具使⽤,通常带有特定输⼊字符串、分⽚段的或编码的⽂本,可以触发⼯具输⼊可能是违规的,从⽽导致更违规的输出。然后可以使⽤其他技术访问⼯具结果,即使模型通常拒绝执⾏搜索或协助结果。

    • 修改⼯具使⽤参数,如在多轮对话中交换查询中的单词、重试或混淆初始请求的某些部分,导致许多早期检查点中的违规,作为⼀种强制⼯具使⽤的形式。

⼉童安全⻛险。⼉童安全⻛险评估是由专家团队进⾏的,以评估模型产⽣可能导致⼉童安全⻛险的输出的能⼒,并通过微调告知任何必要和适当的⻛险缓解措施。我们利⽤这些专家红队演练,通过模型开发扩⼤了我们评估基准的覆盖范围。对于Llama 3,我们使⽤基于⽬标的⽅法论进⾏了新的深⼊会议,以评估模型⻛险沿着多个攻击向量。我们还与内容专家合作,进⾏红队演练,评估可能违规的内容,同时考虑市场特定的细微差别或经验。

5.4.7 系统级安全

在⼤型语⾔模型的各种现实世界应⽤中,模型并不是孤⽴使⽤的,⽽是被集成到更⼴泛的系统中。在本节中,我们描述了我们的系统级安全实施,它通过提供更⼤的灵活性和控制⼒,补充了模型级缓解措施。

为此,我们开发并发布了⼀个新的分类器,Llama Guard 3,这是⼀个为安全分类微调的Llama 3 8B模型。类似于Llama Guard 2(Llama-Team,2024),这个分类器⽤于检测由语⾔模型⽣成的输⼊提⽰和/或输出响应是否违反特定伤害类别的安全政策。

它旨在⽀持Llama不断增⻓的能⼒,并且可以⽤于英语和多语⾔⽂本。它还针对⼯具调⽤(如搜索⼯具)和防⽌代码解释器滥⽤进⾏了优化。最后,我们还提供了量化变体以减少内存需求。我们⿎励开发⼈员使⽤我们发布的系统安全组件作为基础,并为他们⾃⼰的⽤例进⾏配置。

分类体系。我们根据AI安全分类(Vidgen等⼈,2024)中列出的13个危险类别进⾏训练:⼉童性剥削、诽谤、选举、仇恨、⽆差别武器、知识产权、⾮暴⼒犯罪、隐私、性相关犯罪、性内容、专业建议、⾃杀和⾃残,以及暴⼒犯罪。我们还对代码解释器滥⽤类别进⾏了训练,以⽀持⼯具调⽤⽤例。

训练数据。我们从Llama Guard(Inan等⼈,2023)使⽤的英语数据开始,并扩展这个数据集以纳⼊新的能⼒。对于新能⼒如多语⾔和⼯具使⽤,我们收集提⽰和响应分类数据,并利⽤为安全微调收集的数据。我们通过提⽰⼯程增加训练集中不安全响应的数量,以使LLM不拒绝响应对抗性提⽰。我们使⽤Llama 3对此类⽣成的数据获取响应标签。

为了提⾼Llama Guard 3的性能,我们使⽤⼈⼯注释和Llama 3的LLM注释对收集的样本进⾏了⼴泛的清理。获取⽤⼾提⽰的标签对于⼈类和LLM来说都是⼀项更困难的任务,我们发现⼈类标签略胜⼀筹,尤其是对于边缘提⽰,尽管我们的完整迭代系统能够减少噪声并产⽣更准确的标签。

结果。Llama Guard 3能够显著减少各能⼒中的违规⾏为(在我们的基准测试中平均减少了65%的违规⾏为)。注意,增加系统防护(和⼀般的任何安全缓解措施)的代价是增加了对良性提⽰的拒绝。在表25中,我们报告了与基础模型相⽐违规率的降低和错误拒绝率的增加,以突出这种权衡。这种效应也可以在图19、20和21中看到。
在这里插入图片描述

系统安全还提供了更⼤的灵活性。Llama Guard 3可以仅针对特定的伤害部署,仅启⽤对违规和错误拒绝权衡的控制,以伤害类别级别为单位。表26展⽰了每个类别的违规减少情况,以告知根据开发⼈员⽤例应该启⽤或禁⽤哪个类别。

为了使部署安全系统更容易,我们提供了使⽤常⽤的int8量化技术量化版本的Llama Guard 3,将其⼤⼩减少了40%以上。表27说明了量化对模型性能的影响微乎其微。

基于提⽰的系统防护。系统级安全组件使开发⼈员能够⾃定义和控制LLM系统如何响应⽤⼾请求。作为我们提⾼模型系统整体安全性并使开发⼈员能够负责任地部署的⼯作的⼀部分,我们描述并发布了两种基于提⽰的过滤机制的创建:Prompt Guard和Code Shield。我们开源这些,供社区直接利⽤或作为灵感并适应他们的⽤例。

Prompt Guard是⼀个基于模型的过滤器,旨在检测提⽰攻击,这些是旨在颠覆作为应⽤程序⼀部分的LLM预期⾏为的输⼊字符串。该模型是⼀个多标签分类器,检测两类提⽰攻击⻛险⸺直接越狱(明确尝试覆盖模型的安全条件或系统提⽰的技术)和间接提⽰注⼊(模型的上下⽂窗⼝中包含第三⽅数据,包括⽆意中被LLM执⾏为⽤⼾命令的指令)。该模型从mDeBERTa-v3-base微调⽽来,这是⼀个⼩型(8600万)参数模型,适⽤于过滤输⼊到LLM的输⼊。我们在表28中显⽰的⼏个评估数据集上评估了其性能。我们在两个数据集(越狱和注⼊)上进⾏了评估,这些数据集与训练数据具有相同的分布,以及⼀个英语的分布外数据集,⼀个从机器翻译构建的多语⾔越狱集,以及⼀个从CyberSecEval(英语和多语⾔)中提取的间接注⼊数据集。总体⽽⾔,我们发现该模型对新分布有很好的泛化能⼒,并具有强⼤的性能。

Code Shield是⼀个基于提供推理时过滤的系统级保护的⽰例。特别是,它专注于在不安全代码可能进⼊下游⽤例(如⽣产系统)之前检测不安全代码的⽣成。它通过利⽤静态分析库⸺不安全代码检测器(ICD),来识别不安全代码。ICD使⽤⼀系列静态分析⼯具对7种编程语⾔进⾏分析。这些类型的防护栏通常对开发⼈员很有⽤,他们可以在各种应⽤程序中部署多层保护。
在这里插入图片描述

5.4.8 局限性
我们对Llama 3的安全使⽤进⾏了⼴泛的测量和缓解,涉及多种⻛险。然⽽,没有任何测试可以保证能够全⾯识别出所有可能的⻛险。由于在各种数据集上进⾏训练,特别是对于英语以外的语⾔,以及在熟练的对抗性红队⼯程师进⾏提⽰⼯程时,Llama 3可能仍会⽣成有害内容。恶意开发⼈员或对抗性⽤⼾可能会找到新的⽅法来越狱我们的模型,并将其⽤于各种恶意⽤例。我们将继续主动识别⻛险,进⾏缓解⽅法的研究,并⿎励开发⼈员在从模型开发到部署再到⽤⼾的每⼀个⽅⾯都考虑责任。我们希望开发⼈员能够利⽤并为我们发布的开源系统级安全套件做出贡献。