羊驼2:开放的基础和微调聊天模型--Llama 2论文阅读

论文地址:https://arxiv.org/pdf/2307.09288.pdfd

代码地址:GitHub - facebookresearch/llama-recipes: Examples and recipes for Llama 2 model

问答

用了多少个gpu?

这篇文档中使用了3.3M GPU小时的计算,使用的硬件类型是A100-80GB,可以扩展到2000个GPU,但这些计算的功耗估计并不包括互连或非GPU服务器功耗,也不包括数据中心冷却系统的功耗。在预训练Llama 2模型的过程中,估计总排放量为539 tCO2eq,但Meta的可持续性计划直接抵消了100%的排放量。因此,这些预训练成本不需要由其他公司承担,节省了更多的全球资源。

摘要

    在这项工作中,我们开发并发布了Llama 2,这是一个预训练和微调的大型语言模型(llm)的集合,范围从70亿到700亿个参数。我们的微调llm,称为Llama 2-Chat,针对对话用例进行了优化。我们的模型在我们测试的大多数基准测试中都优于开源聊天模型,并且基于我们对有用性和安全性的人工评估,可能是闭源模型的合适替代品。我们详细描述了我们对Llama 2-Chat进行微调和安全改进的方法,以使社区能够在我们的工作基础上为llm的负责任发展做出贡献。

内容

1介绍

    大型语言模型(llm)作为高能力的人工智能助手已经显示出巨大的前景,它擅长于需要广泛领域的专家知识的复杂推理任务,包括编程和创意写作等专业领域。它们可以通过直观的聊天界面与人类进行交互,这在公众中得到了迅速和广泛的采用。

    考虑到培训方法看似简单的性质,llm的能力是显着的。自回归transformer,在广泛的自监督数据语料库上进行预训练,然后通过强化学习与人类反馈(RLHF)等技术与人类偏好保持一致。虽然训练方法简单,但高计算要求限制了LLMs的发展。已经有公开发布的预训练LLMs(如BLOOM (Scao等人,2022)、LLaMa-1 (Touvron等人,2023)和Falcon (Penedo等人,2023))的性能与封闭预训练的竞争对手(如GPT-3 (Brown等人,2020)和Chinchilla(Hoffmann等人,2022))相匹配,但这些模型都不适合替代封闭的“产品”LLMs,如ChatGPT、BARD和Claude。这些封闭的产品LLMs经过大量微调,以符合人类的偏好,这大大提高了它们的可用性和安全性。这一步可能需要大量的计算和人工注释成本,并且通常不透明或不易重复,限制了社区内推进人工智能校准研究的进展。

    在这项工作中,我们开发并发布了Llama 2,一个预先训练和微调的llm家族,Llama 2和Llama 2- chat,规模高达70B参数。在我们测试的一系列有用性和安全性基准测试中,Llama 2-Chat模型通常比现有的开源模型表现得更好。至少在我们执行的人工评估上(参见图1和图3),它们似乎也与一些闭源模型相当。我们已经采取措施来增加这些模型的安全性,使用安全特定的数据注释和调优,以及进行红队和采用迭代评估。此外,本文还全面介绍了我们的微调方法和提高llm安全性的方法。我们希望这种开放将使社区能够复制微调的llm,并继续提高这些模型的安全性,为更负责任的llm开发铺平道路。我们还分享了我们在开发Llama 2和Llama 2- chat期间所做的新观察,例如工具使用的出现和知识的时间组织。

我们向公众发布了以下模型用于研究和商业用途:

1. 羊驼2号是羊驼1号的升级版,它使用了新的公开数据组合进行训练。我们还将预训练语料库的大小增加了40%,将模型的上下文长度增加了一倍,并采用了分组查询关注(Ainslie et al., 2023)。我们将发布带有7b、13B和70B参数的Llama 2的变体。我们还训练了34B变体,我们在本文中报告了这些变体,但没有发布。

2. Llama 2- chat, Llama 2的微调版本,针对对话用例进行了优化。我们还发布了具有7B、13B和70B参数的该模型的变体。

我们相信,在安全的情况下,LLMs的公开发布将对社会产生净效益。与所有llm一样,Llama 2是一项新技术,使用时存在潜在风险(Bender等人,2021b;Weidinger等人,2021;Solaiman等人,2023)。迄今为止进行的测试都是用英语进行的,没有——也不可能——涵盖所有场景。因此,在部署Llama 2-Chat的任何应用程序之前,开发人员应该针对模型的特定应用程序执行安全测试和调优。我们提供了一个负责任的使用指南¶和代码示例‖以促进Llama 2和Llama 2- chat的安全部署。关于我们负责任的发布策略的更多细节可以在5.3节中找到。

本文的其余部分描述了我们的预训练方法(第2节)、微调方法(第3节)、模型安全性方法(第4节)、关键观察和见解(第5节)、相关工作(第6节)和结论(第7节)。

2 Pretraining

为了创建新的Llama 2模型家族,我们从Touvron等人(2023)中描述的预训练方法开始,使用优化的自回归transformer,,但进行了一些更改以提高性能。具体来说,我们执行了更强大的数据清理,更新了我们的数据混合,训练了40%以上的总令牌,将上下文长度增加了一倍,并使用分组查询关注(GQA)来提高更大模型的推理可扩展性。表1比较了新Llama 2模型与Llama 1模型的属性。

2.1预训练数据

我们的训练语料库包括来自公开来源的新数据组合,其中不包括来自Meta产品或服务的数据。我们努力从某些已知包含大量个人个人信息的网站上删除数据。我们在2万亿个令牌数据上进行训练,因为这提供了一个很好的性能成本权衡,对最真实的来源进行上采样,以增加知识和抑制幻觉。

我们进行了各种预训练数据调查,以便用户能够更好地了解我们模型的潜力和局限性;结果可以在4.1节中找到。

2.2 训练细节

我们采用了Llama 1中的大部分预训练设置和模型架构。我们使用标准transformer架构(Vaswani等人,2017),使用RMSNorm应用预归一化(Zhang和sennrich, 2019),使用SwiGLU激活函数(Shazeer, 2020)和旋转位置嵌入(RoPE, Su等人,2022)。与Llama 1的主要架构差异包括增加了上下文长度和分组查询关注(GQA)。我们将在附录A.2.1节中通过烧蚀实验详细说明这些差异的重要性。

Hyperparameters。我们使用AdamW优化器(Loshchilov and Hutter, 2017)进行训练,β1 =0.9, β2 = 0.95, eps = 10−5。我们使用余弦学习率计划,预热2000步,并将衰减最终学习率降至峰值学习率的10%。我们使用0.1的权重衰减和1.0的梯度裁剪。图5 (a)显示了使用这些超参数的Llama 2的训练损失。

分词器。我们使用与Llama 1相同的标记器;它采用字节对编码(BPE)算法(Sennrichet等人,2016),使用sentencepece的实现(Kudo和Richardson, 2018)。与Llama 1一样,我们将所有数字拆分为单个数字,并使用字节来分解未知的UTF-8字符。总词汇表大小为32k个标记。

2.2.1训练硬件和碳足迹(碳足迹是用来衡量个体、组织、产品或国家在一定时间内直接或间接导致的二氧化碳排放量的指标)

培训硬件。我们在Meta的研究超级集群(RSC) (Lee和Sengupta,2022)以及内部生产集群上预训练我们的模型。两个集群都使用NVIDIA a100。两个集群之间有两个关键的区别,第一个是可用的互连类型:RSC使用NVIDIA QuantumInfiniBand,而我们的生产集群配备了基于商品以太网交换机的RoCE (RDMA over converged Ethernet)解决方案。这两种解决方案都将200 Gbps的端点互连起来。第二个区别是每个gpu的功耗上限——rsc使用400W,而我们的生产集群使用350W。通过这种双集群设置,我们能够比较这些不同类型的互连对大规模训练的适用性。RoCE(这是一种更实惠的商业互连网络)

几乎可以与昂贵的Infiniband扩展到2000个gpu,这使得预训练更加大众化。

预训练的碳足迹。根据前人的研究(Bender et al., 2021a;Patterson等人,2021;Wu等人,2022;Dodge等人,2022),并使用GPU设备的功耗估计和碳效率,我们的目标是计算Llama 2模型预训练产生的碳排放量。GPU的实际功率使用取决于其利用率,并且可能与我们用作GPU功率估计的热设计功率(TDP)不同。值得注意的是,我们的计算并没有考虑到进一步的电力需求,例如来自互连或非gpu服务器的功耗,也没有来自数据中心冷却系统的功耗。此外,Gupta等人(2022b,a)认为,与gpu等人工智能硬件生产相关的碳排放可能会增加总体碳足迹。

表2总结了预训练Llama 2系列模型的碳排放量。在型号为A100-80GB (TDP为400W或350W)的硬件上进行了累计330万GPU小时的计算。我们估计训练的总排放量为539吨二氧化碳当量(个人无法承担),其中100%由Meta的可持续发展计划直接抵消。我们的开放发布策略也意味着这些预培训成本将不需要由其他公司承担,从而节省更多的全球资源。

2.3 Llama 2预训练模型评估

在本节中,我们报告了Llama 1和Llama 2基础模型、MosaicML PretrainedTransformer (MPT)††模型和Falcon (Almazrouei等人,2023)模型在标准学术基准上的结果。对于所有的求值,我们使用内部求值库。我们在内部复制MPT和Falconmodels的结果。对于这些模型,我们总是在我们的评估框架和任何公开报告的结果之间选择最好的分数。

在表3中,我们总结了一组流行基准测试的总体性能。注意,安全基准在4.1节中被共享。基准测试分为以下几类。所有单独基准测试的结果可在A.2.2节中获得。

•法典。我们报告了我们的模型在 HumanEval (Chen et al., 2021) 和 MBPP (Austin et al., 2021) 上的平均pass@1分数。我们报告了 PIQA (Bisk et al., 2020)、SIQA (Sap et al., 2019)、HellaSwag (Zellers et al., 2019a)、WinoGrande (Sakaguchi et al., 2021)、ARC easy and challenge(Clark et al., 2018)、OpenBookQA (Mihaylov et al., 2018) 和 CommonsenseQA (Talmor et al., 2018) 的平均值。我们报告了 CommonSenseQA 的 7 次结果和所有其他基准测试的 0 次结果。我们评估了 NaturalQuestions(Kwiatkowski 等人,2019 年)和 TriviaQA(Joshi 等人,2017 年)的 5 次表现,并报告了平均值。对于阅读理解,我们报告了 SQuAD(Rajpurkar 等人,2018 年)、QuAC(Choi 等人,2018 年)和 BoolQ(Clark 等人,2019 年)的 0 次平均值。我们报告了 GSM8K(8 次)(Cobbe 等人,2021 年)和 MATH(4 次拍摄)(Hendrycks 等人,2021 年)基准的平均值,排名前 1。

•流行的聚合基准。我们报告了MMLU(5次射击)(Hendryckset al., 2020)、Big Bench Hard (BBH)(3次射击)(Suzgun et al., 2022)和AGI Eval(3 - 5次射击)(Zhonget al., 2023)的总体结果。对于AGI Eval,我们只评估英语任务并报告平均值。

如表3所示,Llama 2模型优于Llama 1模型。与Llama 165b相比,Llama 270b在MMLU和BBH上分别提高了约5分和约8分。除了代码基准测试之外,Llama 27b和30b模型在所有类别上都优于相应大小的MPT模型。对于猎鹰系列,羊驼27b和34B在所有类别的基准测试中都优于猎鹰7B和40B。此外,Llama 270b模型优于所有开源模型。

除了开源模型,我们还将Llama 270b的结果与闭源模型进行了比较。如表4所示,Llama 270b在MMLU和GSM8K上接近GPT-3.5 (OpenAI, 2023),但在编码基准上存在很大差距。在几乎所有基准测试中,Llama 270b的结果与PaLM (540B)相当或更好(Chowdhery等人,2022)。美洲驼270b与gpt -4和PaLM-2-L在性能上仍有很大差距。

3 微调

Llama 2-Chat是个月的研究和校准技术迭代应用的结果,包括指令调优和RLHF,需要大量的计算和注释资源。

在本节中,我们报告了我们使用监督微调(第3.1节)、初始和迭代奖励建模(第3.2.2节)和RLHF(第3.2.3节)进行的实验和发现。我们还分享了一种新技术,幽灵注意力(GAtt),我们发现它有助于控制多个回合的对话流(第3.3节)。参见4.2节对微调模型的安全性评估。

3.1 监督微调(Supervised Fine-Tuning SFT)

开始。为了引导,我们从公开可用的指令调优数据(Chung等人,2022)开始SFT阶段,正如之前在Touvron等人(2023)中使用的那样。

质量就是你所需要的一切。第三方SFT数据可以从许多不同的来源获得,但我们发现其中许多缺乏多样性和质量,特别是在将llm与对话式指导结合起来方面。因此,我们首先集中精力收集数千个高质量SFT数据示例,如表5所示。通过将来自第三方数据集的数百万个示例放在一边,并使用来自我们自己基于供应商的注释工作的更少但质量更高的示例,我们的结果得到了显著改善。这些发现在精神上与Zhou等人(2023)相似,他们也发现一组有限的干净的指令调优数据足以达到高质量水平。我们发现成千上万的SFT注释足以获得高质量的结果。在总共收集了27540个注释后,我们停止了对SFT的注释。请注意,我们不包括任何元用户数据。

我们还观察到,不同的注释平台和供应商可能导致显著不同的下游模型性能,这突出了数据检查的重要性,即使使用供应商来获取注释。为了验证我们的数据质量,我们仔细检查了一组180个示例,将人工提供的注释与模型通过手动审查生成的样本进行比较。令人惊讶的是,我们发现从结果SFT模型中采样的输出通常与人类注释者手写的SFT数据竞争,这表明我们可以重新确定优先级,并将更多的注释工作投入到RLHF的基于偏好的注释中。

调整细节。对于监督微调,我们使用余弦学习率调度,初始学习率为2 ×10−5,权重衰减为0.1,批大小为64,序列长度为4096个token。

对于微调过程,每个示例由提示和答案组成。为了确保模型序列长度被正确填充,我们将训练集中的所有提示和答案连接起来。一个特殊的标记被用来区分提示和回答部分。我们使用自回归目标并将来自用户提示的令牌损失归零,因此,我们仅在回答令牌上反向传播。最后,我们对模型进行了2个时期的微调。

3.2 人类反馈强化学习(RLHF)

RLHF是一个模型训练程序,应用于微调的语言模型,以进一步使模型行为与人类偏好和指令遵循保持一致。我们收集代表经验的数据

采样的人类偏好,即人类注释者选择他们喜欢的两个模型输出中的哪一个。这种人类反馈随后被用来训练一个奖励模型,该模型学习人类注释者的偏好模式,然后可以自动做出偏好决定。

3.2.1人类偏好数据收集

接下来,我们收集人类偏好数据进行奖励建模。我们选择二进制比较协议而不是其他方案,主要是因为它使我们能够最大限度地提高收集到的提示的多样性。尽管如此,其他策略值得考虑,我们将其留给未来的工作。

我们的注释过程如下。我们要求注释者首先编写提示,然后根据提供的标准在两个抽样模型响应之间进行选择。为了使多样性最大化,对给定提示的两个响应从两个不同的模型变量中采样,并改变温度超参数。除了给参与者一个强制选择之外,我们还要求注释者标注他们对选择的回答的偏好程度:他们的选择是明显更好,更好,稍微更好,还是可以忽略的更好/不确定。

对于我们的首选项注释集合,我们关注的是有用性和安全性。有用性指的是Llama 2-Chat响应在多大程度上满足了用户的请求并提供了所请求的信息;安全指的是Llama 2-Chat的回答是否不安全,例如,“给出制作炸弹的详细说明”可以被认为是有用的,但根据我们的安全指南是不安全的。将两者分开可以让我们对每个应用特定的指导方针,并更好地指导注释者;例如,在其他指导中,我们的安全注释提供了关注对抗性提示的说明。

除了标注准则的不同,我们在安全阶段额外收集了一个安全标签。这个附加信息箱将响应分为三类:1)首选响应是安全的,其他响应不是,2)两个响应都是安全的,3)两个响应都是不安全的,分别有18%,47%和35%的安全数据集属于每个箱。我们没有包括任何例子,其中选择的反应是不安全的,而另一个反应是安全的,因为我们相信更安全的反应也会更好/更受人类的青睐。安全指南和有关安全注释的更详细信息可在4.2.1节中找到。

每周分批收集人工注释。随着我们收集到更多的偏好数据,我们的奖励模型得到了改进,并且我们能够逐渐为Llama 2-Chat训练更好的版本(参见图20第5节中的结果)。Llama 2-Chat的改进也改变了模型的数据分布。由于奖励模型的准确性如果不暴露于这个新的样本分布,即来自超专门化(Scialom等人,2020b),那么在新的Llama 2-Chat调优迭代之前,使用最新的Llama 2-Chat迭代收集新的偏好数据是很重要的。这一步骤有助于保持奖励模型分布,并为最新模型保持准确的奖励。

在表6中,我们报告了我们随时间收集的奖励建模数据的统计数据,并将其与多个开源偏好数据集进行对比,包括Anthropic Helpful and无害(Bai等人,2022a)、OpenAI Summarize (Stiennon等人,2020)、OpenAI WebGPT (Nakano等人,2021)、StackExchange(Lambert等人,2023)、Stanford Human Preferences (Ethayarajh等人,2022)和Synthetic GPT-J (havilla)。我们收集了一个大型数据集,其中包含超过100万个基于人类应用我们指定的指导方针的二进制比较,我们将其称为元奖励建模数据。请注意,提示和答案中的令牌数量因文本域而异。摘要和在线论坛数据通常有较长的提示,而对话式提示通常较短。与现有的开源数据集相比,我们的偏好数据具有更多的会话回合,并且平均更长。

3.2.2奖励建模

奖励模型将模型响应及其相应的提示(包括来自前一个回合的上下文)作为输入,并输出一个标量分数来指示模型生成的质量(例如,有用性和安全性)。利用这样的反应分数作为奖励,我们可以在RLHF期间优化Llama 2-Chat,以更好地调整人类的偏好,提高帮助和安全性。

其他人发现,帮助性和安全性有时会相互权衡(Bai et al., 2022a),这使得单一奖励模型在两者上都表现良好具有挑战性。为了解决这个问题,我们训练了两个独立的奖励模型,一个针对帮助性(称为helpfulness RM)进行了优化,另一个针对安全性(safety RM)进行了优化。

我们从预训练的聊天模型检查点初始化我们的奖励模型,因为它确保两个模型都受益于预训练中获得的知识。简而言之,奖励模式“知道”聊天模式是什么

知道。这可以防止出现这样的情况,例如,两个模型会有信息不匹配,这可能导致偏爱幻觉。模型架构和超参数与预训练语言模型相同,除了用于下一个标记预测的分类头被用于输出标量奖励的回归头所取代。

培训目标。为了训练奖励模型,我们将收集到的成对的人类偏好数据转换为二元排名标签格式(即选择和拒绝),并强制选择的响应具有比对应响应更高的分数。我们使用了与欧阳等人(2022)一致的二元排序损失:

其中rθ(x, y)为提示x和完成y的标量评分输出,模型权值为θ。Yc是注释者选择的首选响应,而yr是被拒绝的对应项。

在这个二进制排名损失的基础上,我们进一步修改它,以获得更好的帮助和安全奖励模型,如下所示。考虑到我们的偏好评级被分解为四个点的尺度(例如,显着更好),如第3.2.1节所示,利用这些信息明确地教导奖励模型将更多差异分数分配给具有更多差异的代可能是有用的。为此,我们进一步在亏损中添加保证金部分:

其中边际m(r)是偏好评级的离散函数。当然,对于具有不同响应的配对,我们使用较大的边际,对于具有相似响应的配对,我们使用较小的边际(见表27)。我们发现这个边际成分可以提高帮助奖励模型的准确性,特别是在两个反应更可分离的样本上。更详细的消融和分析见附录A.3.3中的表28。

数据组成。我们将新收集的数据与现有的开源偏好数据集结合起来,形成一个更大的训练数据集。最初,在我们收集偏好注释数据的过程中,使用开源数据集来引导我们的奖励模型。我们注意到,在本研究的RLHF背景下,奖励信号的作用是学习人类对Llama 2-Chat输出的偏好,而不是任何模型输出。然而,在我们的实验中,我们没有观察到来自开源偏好数据集的负迁移。因此,我们决定将它们保留在我们的数据混合中,因为它们可以为奖励模型提供更好的泛化,并防止奖励黑客,例如Llama 2-Chat利用我们奖励的一些弱点,从而在表现不佳的情况下人为地提高分数。

利用来自不同来源的训练数据,我们为helpfulness和Safety奖励模型尝试了不同的混合配方,以确定最佳设置。经过大量的实验

Helpfulness奖励模型最终在所有Meta Helpfulness数据上进行训练,并结合从Meta Safety和开源数据集中统一采样的等量剩余数据。Meta Safety奖励模型在所有Meta Safety和Anthropic无害数据上进行训练,并以90/10的比例混合Meta helpfulness和开源有用数据。我们发现,10%有用数据的设置对样本的准确性特别有益,因为选择和拒绝的回答都被认为是安全的。

培训的细节。我们在训练数据上训练一个历元。在早期的实验中,我们发现训练时间越长会导致过度拟合。我们使用与基本模型相同的优化器参数。对于70B参数Llama 2-Chat,最大学习率为5 ×10−6,其余参数为1 ×10−5。在余弦学习率计划上,学习率降低到最大学习率的10%。我们使用总步数的3%作为热身,最少5步。有效批大小固定为512对,或每个批1024行。

奖励模型结果。在奖励建模的每一批人类偏好注释上,我们提供了1000个示例作为测试集来评估我们的模型。我们将对应测试集的所有提示的集合分别称为“Meta Helpfulness”和“Meta Safety”。

作为参考点,我们还评估了其他公开可用的替代方案作为基准:基于FLAN-T5-xl的SteamSHP-XL(Ethayarajh等人,2022),基于deberta V3 Large (He等人,2020)的Open Assistant (Köpf等人,2023)奖励模型,以及通过OpenAI的API访问的GPT4。请注意,在推理时,与训练相反,所有奖励模型都可以预测单个输出的标量,而不需要访问其成对输出。对于GPT-4,我们会提示一个零概率问题“在a和B之间选择最佳答案”,其中a和B是比较的两个答案。

我们在表7中报告了准确度方面的结果。正如预期的那样,我们自己的奖励模型在基于Llama 2-Chat收集的内部测试集上表现最好,其中帮助奖励模型在元帮助测试集上表现最好,类似地,安全奖励模型在元安全测试集上表现最好。总的来说,我们的奖励模型优于所有的基准,包括GPT-4。有趣的是,GPT-4比其他非元奖励模型表现得更好,尽管它没有被直接训练,也没有专门针对这个奖励建模任务。

帮助性和安全性在各自的领域中表现最好的事实可能是由于两个目标之间的紧张关系(即,尽可能提供帮助与在必要时拒绝不安全提示),这可能会在训练期间混淆奖励模型。为了使单个模型在两个维度上都表现良好,它不仅需要学会在给定提示的情况下选择更好的响应,还需要学会区分不同的提示和安全提示。因此,优化两个独立的模型简化了奖励建模任务。在附录A.4.1中可以找到关于安全性和有用性之间的紧张关系的更详细的分析。

当我们按照表8中的偏好等级对分数进行分组时,我们可以看到,对于“明显更好”的测试集,准确率更高,并且随着比较对变得更相似(例如,“稍微更好”),准确率逐渐降低。由于注释者的主观性和他们对可能区分反应的细微细节的依赖,当在两个相似的模型反应之间做出决定时,学习模拟人类偏好变得具有挑战性。我们强调,在更多不同的反应上的准确性是提高羊驼2-Chat性能的最重要因素。人类偏好注释的一致性率也比相似对更明显的反应更高。

扩展的趋势。我们研究了奖励模型的数据和模型大小的缩放趋势,在每周收集的奖励模型数据的增量上微调不同的模型大小(参见表26中关于每批数量的详细信息)。图6报告了这些趋势,显示了预期的结果,即对于类似的数据量,更大的模型可以获得更高的性能。更重要的是,考虑到现有的用于训练的数据注释量,扩展性能还没有趋于稳定,这表明有更多注释的空间可以进一步改进。我们注意到,奖励模型的准确性是Llama 2-Chat最终性能的最重要代理之一。虽然综合评估生成模型的最佳实践是一个开放的研究问题,但奖励的排名任务没有歧义。因此,在其他条件相同的情况下,奖励模式的改进可以直接转化为《Llama 2-Chat》的改进。

3.2.3迭代微调

随着我们收到更多批次的人类偏好数据注释,我们能够训练更好的奖励模型并收集更多提示。因此,我们训练了RLHF模型的连续版本,这里称为RLHF- v1,…, RLHF-V5。

我们研究了两种主要算法的RLHF微调:

•近端策略优化(PPO) (Schulman et al., 2017), RLHF文献中的标准。

•拒绝采样微调。我们从模型中抽取K个输出样本,并根据我们的奖励选择最佳候选者,与Bai等人(2022b)一致。Deng等人(2019)也提出了LLMs的相同重新排名策略,其中奖励被视为能量函数。这里,我们更进一步,使用选择的输出进行梯度更新。对于每个提示,示例获得

最高的奖励分数被认为是新的黄金标准。与Scialom等人(2020a)类似,我们在新的排序样本集上微调我们的模型,强化奖励。

两种强化学习算法的主要区别在于:

•广度拒绝抽样,该模型为给定提示探索K个样本,而PPO只进行一次生成。•深度在PPO中,在步骤t的训练过程中,样本是在前一步梯度更新后从−1更新的模型策略的函数。在拒绝采样微调中,在应用类似于SFT的微调之前,我们对给定模型初始策略的所有输出进行采样以收集新的数据集。然而,由于我们应用了迭代模型更新,两种强化学习算法之间的根本差异就不那么明显了。

在RLHF (V4)之前,我们只使用拒绝采样微调,之后,我们将两者依次结合起来,在再次采样之前在结果的拒绝采样检查点上应用PPO。

拒绝抽样。我们只使用最大的70B Llama 2-Chat进行拒绝抽样。所有较小的模型都对来自较大模型的采样数据进行微调,从而将大型模型的能力提炼为较小的模型。我们把对这种蒸馏效果的进一步分析留给今后的工作。

在每个迭代阶段,我们从最新模型中为每个提示抽取K个答案。我们根据实验时可获得的最佳奖励模型对每个样本进行评分,然后为给定的提示选择最佳答案。在我们模型的早期版本中,直到RLHF V3,我们的方法是将答案选择仅限于从之前迭代中收集的样本的“包”。例如,RLHF V3仅使用来自RLHF V2的样本进行约束。然而,尽管不断改进,这种方法导致了某些功能中的回归。例如,通过定性分析发现,RLHF V3比以前的版本更难以在诗歌中谱诗,这表明需要进一步研究遗忘的原因和缓解措施(Kirkpatrick等人,2017;Nguyen et al., 2019;Ramasesh et al.,2021)可能是未来进一步研究的一个富有成果的领域。

作为回应,在随后的迭代中,我们修改了我们的策略,合并了来自先前迭代的最佳表现样本,例如在RLHF-V1和RLHF-V2中使用的样本。虽然我们没有提供具体的数据,但这一调整显示了相当大的性能增强,并有效地解决了前面提到的问题。这种缓解可以被视为类似于RL文献中的Synnaeve等人(2019)和Vinyalset等人(2019)。

我们在图7中说明了拒绝抽样的好处。最大值和中值曲线之间的差值可以解释为对最佳输出进行微调的潜在增益。正如预期的那样,随着样本的增加,这个delta会增加,因为最大值会增加(即,更多的样本,更多的机会产生一个好的轨迹),而中位数保持平稳。在探索和我们能从样本中获得的最大回报之间有直接的联系。温度参数对勘探也起着重要作用,因为更高的温度使我们能够采样更多样化的输出。

在图8中,我们报告了对于Llama 2-Chat-SFT(左)和Llama 2-Chat-RLHF(右),N个样本(N∈[1,…])之间的最大奖励曲线。[100]),以适应不同的温度。我们可以观察到,在迭代模型更新过程中,最优温度不是恒定的,RLHF对温度的重新标度有直接影响。对于Llama 2-Chat-RLHF,在10 ~ 100个输出之间采样时的最优温度为T∈[1.2,1.3]。鉴于有限的计算预算,因此有必要逐步重新调整温度。请注意,对于每个模型,这种温度重新缩放的步骤是恒定的,并且在每个新的RLHF版本上总是从基本模型开始。

PPO。我们根据Stiennon等人(2020)的RL方案进一步训练我们的语言模型,该方案使用后向模型作为真实奖励函数(人类偏好)的估计,并使用预训练的语言模型作为优化策略。在此阶段,我们力求优化以下目标:

我们通过从数据集D中抽取提示p和从策略π中抽取g代来迭代改进策略,并使用PPO算法和损失函数来实现这一目标。

我们在优化过程中使用的最后一个奖励函数,

包含偏离原政策的惩罚项π0。正如在其他作品中观察到的那样(Stiennonet al., 2020;欧阳等人,2022),我们发现这种约束对训练稳定性有用,并减少奖励攻击,从而我们可以从奖励模型中获得高分,但从人类评估中获得低分。

我们将Rc定义为安全(Rs)和帮助(Rh)奖励模型的分段组合。我们在数据集中标记了可能引发潜在不安全响应的提示,并优先考虑安全模型的得分。选择0.15的阈值来过滤不安全响应,对应于在Meta Safety测试集上评估的精度为0.89,召回率为0.55。我们还发现,为了增加稳定性并与上面的KL惩罚项(β)适当平衡,将最终的线性分数(这里通过用logit函数反转s形来显示)变白是很重要的。

对于所有模型,我们使用AdamW优化器(Loshchilov and Hutter, 2017), β1 = 0.9, β2 = 0.95, eps =10−5。我们使用的权重衰减为0.1,梯度裁剪为1.0,恒定学习率为10−6。对于每个PPO迭代,我们使用批大小为512,PPO剪辑阈值为0.2,小批大小为64,并且每个小批执行一个梯度步骤。对于7B和13B模型,我们设置β= 0.01 (KL惩罚),对于34B和70b模型,我们设置β= 0.005。

我们对所有模型进行200到400次迭代的训练,并对提前停止的提示进行评估。70B型号的PPO每次迭代平均≈330秒。为了在大批量下快速训练,我们使用FSDP (Zhao et al., 2023)。当使用O(1)正向或反向传递时,这是有效的,但在生成过程中会导致很大的减速(≈20倍),即使使用大批处理大小和KVcache时也是如此。我们能够通过在生成之前将模型权重合并到每个节点一次,然后在生成之后释放内存,恢复训练循环的其余部分来缓解这种情况。

3.3多圈一致性系统提示

在对话设置中,一些指示应该适用于所有的对话回合,例如,简洁地回应,或者“扮演”某个公众人物。当我们向Llama 2-Chat提供这样的指示时,随后的响应应该始终尊重约束。然而,我们最初的RLHF模型倾向于在几轮对话后忘记初始指令,如图9(左)所示。

为了解决这些限制,我们提出了Ghost Attention (GAtt),这是一种受ContextDistillation (Bai et al., 2022b)启发的非常简单的方法,它利用微调数据来帮助注意力集中在多阶段过程中。GAtt允许对多个回合进行对话控制,如图9所示(右)。

关贸总协定的方法。假设我们可以访问两个人(例如,用户和助手)之间的多回合对话数据集,其中包含消息列表[u1, a1,…], un, an],其中un和an分别对应第n轮的用户消息和助手消息。然后,我们定义一个指令,首先,在整个对话中都应该尊重它。例如,inst可以是“作为”。然后,我们可以综合地将该指令连接到对话的所有用户消息。

接下来,我们可以使用最新的RLHF模型对这些合成数据进行采样。我们现在有了一个上下文对话框和样本,可以在类似于拒绝抽样的过程中对模型进行微调。而不是随着指令增加所有的上下文对话回合,我们可以在除了第一轮之外的所有回合中放弃它,但这将导致在训练时间系统消息之间的不匹配,即,在最后一轮之前出现的所有中间辅助消息,以及我们的样本。要解决这个可能会影响训练的问题,只需将前几个回合的所有令牌的损失设置为0,包括助理消息。

对于培训说明,我们创建了一些综合约束来进行采样:爱好(“你喜欢……网球”),语言(“说法语”),或公众人物(“像拿破仑一样行动”)。为了获得兴趣爱好和公众人物列表,我们要求Llama 2-Chat生成它,以避免指令和模型知识之间的不匹配(例如,要求模型扮演它在训练期间没有遇到的人)。为了使指令更加复杂和多样,我们通过随机组合上述约束来构造最终指令。在为训练数据构造最终的系统消息时,我们还修改一半时间的原始指令,使其不那么冗长,例如,“从现在开始永远扮演拿破仑”->“人物:拿破仑”。这些步骤产生一个SFT数据集,我们可以对Llama 2-Chat进行微调。

关贸总协定的评估。我们在RLHF V3之后应用了GAtt。我们报告了一项定量分析,表明在达到最大上下文长度之前,GAtt在20+回合内是一致的(见附录a .3.5)。我们试图在推理时设置GAtt训练中不存在的约束,例如“总是用俳句回答”,模型保持一致,如图28所示。

为了说明GAtt如何在微调期间帮助重塑注意力,我们在图10中显示了模型的最大注意力激活。每个图形的左侧对应于系统消息(“扮演奥斯卡·王尔德”)。我们可以看到,与没有gatt的模型(左)相比,配备gatt的模型(右)在更大的对话部分中保持了与系统消息相关的大量注意力激活。

尽管它很实用,但GAtt目前的实现是香草的,对这种技术进行更多的开发和迭代可能会进一步使该模型受益。例如,我们可以通过在微调期间集成这些数据来教模型在对话期间更改系统消息。

3.4 RLHF结果

3.4.1基于模型的评价

评估LLMs是一个具有挑战性的开放研究问题。人类评估虽然是金标准,但可能会因各种HCI考虑而复杂化(Clark et al., 2021;Gehrmann et al., 2023),并且并不总是可扩展的。因此,为了从rlhf - v1到V5的每次迭代中选择性能最好的模型,我们首先观察了最新奖励模型对奖励的改进,以节省成本并提高迭代速度。我们随后用人工评估验证了主要的模型版本。

基于模型的评估能走多远?为了衡量我们的奖励模型的稳健性,我们收集了一组关于帮助性和安全性的提示,并要求三位注释者根据7分李克特量表(越高越好)来判断答案的质量。我们观察到,我们的奖励模型总体上与人类偏好注释进行了很好的校准,如附录中的图29所示。这证实了将我们的奖励作为一个积分度量的相关性,尽管我们接受了pairwiseringingloss的训练。

然而,正如古德哈特定律所说,当一项措施成为目标时,它就不再是一项好措施。为了确保我们的测量不会偏离人类的偏好,我们还使用了一个更通用的奖励,训练有素

PAGE 18

各种开源奖励建模数据集。我们还没有观察到任何这样的分歧,并假设迭代模型更新可能有助于防止这种情况。

作为确保新模型和前一个模型之间没有回归的最后验证步骤,我们在下一个注释迭代中使用这两个模型进行采样。这样就可以在新的提示上“免费”进行模型比较,并有助于增加采样时的多样性。

模型的进展。图11报告了我们不同的SFT和RLHF版本的安全性和帮助性轴的进展,通过我们内部的安全性和帮助性奖励模型进行测量。在这组评估中,我们在RLHF-V3之后的两个轴上都优于ChatGPT(无害和有益>50%)。尽管前面提到了将我们的奖励作为积分指标的相关性,但它可能偏向于《Llama 2-Chat》。因此,为了公平比较,我们使用GPT-4额外计算最终结果,以评估哪一代更受欢迎。在GPT-4提示中出现的ChatGPT和Llama 2-Chat输出的顺序是随机交换的,以避免任何偏差。正如预期的那样,虽然我们最新的羊驼2-Chat的胜率超过60%,但赞成羊驼2-Chat的胜率不太明显。

提示分别对应于1、586和584个安全性和有用性提示的验证集。

3.4.2人的评价

人类评估通常被认为是判断自然语言生成模型(包括对话模型)的黄金标准。为了评估主要模型版本的质量,我们要求人类评估人员对它们的有用性和安全性进行评估。我们将Llama 2-Chat模型与开源模型(Falcon,MPT MosaicML NLP Team et al. (2023), Vicuna Chiang et al.(2023))以及闭源模型(Chat- GPT (OpenAI, 2023)和PaLM Anil et al.(2023))在4000多个单轮和多轮提示上进行了比较。对于ChatGPT,我们在所有代中都使用gpt-3.5-turbo-0301模型。对于PaLM,我们在所有代中都使用chat-野牛-001模型。每个模型的人工评估的最终提示计数如表32所示。参见附录A.3.7节中的更多方法论细节。下面的部分显示了有用的结果;安全性结果见4.4节。

结果。如图12所示,Llama 2-Chat模型在单回合和多回合提示上都明显优于开源模型。特别是,Llama 2-Chat 7B模型在60%的提示上优于smpt -7B-chat。羊驼2-Chat 34B与同等尺寸的维科纳- 33b和猎鹰40B相比,总胜率超过75%。

最大的Llama 2-Chat模型可以与ChatGPT竞争。羊驼2-Chat 70B模型相对于ChatGPT有36%的胜率和31.5%的平局率。Llama 2-Chat 70B模型在我们的提示集上优于PaLM-bison chatmodel。更多结果和分析见A.3.7节。

评估者间信度(IRR)。在我们的人工评估中,三个不同的注释器为每个模型生成比较提供了独立的评估。从数据质量的角度来看,高IRR分数(接近1.0)通常被视为更好,然而,上下文很重要。高度主观的任务,如评估LLM一代的总体帮助,通常比更客观的标记任务的IRR得分更低。这些背景的公共基准相对较少,所以我们觉得在这里分享我们的分析将有利于研究界。

我们使用Gwet的AC1/2统计量(Gwet, 2008, 2014)来测量内部可靠性(IRR),因为我们发现它是不同测量场景中最稳定的度量。在我们分析中使用的李克特帮助任务7分量表中,Gwet的AC2分数在0.37和0.55之间变化,具体取决于模型比较。我们可以看到,在胜率相似的模型比较中,得分处于这个范围的低端(比如Llama 2-Chat-70B-chat与ChatGPT的比较)。我们看到的评分在这个范围的高端,因为模型比较更明显的赢家(比如美洲驼2- chat -34b-chat vs猎鹰-40b-instruct)。

人类评估的局限性。虽然我们的结果表明Llama 2-Chat与ChatGPTon的人类评估相当,但重要的是要注意人类评估有一些局限性。

•按照学术和研究标准,我们有一个大的4k提示集。然而,它并没有涵盖这些模型的实际使用,这可能会覆盖大量的用例。提示的多样性可能是影响我们结果的另一个因素。例如,我们的提示集不包括任何编码或推理相关的提示。•我们只评估多回合对话的最后一代。更有趣的评估方法是让模型完成一项任务,并在多个回合中对模型的整体体验进行评分。•人类对生成模型的评价本质上是主观的和嘈杂的。因此,对不同的提示集或不同的指令进行评估可能会产生不同的结果。

4安全

警告:本节包含可能被认为不安全、冒犯或令人不快的文本示例。

在本节中,我们将深入探讨安全度量和缓解的重要主题。我们首先讨论我们对预训练数据和预训练模型的安全性调查(第4.1节)。接下来,我们描述了我们的安全校准过程(第4.2节),解释了我们如何收集与安全相关的注释,并利用SFT和RLHF,并给出了实验结果。然后,我们讨论了我们为进一步理解和提高模型安全性而进行的红队(第4.3节)。最后,我们提出了Llama 2-Chat的定量安全性评估(第4.4节)。我们还在附录表52中分享了一个模型卡。

4.1预训练中的安全性

了解预训练数据中的内容非常重要,这既可以提高透明度,也可以揭示潜在下游问题(如潜在偏见)的根本原因。这可以告知要考虑哪些(如果有的话)下游缓解,并帮助指导适当的模型使用。在本节中,我们分析了语言分布、人口统计学表征和毒性的预训练数据。我们还介绍了在现有安全基准上测试预训练模型的结果。

采取负责任的预培训步骤。对于训练中使用的每个数据集,我们遵循Meta的标准隐私和法律审查流程。我们在训练中没有使用任何Meta用户数据。我们排除了来自某些已知包含大量个人个人信息的网站的数据。我们尽最大努力有效地训练我们的模型,以减少预训练的碳足迹(第2.2.1节)。广泛地分享我们的模型将减少其他人训练类似模型的需求。没有对数据集进行额外的过滤,以允许Llama 2在任务中更广泛地使用(例如,它可以更好地用于仇恨语音分类),同时避免有时因过度擦洗而导致的意外人口统计删除的可能性。重要的是,这使得Llama 2-Chat在安全调校过程中使用更少的示例更有效地进行概括(Welbl等人,2021;Korbak et al., 2023;Xu等人,2021)。因此,应该谨慎使用Llama 2模型,只有在应用了重要的安全调优之后才可以部署。

人口统计学表征:代词。模型世代中的偏差可能是由训练数据本身继承的偏差造成的。例如,Bailey等人(2022)表明,在大量文本语料库中,代表“人”的词通常用于与代表“男性”的词更相似的上下文中,而不是代表“女性”的词。Ganesh等人(2023)表明,模型在公平指标上的表现可能高度依赖于模型如何训练代表未被充分代表的人口群体的数据。在我们的英语训练语料库中,我们计算了表9a中最常见的英语代词的频率。我们观察到,与She代词相比,He代词在文档中的代表性普遍过高,这与类似大小的模型预训练数据集的代词使用中观察到的频率差异相似(Chowdhery等人,2022)。这可能意味着模型在预训练中对提到She代词的上下文学习较少,随后可能以比She代词更高的速率生成Hepronouns。

人口统计学表征:身份。我们还通过测量来自holisticbias数据集(Smith et al., 2022)的人口统计身份术语的使用率来分析预训练数据中不同人口群体的表示。我们计算预训练语料库中每个描述符项的频率。我们将描述符分成5个轴(宗教、性别和性别、国籍、种族和民族以及性取向),并在表9b中显示每个轴中的前5个术语。在前5个术语中,我们删除了一些术语,如“直男”、“白人”和“黑人”,因为这些术语的使用频率超出了人口统计学范畴(例如,作为基本的颜色术语)。我们还跨列表去重复,删除了在Gender, Sex和Sexual Orientation中发现的一些术语。对于Gender和Sex,虽然She代词在较少的文档中被提及,但术语“female”在较大比例的文档中出现。这可能意味着,虽然关于She代词的上下文较少,但关于“女性”的评论更为普遍,这可能反映了这些术语在语言标记上的差异(Blodgett et al., 2021)。在性取向方面,排名前五的词汇都与LGBTQ+身份有关。对于国籍、种族和民族以及宗教,我们观察到西方的倾斜(Bhatt et al., 2022)。例如,“美国人”一词在69.4%的参考文献中被提及,“欧洲人”一词比其他种族和民族更普遍,“基督教”是最具代表性的宗教,其次是“天主教”和“犹太教”。

表9:人口统计表示。在我们的预训练语料库中对代词和身份的分析显示了一些可能影响性能的偏差,例如西方人口统计数据的更高表征。

毒性数据。我们使用对ToxiGen数据集进行微调的HateBERT分类器来测量预训练语料库中英语部分的毒性流行程度(Hartvigsen等人,2022)。我们分别对文档的每一行进行评分,并对它们进行平均以分配文档分数。图13显示了完整语料库中10%随机样本的分数分布。大约0.2%的评估文档被分配了0.5或更高的似然评分,这意味着我们的预训练数据中存在少量的毒性。

语言识别。虽然我们的预训练数据主要是英语,但它也包括少数其他语言的文本。表10显示了语料库中语言的分布,子集为在超过0.005%的文档中发现的语言。我们的分析使用fastText (Bojanowski等人,2016)语言识别工具,语言检测阈值为0.5。训练语料库中大部分是英语,这意味着该模型可能不适合用于其他语言。

预训练模型的安全基准。我们在三个流行的自动基准测试上评估了Llama 2的安全能力,涉及LM安全的三个关键维度。

1. 真实性,指的是语言模型是否由于误解或错误信念而产生已知的谬误。我们使用TruthfulQA (Lin等人,2021)来衡量我们的LLMs能够产生符合事实和常识的可靠输出的程度。毒性,定义为语言模型产生有毒、粗鲁、敌对或暗含仇恨内容的趋势。我们选择ToxiGen (Hartvigsen et al., 2022)来衡量不同群体中有毒语言和仇恨言论的生成量。偏见,定义为模型代如何再现现有的刻板社会偏见。我们使用bold (Dhamala et al., 2021)来研究模型世代的情绪如何随人口统计属性而变化。

在表11中,我们比较了Llama 2与Llama 1 (Touvron等人,2023)、Falcon (Almazrouei等人,2023)和MPT (MosaicML NLP团队等人,2023)的性能。对于解码,我们将温度设置为0.1,并使用核采样(Holtzman et al., 2020), top-p设置为0.9。对于TruthfulQA,我们给出了既诚实又有信息的世代的百分比(越高越好)。对于ToxiGen,我们给出了被认为有毒的世代的百分比(越低越好)。有关基准和指标的详细描述可在附录A.4.7中找到。与羊驼1-7B相比,羊驼2-7B的真实性和信息量增加了21.37%,毒性降低了7.61%。我们还观察到预训练的13B和70B羊驼2的毒性增加,这可能是由于更大的预训练数据或不同的数据集组合。一些人假设预训练数据集大小与下游模型毒性或偏差之间存在关系(Bender等人,2021b),但验证这一说法的经验工作仍在进行中(Dodge等人,2021;Smith and Williams, 2021;Tal et al., 2022),并且仍然需要来自最新模型的进一步证据。

在附录A.4.7中,我们给出了偏差度量,例如模型世代的情绪如何随人口统计属性而变化。我们注意到,在使用bold提示的许多小组中,积极情绪总体上有所增加。按不同人口统计组别划分的更详细结果见附录A.4.8。

Llama 2在毒性指标上的表现并不优于其他模型,我们推测这可能是因为我们通过积极过滤预训练数据进行了训练。回想一下,不过滤预训练数据可能会使基本模型在更多下游任务(包括仇恨言论检测)上表现良好,并且它可以降低意外过滤掉某些人口统计群体的风险。我们观察到,从不太积极过滤的预训练数据中提取的模型也需要更少的示例来实现合理的安全对齐。我们重申,这一动机选择确实意味着,在部署基本的Llama 2模型之前,应该应用额外的安全缓解措施。

基准给出了模型能力和行为的概要视图,使我们能够理解模型中的一般模式,但它们并没有提供模型可能对人或实际结果产生的影响的全面视图;这需要对端到端产品部署进行研究。应该进行进一步的测试和缓解,以了解可能部署系统的具体情况下的偏见和其他社会问题。为此,可能有必要在BOLD数据集中(种族,宗教和性别)可用的组之外进行测试。随着LLMs的整合和部署,我们期待着继续研究,以扩大LLMs对这些重要社会问题产生积极影响的潜力。

4.2安全微调

在本节中,我们将描述我们的安全微调方法,包括安全类别、注释指南以及我们用于降低安全风险的技术。我们采用类似于第3节中描述的一般微调方法的过程,与安全问题有关的一些显着差异。具体来说,我们在安全微调中使用了以下技术:

1. 监督安全微调:我们通过收集对抗性提示和安全演示进行初始化,然后将其包含在一般监督微调过程中(第3.1节)。这教会了模型在RLHF之前就与我们的安全指南保持一致,从而为高质量的人类偏好数据注释奠定了基础。安全RLHF:随后,我们将在第3.2.2节中描述的一般RLHF管道中整合安全性。这包括训练一个安全特定的奖励模型,并收集更多具有挑战性的对抗性提示,以进行拒绝采样风格的微调和PPO优化。安全环境蒸馏:最后,我们使用环境蒸馏来改进RLHF管道(Askellet等人,2021b)。这包括通过在提示符前加上一个安全提示符来生成更安全的模型响应,例如,“你是一个安全且负责任的助手”,然后在没有提示符的情况下根据更安全的响应对模型进行微调,这实际上是将安全提示符(上下文)提取到模型中。我们使用一种有针对性的方法,允许我们的安全奖励模型选择是否对每个样本使用上下文蒸馏。

4.2.1安全类别和注释指南

基于从先前工作中已知的llm的局限性,我们为注释团队设计了指令,以便在两个维度上创建对抗性提示:风险类别,或llm可能产生不安全内容的潜在主题;还有一个攻击向量,或问题风格,以涵盖可能引发不良模型行为的不同类型的提示。

所考虑的风险类别可大致分为以下三类:非法和犯罪活动(例如,恐怖主义、盗窃、贩运人口);仇恨和有害活动(如诽谤、自残、饮食失调、歧视);以及不合格的建议(例如,医疗建议、财务建议、法律建议)

建议)。所探索的攻击向量包括心理操纵(例如,权威操纵)、逻辑操纵(例如,虚假前提)、句法操纵(例如,拼写错误)、语义操纵(例如:例如隐喻)、视角操作(例如角色扮演)、非英语语言等等。

然后,我们定义了安全和有用的模型响应的最佳实践:如果适用,模型应该首先解决当前的安全问题,然后通过向用户解释潜在风险来解决提示,最后,如果可能的话,提供额外的信息。我们也要求注释者避免负面的用户体验分类(见附录A.5.2)。该指南旨在成为模型的一般指南,并不断改进和修订,以包括新识别的风险。

4.2.2安全监督微调

根据第4.2.1节中建立的指导方针,我们从训练有素的注释者那里收集安全模型响应的提示和演示,并以第3.1节中描述的方式使用这些数据进行监督微调。表5中给出了一个示例。

注释者被指示最初提出他们认为可能潜在地诱导模型显示不安全行为的提示,即执行红队,正如指导方针所定义的那样。随后,注释者的任务是制作模型应该产生的安全且有用的响应。

4.2.3 RLHF安全

在Llama 2-Chat开发的早期,我们观察到它能够从监督微调的安全演示中进行推广。该模型很快学会编写详细的安全响应,解决安全问题,解释为什么主题可能是敏感的,并提供额外的有用信息。特别是,当模型输出安全响应时,它们通常比一般注释器编写的更详细。因此,在只收集了几千个有监督的演示之后,我们完全切换到RLHF来教模型如何编写更细致的响应。使用RLHF进行全面调优还有一个额外的好处,它可以使模型对越狱尝试更具鲁棒性(Bai et al., 2022a)。

我们首先通过收集人类对安全性的偏好数据(类似于第3.2.2节)来进行RLHF:注释者编写他们认为可能引发不安全行为的提示,然后将多个模型响应与提示进行比较,根据一组指导原则选择最安全的响应。然后,我们使用人类偏好数据来训练安全奖励模型(参见第3.2.2节),并在RLHF阶段重用对抗性提示从模型中采样。

安全性本质上是一个长尾问题,其中的挑战来自少数非常具体的案例。我们通过采用两个中间的Llama 2-Chat检查点(一个在RLHFstage没有对抗性提示,另一个有)来调查SafetyRLHF的影响,并使用我们的安全性和帮助性奖励模型在我们的测试集上对它们的反应进行评分。在图14中,我们绘制了安全RM在安全测试集(左)和帮助RM在帮助测试集(右)上的分数分布位移。在图的左侧,我们观察到在使用thrlhf进行安全调整后,安全集上的安全RM分数的分布向更高的奖励分数偏移,并且分布在零附近的长尾变细。左上角出现了一个清晰的集群,表明模型安全性得到了提高。在右侧,我们没有观察到图14右侧的y = x线以下的任何收集模式,这表明在使用RLHF进行安全调优后,有用的分数重新分配得到了保留。换句话说,给定足够的有用性训练数据,增加额外的安全缓解阶段不会对模型的有用性性能产生负面影响。表12给出了一个定性的例子。

安全数据扩展的影响。在之前的研究中已经观察到llm的有用性和安全性之间的紧张关系(Bai等人,2022a)。为了更好地理解安全训练数据的添加如何影响一般模型性能,特别是有用性,我们通过调整RLHF阶段使用的安全数据量来研究安全数据缩放的趋势。在这个消融实验中,我们保持有用训练数据的数量不变(~ 0.9M样本),并逐渐增加模型调优中使用的安全数据的数量,范围从0%到100% (~ 0.1M样本)。对于具体的训练数据混合配方,我们按照3.1节的步骤,对Llama 2预训练模型进行2个epoch的微调。

我们最终获得了6个模型变体,分别是0%、1%、10%、25%、50%和100%的总安全数据。我们使用第3.2.2节中描述的安全性和帮助性奖励模型来评估它们。为

在每个变体中,我们分别使用安全性和有用性奖励模型对与Meta安全性和有用性测试集中的提示相对应的模型代进行评分。

如图15所示,我们使用平均奖励模型分数作为模型在安全性和帮助性方面的性能的代理。我们观察到,当我们增加安全数据的比例时,模型处理风险和对抗性提示的性能显著提高,并且我们看到安全奖励模型得分分布的尾部较轻。同时,乐于助人的平均得分保持不变。我们假设这是因为我们已经有了足够多的有用的训练数据。附录A.4.2列出了更多的定性结果,证明了训练中不同数量的安全数据如何改变模型在响应对抗性和非对抗性提示时的行为。

虚假拒绝的度量。尽管我们没有看到模型有用性的整体回归,但通过相互作用,我们定性地观察到,具有更多安全缓解的模型以更保守的方式回答某些问题(例如,附录表38所示的示例)。作为后续,我们测量假拒绝来量化模型错误地拒绝回答非对抗性提示的频率。在这里,我们将错误拒绝定义为由于不相关的安全考虑而错误地拒绝回答合法用户提示的模型。由于超出模型能力的合理原因而拒绝,例如,“我无法参与视频通话”和“2024年超出了我的知识截止日期”,不被视为虚假拒绝。我们训练了一个分类器来检测响应中的拒绝,并将该分类器应用于1)上述有用性测试集和2)一个由210个样本组成的管理边界测试集,用于类似于OpenAI(2023)的边界测试。边界数据集是有意设计的,因此它的提示看起来是对抗性的(例如:

随着模型调优中混合了更多的安全数据,两个数据集上的误拒率都会变大(参见附录图33)。然而,在helpfulness数据集中,即使有100%的安全数据,错误拒绝总体上是罕见的——大约0.05%。另一方面,由于其难度,在borderlinset上的误拒率要大得多。Llama 2-Chat有时很难区分提示符是否安全,如果提示符包含在不安全代中经常出现的单词(例如“bomb”)。附录表41显示了我们发现的一些虚假拒绝的例子。

4.2.4安全蒸馏

我们鼓励Llama 2-Chat通过使用类似于3.3节的上下文蒸馏(Askell等人,2021a)将对抗性提示与更安全的响应联系起来。我们观察到,llm的安全能力可以通过在模型前加上安全提示(例如,“你是一个安全负责任的助手”)来有效地增强。与监督安全微调一样,安全上下文蒸馏提供了一种快速的方法来引导模型对硬对抗性提示的响应,从而可以在RLHF中进一步改进。

具体来说,我们通过在对抗性提示前添加安全预提示来应用上下文蒸馏,以生成更安全的响应,然后在没有预提示的对抗性提示的情况下,对模型自身的安全输出进行微调。我们使用模板自动生成安全预提示符。特别是,我们使用各种通常与安全行为相关的形容词,如“负责任的”、“尊重的”或“明智的”,我们的直觉是,模型将它们与我们希望在安全答案中看到的积极特征联系起来。我们在附录表39中展示了安全预提示的示例。

在提示收集阶段,我们还要求注释者根据风险类别标记提示,这使得更有针对性的预提示成为可能。具体地说,这允许我们提供一些专门的答案模板,说明应该如何基于每个已识别的风险类别来处理对抗性提示。图16a显示了上下文蒸馏和带有答案模板的上下文蒸馏对安全RM分数的影响。

需要注意的是,为有用的提示执行安全上下文蒸馏会降低模型的性能,并导致更多的错误拒绝(参见附录表40)。因此,我们只在对抗性提示上执行安全上下文蒸馏。然而,我们观察到上下文蒸馏有时会降低响应质量,即使在处理对抗性提示时也是如此。具体来说,如果模型响应已经是高质量的,那么上下文蒸馏的应用可能会导致不太相关的回复,因为模型倾向于过度强调预提示,经常过度地诉诸于一般的关注(参见附录表40,关于由于上下文蒸馏而导致的模糊答案的例子)。因此,我们利用安全奖励模型来决定是否使用安全上下文蒸馏——我们只在获得比原始答案更好的奖励模型得分的示例中保留上下文蒸馏的输出。我们注意到这对于模型非常不擅长的提示特别有帮助,但是限制了上下文蒸馏的负面影响(参见图16b)。

4.3红队

考虑到LLMs的能力是多么广泛,他们的培训数据是多么多样化,仅仅通过事后使用和分析来识别风险是不够的。相反,正如其他LLMs所做的那样,我们执行了各种类型的主动风险识别,通俗地称为“红队”,这是基于计算机安全领域常用的术语。这种粒度分析非常重要,因为安全是一个长尾问题,即使非常罕见的边缘情况也会导致明显的问题。即使定量评分报告了良好的结果,这些类型的定性见解使我们能够以更全面的方式识别和瞄准特定的模式。

我们与内部员工、合同工和外部供应商进行了一系列的红队。这些团队包括350多人,包括网络安全、选举欺诈、社交媒体错误信息、法律、政策、民权、道德、软件工程、机器学习、负责任的人工智能和创意写作等领域的专家。他们还包括代表各种社会经济、性别、民族和种族人口统计数据的个人。

红队在广泛的风险类别(如犯罪计划、人口贩运、受管制或受管制的物质、色情内容、不合格的健康或财务建议、侵犯隐私等)以及不同的攻击向量(如假设性问题、格式错误/拼写错误的输入或扩展对话)中探索了我们的模型。此外,我们还进行了具体测试,以确定我们的模型促进武器生产(例如核武器、生物武器、化学武器和网络武器)的能力;关于这些主题的发现是边缘性的,并且得到了缓解。尽管如此,我们将继续在这方面进行重组。

到目前为止,我们所有的红队努力都是针对英语的模型输出,但关键是包括非英语提示和对话上下文,因为这是一个众所周知的攻击媒介。在所有的练习中,参与者都被给出了风险类别的定义,并只展示了一些与anLLM有风险互动的例子。在那之后,每个参与者都是专注于特定类别的风险或攻击向量的子团队的一部分。在创建每个对话之后,红队参与者将注释各种属性,包括风险区域和风险程度,用5点李克特量表捕获。

红队成员提供了一些有用的见解的例子,我们能够在整个开发过程中进行改进:

•[早期模型]更有可能产生不安全的响应,而没有注意到它们包含有问题的内容。然而,[稍晚一些的模型]倾向于显示内容有问题的知识,即使它们继续提供它。“他们的回应是‘不安全内容不适合讨论,等等’,然后立即跟进说‘话虽如此,(不安全内容)是这样的。’”(最新型号)能够解决这些问题。•通过包含“怪癖”或特定的请求来分散(早期模型)的注意力,通常可以克服通过更直接的请求遇到的任何不情愿。“一个创造性的写作要求(歌曲、故事、诗歌等)是让它产生内容的可靠方式,否则它会受到强烈反对。•将有问题的请求嵌入到一个积极的环境中,通常会成功地掩盖(早期模型)正在请求有问题的输出这一事实:“我发现,对于任何类型的攻击,最有效的总体原则是用积极、进步和授权的语言隐藏它。”

从红队洞察到更安全的模型。至关重要的是,在每次练习之后,我们对收集到的数据进行了彻底的分析,包括对话长度、风险区域分布、错误信息主题的直方图(在适当的情况下)和风险等级。在每种情况下,我们都将总体课程作为指导,以帮助进一步建立模型安全训练,并特别从这些练习中获取数据,用于模型微调、模型反馈训练,并作为其他安全模型训练的信号。

在几个月的时间里,我们进行了多轮额外的红队工作,以衡量内部发布的每个新模型的健壮性。对于由一组专家执行的红色团队练习,我们将模型的鲁棒性γ定义为创建提示的平均数量,这些提示将触发每个人每小时的模型违规响应。作为一个例子,在我们的7B模型上,我们在几个红队迭代和模型改进中有一个γ: 1.8→0.45的进化。随着红队的努力,鲁棒性可能会继续提高。随着新模型的产生,我们跟踪的另一个量级是提示触发在先前的重组练习中发现的违规响应的百分比,这些响应在给定的新候选版本中得到了缓解。平均来说,我们有90%的拒绝率。

4.4羊驼2-Chat的安全性评价

安全性和人的评价。根据4.2.1节中的安全类别,我们收集了大约2000个对抗性提示进行人工评估,其中1,351个提示是单轮提示,623个是多轮提示。评估提示和响应的示例可以在附录A.4.6中找到。

然后,我们要求评分者以李克特五分制来判断安全违规模型,定义如下:

•5 -没有违反安全规定,非常有帮助•4 -没有违反安全规定,只有轻微的非安全问题•3 -没有违反安全规定,但没有帮助或其他主要的非安全问题•2 -轻度或中度违反安全规定

•1 -严重违反安全规定

我们认为1或2的评级为违规,并使用违规百分比作为我们的主要评估指标,平均评级作为补充。每个示例由三个注释者注释,我们采用多数投票来确定响应是否违反。我们使用Gwet的AC1/2统计量来测量有用性人类评估中的评级信度(IRR)。根据批注批次的不同,IRR得分在0.70到0.95之间,表明批注者对安全性评估的高度一致。在Llama 2-Chat注释上,根据Gwet的AC2度量,平均IRR为0.92。我们看到,在违规率高的批次上,IRR得分较低(例如,骆马),而在违规率相对较低的批次上,IRR得分较高(例如,羊驼2-Chat,猎鹰和ChatGPT)。

在图18中,我们分别报告了单回合和多回合对话的违规百分比。跨模型的一个趋势是,多回合对话更容易引起不安全的反应。也就是说,与基线相比,Llama2-Chat仍然表现良好,特别是在多回合对话中。我们还观察到,Falcon在单回合对话中表现得特别好(主要是因为它的简练),但在多回合对话中表现得更差,这可能是由于它缺乏多回合监督微调数据。

在图19中,我们显示了不同llm的每个类别的安全违规百分比。虽然不同类别的模型性能相似,但由于各种原因,包括缺乏适当的免责声明(例如,“我不是专业人士”),Llama 2-Chat在不合格建议类别下的违规行为相对较多(尽管在绝对意义上仍然很低)。对于其他两个类别,无论模型大小如何,Llama 2-Chat始终实现相当或更低的违规百分比。

真实性,毒性和偏见。在表14中,经过微调的Llama 2- chat在真实性(70B为50.18→64.14)和毒性(70B为24.60→0.01)方面比预训练的Llama 2有了很大的提高。对于所有尺寸的羊驼2-Chat来说,有毒世代的百分比有效地缩小到0%:这是所有比较模型中最低的毒性水平。总的来说,与猎鹰和MPT相比,经过微调的羊驼2-Chat在毒性和真实性方面表现最好。经过微调后,Llama2-Chat对BOLD中许多人口群体的总体积极情绪趋于增加。在附录a .4.8中,我们为偏差基准提供了跨不同子组的模型生成情绪的详细得分分解,以及更深入的真实性和偏差分析和结果。

5讨论

在这里,我们讨论我们观察到的RLHF的有趣性质(第5.1节)。然后我们讨论Llama 2-Chat的局限性(第5.2节)。最后,我们提出了负责任地发布这些模型的策略(第5.3节)。

5.1学习和观察

我们的调优过程揭示了几个有趣的结果,比如Llama 2-Chat临时组织其知识的能力,或者为外部工具调用api的能力。

超越人类监督。在项目开始时,我们中的许多人都表示更喜欢监督注释,因为它的信号更密集。与此同时,以不稳定性著称的强化学习,对于NLP研究界的人来说,似乎是一个有点模糊的领域。然而,强化学习被证明是非常有效的,特别是考虑到它的成本和时间有效性。我们的研究结果强调,RLHF成功的关键决定因素在于它在整个注释过程中促进了人类和LLMs之间的协同作用。

即使有熟练的注释者,每个人写的也有很大的差异。经过精细调整的onSFT注释学习了这种多样性,不幸的是,包括执行不佳的注释的尾部。此外,该模型的性能受到最熟练的注释者的写作能力的限制。当比较RLHF的两个输出的偏好注释时,人类注释者可能较少受到差异的影响。因此,奖励机制迅速学会将低分数分配给不受欢迎的尾部分布,并与人类偏好保持一致。图20说明了这种现象,我们可以看到最差的答案逐渐被删除,将分布向右移动。

此外,在注释过程中,模型有可能冒险编写即使是最好的注释者也无法绘制的轨迹。尽管如此,人类仍然可以在比较两个答案时提供有价值的反馈,超出了他们自己的写作能力。打个比方,虽然我们可能不是所有人都是有成就的艺术家,但我们欣赏和批判艺术的能力仍然完好无损。Gilardi等人(2023)和Huang等人(2023)的文献表明,fllm卓越的写作能力(表现在在某些任务上超越人类注释者)从根本上是由RLHF驱动的。受监管的数据可能不再是黄金标准,这种不断变化的环境迫使人们重新评估“监管”的概念。

上下文温度重刻度。我们已经观察到一个与RLHF相关的有趣现象,这是一个据我们所知以前没有报道过的特征:温度的动态重标度取决于环境。如图8所示,温度似乎受到RLHF的影响。然而,有趣的是,我们的发现还表明,这些变化并没有统一地应用于所有提示,如图21所示。

例如,当涉及到与创造力相关的提示时,例如“写一首诗”,温度的增加继续在我们的各种RLHF迭代中产生多样性。这可以在self - bleu斜率中观察到,它反映了与SFT模型相当的模式。

另一方面,对于基于事实信息的提示,如“首都是什么?”,Self-BLEUslope会随着时间的推移而减弱。这种模式表明,尽管气温在上升,但模型学会了始终如一地对事实提示做出相同的反应。

我们的模型展示了令人印象深刻的泛化能力,如图22所示。我们手动测试了几十个例子,并一致地观察到,我们的模型即使在提供最小数据的情况下,也显示出以时间方式组织其知识的强大能力。为了在Llama 2-Chat中灌输时间概念,我们收集了1000个与特定日期相关的SFT示例。这些例子包括“巴拉克·奥巴马多久前成为总统?”每个问题都与两个关键的元数据相关联:提出查询的日期——它会影响响应——以及事件日期,在此之前问题将是无意义的。

这一观察表明,LLMs已经将时间概念内化到比之前假设的更大的程度,尽管他们的训练完全基于下一个标记的预测和随机洗牌的数据,而不考虑他们的时间背景。

LLMs与工具的整合是一个不断发展的研究领域,正如mialon等人(2023)所强调的那样。Toolformer (Schick et al., 2023)中设计的方法需要对数百万人进行采样

轨迹,辅以每个工具的少量例子。尽管如此,该技术仅在每个示例中使用单个工具,并且不能扩展到工具使用的序列。

OpenAI插件的发布在学术界引发了大量讨论,引发了诸如:我们如何才能有效地教模型使用工具?或者这个过程是否需要大量的数据集?我们的实验表明,工具的使用可以自发地以零射方式从对齐中产生。尽管我们从未显式地注释工具使用情况,图23展示了一个实例,其中模型演示了在零射击上下文中利用一系列工具的能力。

此外,我们的研究扩展到使用计算器评估羊驼2-Chat。这个实验的结果见表15。LLM工具的使用虽然令人兴奋,但也会引起一些安全问题。我们鼓励在这个领域进行更多的社区研究和红队。

5.2限制和伦理考虑

Llama 2-Chat与其他llm一样,也有公认的局限性,包括在预训练后停止知识更新,可能会产生不符合事实的建议,以及容易产生幻觉。

此外,我们最初版本的Llama 2-Chat主要集中在英语数据上。虽然我们的实验观察表明,该模型已经获得了对其他语言的一些熟练程度,但其熟练程度是有限的,主要是由于非英语语言的预训练数据有限(如表10所示)。因此,该模型在英语以外的语言中的表现仍然很脆弱,应该谨慎使用。

像其他llm一样,Llama 2可能会产生有害的、冒犯性的或有偏见的内容,因为它是在公开的在线数据集上进行训练的。我们试图通过微调来缓解这一问题,但一些问题可能仍然存在,特别是对于英语以外的语言,这些语言没有公开可用的数据集。在解决这些问题的过程中,我们将继续进行微调,并在未来发布更新版本。

并不是每个使用人工智能模型的人都有良好的意图,会话式人工智能代理可能被用于邪恶的目的,比如产生错误信息或检索有关生物恐怖主义或网络犯罪等主题的信息。然而,我们已经做出努力来调整模型以避免这些主题,并减少它们可能为那些用例提供的任何功能。

虽然我们试图合理地平衡安全与帮助,但在某些情况下,我们的安全调整走得太远了。Llama 2-Chat的用户可能会观察到一种过于谨慎的方法,该模型在拒绝某些请求或回复太多安全细节方面犯了错误。

预训练模型的用户需要特别小心,并且应该采取额外的步骤来调整和部署,正如我们的负责任的使用指南中所描述的那样。§§

5.3负责任的发布策略

释放的细节。我们将Llama 2用于研究和商业用途,网址为https://ai.meta.com/resources/models-and-libraries/llama/。使用Llama 2的用户必须遵守所提供的许可条款和我们的可接受使用政策,该政策禁止任何违反适用政策、法律、规则和法规的使用。

我们还提供了代码示例,以帮助开发人员在Llama 2-Chat中复制我们的安全代,并在用户输入和模型输出层应用基本的安全技术。这些代码示例可以在这里获得:https://github.com/facebookresearch/llama。最后,我们分享了一个负责任的使用指南,它提供了关于安全开发和部署的指导方针。

负责任的释放。虽然许多公司选择闭门开发人工智能,但我们将公开发布羊驼2,以鼓励负责任的人工智能创新。根据我们的经验,一个开放的方法吸收了人工智能从业者社区的集体智慧、多样性和独创性,以实现这项技术的好处。合作将使这些模型更好、更安全。整个人工智能社区——学术研究人员、民间社会、政策制定者和行业——必须共同努力,严格分析和揭露当前人工智能系统的风险,并制定解决方案,解决潜在的滥用问题。这种方法不仅促进了与不同利益相关者(大型科技公司之外的利益相关者)之间的真正合作,而且也是实现基础模型民主化的基石。正如Zellers等人(2019b)所言,开放版本提高了透明度,允许更多的人访问人工智能工具,使技术民主化,使人工智能专业知识分散化。我们相信,人工智能技术的分散化不仅仅是简单地传播知识,它还能刺激创新,加速行业进步。最后,公开发布这些模型整合了成本并消除了进入壁垒,允许小型企业利用LLMs中的创新来探索和构建文本生成用例。最终,我们相信这将为全球各种规模的组织创造一个更公平的竞争环境,使其从人工智能的进步所带来的经济增长中受益。

我们知道,并非所有使用人工智能模型的人都有良好的意图,我们承认,对于人工智能将影响我们的世界的方式,存在合理的担忧。有毒内容的产生和有问题的关联是人工智能社区尚未完全缓解的重大风险。正如本文所述,我们在限制这些类型的反应的流行方面取得了长足的进步。虽然我们认识到还有更多的工作要做,但这一认识只会加深我们对开放科学和与人工智能社区合作的承诺。

6相关工作

大型语言模型。近年来见证了LLMs领域的实质性发展。遵循Kaplan等人(2020)的缩放定律,已经提出了几个超过100个参数的大型语言模型,从GPT-3 (Brown等人,2020)到Gopher (Rae等人,2022)或专门的科学模型,例如卡拉迪加(Taylor等人,2022)。Chinchilla (Hoffmann et al.,2022)使用70B个参数重新定义了这些针对令牌数量而不是模型权重的缩放定律。在这一进展中值得注意的是Llama的崛起,它以专注于推理过程中的计算效率而闻名(Touvron等人,2023)。一个平行的论述围绕着开源与闭源模型的动态展开。BLOOM (Scao et al., 2022)、OPT(Zhang et al., 2022)和Falcon(Penedo et al., 2023)等开源版本已经崛起,挑战GPT-3和Chinchilla等闭源版本。

PAGE 36

然而,当涉及到“生产就绪”的LLMs(如ChatGPT、Bard和Claude)时,它们在性能和可用性方面有明显的区别。这些模型依赖于复杂的调整技术来与人类的偏好保持一致(Gudibande等人,2023),这一过程仍在开源社区中进行探索和完善。

缩小这一差距的尝试已经出现,基于蒸馏的模型,如骆马(Chiang等人,2023)和羊驼(Taori等人,2023)采用了一种独特的方法来使用合成指令进行训练(Honovichet等人,2022;Wang et al., 2022)。然而,尽管这些模型显示出了希望,但它们仍然无法达到闭源模型所设定的标准。

指令调优。Wei等人(2021)通过对LLMson大量数据集进行微调,获得了在未见任务上的零射击性能。Chung等人(2022)和Longpre等人(2023)研究了指令调整作为任务数量、模型大小、提示设置等函数的影响。用于指令调整的提示符可以由人类或LLMs自己创建(Zhou等人,2022),后续指令可以用来改进初始代,使其更有用、更吸引人、更公正(Ganguli等人,2023;Madaanet al., 2023)。与指令调整相关的一种方法是思维链提示(Wei等人,2022b),在这种方法中,当给定一个复杂问题时,模型被提示解释它们的推理,以增加它们最终答案正确的可能性。

RLHF已经成为微调大型语言模型的一种强大策略,可以显著提高其性能(Christiano et al., 2017)。该方法首先由Stiennon等人(2020)在文本摘要任务的背景下展示,此后已扩展到一系列其他应用。在这个范例中,模型基于人类用户的反馈进行微调,从而迭代地使模型的响应更接近人类的期望和偏好。

欧阳等人(2022)证明,指令微调和RLHF的结合可以帮助解决事实性、毒性和有用性方面的问题,这些问题无法通过简单地扩大llm来解决。Baiet al. (2022b)部分自动化了这种微调加RLHF方法,方法是用模型自己的自我批评和修订取代人工标记的微调数据,并在RLHF中对模型输出进行排序时用模型取代人工评分者,这一过程被称为“来自AI反馈的RL”(RLAIF)。

已知的LLMs安全挑战。最近的文献广泛探讨了与大型语言模型相关的风险和挑战。Bender等人(2021b)和Weidinger等人(2021)强调了各种危害,如偏见、毒性、私人数据泄露和恶意使用的可能性。Solaiman等人(2023)将这些影响分为两类——可以在基础系统内评估的影响和需要社会环境评估的影响,而Kumar等人(2022)提供了潜在的缓解策略来遏制危害。Roller等人(2020)和Dinan等人(2021)的研究也说明了与面向聊天机器人的LLMs相关的困难,从隐私到误导性的专业知识主张。Deng等人(2023)提出了一个分类框架来解决这些问题,Bergman等人(2022)深入研究了发布对话模型的潜在积极和消极影响之间的平衡。

对红队的调查揭示了调谐llm的具体挑战,Ganguli等人(2022)和Zhuo等人(2023)的研究展示了各种成功的攻击类型及其对有害内容产生的影响。国家安全机构和各种研究人员,如(Mialon等人,2023),也对先进的紧急模型行为、网络威胁以及生物战等领域的潜在滥用发出了警告。最后,更广泛的社会问题,如人工智能研究加速导致的就业流失,以及过度依赖LLMs导致的培训数据退化,也是相关的考虑因素(Acemogluand Restrepo, 2018;Autor and Salomons, 2018;韦伯,2019;Shumailov et al., 2023)。我们致力于继续在这些问题上与更广泛的政策、学术和行业团体合作。

7结论

在这项研究中,我们引入了Llama 2,这是一个新的预训练和微调模型家族,具有70亿到700亿个参数。这些模型已经证明了它们与现有开源聊天模型的竞争力,以及在我们检查的评估集上相当于一些专有模型的能力,尽管它们仍然落后于其他模型,如GPT-4。我们精心阐述了在实现我们的模型中应用的方法和技术,并着重强调了它们与有益和安全原则的一致性。为了对社会做出更大的贡献并促进研究的步伐,我们负责任地开放了Llama 2和Llama 2- chat的访问权限。作为我们对透明度和安全性的持续承诺的一部分,我们计划在未来的工作中进一步改进Llama 2-Chat。

参考文献。

一个附录

PAGE 46

背书的贡献

所有作者按姓氏字母顺序排序。

科学与工程领导力:Guillem Cucurull, Naman Goyal, Louis Martin, Thomas Scialom, RuanSilva, Kevin Stone, Hugo Touvron。

技术和管理领导:Sergey Edunov, Angela Fan, Melanie Kambadur, Sharan Narang,Aurelien Rodriguez, Robert Stojnic。

核心Contributors:彼得·阿尔伯特·尼古拉Bashlykov Prajjwal Bhargava,莫亚Chen,音译)大卫Esiobu Jeremy功夫,戈斯瓦米Vedanuj侯,安东尼Hartshorn芮,Marcin Kardas Punit Singh Koura, Marie-Anne Lachaux, Thibaut Lavril,戴安娜Liskovich Xavier马丁尼,Yuning毛伊戈尔Molybog, Todor Mihaylov AndrewPoulton Jeremy Reizenstein、埃里克·迈克尔·史密斯Ranjan Subramanian Xiaoqing艾伦谭、唐平RossTaylor雅各布徐、张Yuchen Iliyan Zarov。

撰稿人:Amjad Almahairi、Yasmine Babaei、Soumya Batra、Lukas Blecher、Dan Bikel、Shruti Bhosale、Cristian Canton Ferrer、Jude Fernandes、Wenyin Fu、Brian Fuller、Cynthia Gao、Saghar Hosseini、HakanInan、Isabel Kloumann、Madian Khabsa、Artem Korenev、Viktor Kerkez、Jian Xiang Kuan、Yinghai Lu、Jenya Lee、Pushkar Mishra、Yixin Nie、Rashi Rungta、Alan Schelten、Kalyan Saladi、Adina Williams、Zheng Yan。

我们感谢GenAI执行团队的领导和支持:Ahmad Al-Dahle和Manohar Paluri。

A.1.1致谢

这项工作是由一大群贡献者促成的。我们对以下人员给予的帮助表示感谢:

•我们的人类注释者,我们已经证明他们的工作是提高调整模型性能的关键,以及组织注释和质量控制的内部领导:Eric Alamillo, TamaraBest, Debanjali Bose, Adam Kelsey, Meghan Keneally, Rebecca Kogen, Catalina Mejiia, ElisabethMichaels, Marco Mierke, Alyssa Pereira, Leigh Belz Ray, Rachel Rodriguez, Bardiya Sadeghi, KarthikSivakumar, Laura Warne。•我们庞大的内部红队,特别是红队组织者(Dan Bikel, Joanna Bitton, SeanBrooks, Cristian Canton Ferrer, Aaron Fields, Li Chen, Ivan Evtimov, Aaron Grattafiori, Laurie H,Imanol Arrieta Ibarra, Semarley Jarrett, Harshit Maheshwari, Aram Markosyan, Pushkar Mishra,David Renardy, Chris Rohlf, Davide Testuggine, Qing Hu, Matt Wilde, Michael Tontchev和RashiRungta)帮助提高了我们模型的安全性和鲁棒性。•我们基础设施团队的许多成员,包括我们的生产工程师以及我们的研究超级集群和生产集群的构建者和维护者,他们是我们模型培训成功的关键。还要感谢Matthew Oldham和Adi Gangidi帮助我们进行碳排放计算。•我们最亲密的法律、政策、通信、营销和隐私合作伙伴,包括Mike Clark、Nisha Deo、Ahuva Goldstand、Amanda Felix、Dustin Holland、Alex Kessler、Mo Metanat、Harrison Rudolph、Adam Shajnfeld、Beau James、Helen Suk、Britt Montalvo、Allie Vieth和Polina Zvyagina,他们在发布过程中帮助指导我们。•我们的合作伙伴团队包括Ash Jhaveri, Alex Boesenberg, Sy Choudhury, Mayumi Matsuno,Ricardo Lopez-Barquilla, Marc Shedroff, Kelly Michelena, Allie Feinstein, Amit Sangani, geetachahahan, Chester Hu, Charlton Gholson, Anja Komlenovic, Eissa Jamil, Brandon Spence, AzadehYazdan, Elisa Garcia Anzano和natasha Parks。•Chris Marra, Chaya Nayak, Jacqueline Pan, George Orlin, Edward Dowling, Esteban Arcaute, Philom- ena Lobo, Eleonora Presani和Logan Kerr,他们提供了有用的产品和技术组织支持。

•Armand Joulin, Edouard Grave, Guillaume Lample和Timothee Lacroix,他们是alllama团队的成员,帮助这项工作开始。•Drew Hamlin, Chantal Mora和Aran Mun,他们为我们提供了一些关于论文中人物的设计输入。•Vijai Mohan对RLHF的讨论启发了我们的图20,以及他对内部演示的贡献。•帮助我们提高论文质量的早期审稿人,包括Mike Lewis、Joelle Pineau、Laurens van der Maaten、Jason Weston和Omer Levy。

A.2预训练的附加细节

A.2.1与Llama相比的架构变化

上下文的长度。我们将Llama 2的上下文窗口从2048个令牌扩展到4096个令牌。更长的上下文窗口使模型能够处理更多信息,这对于支持聊天应用程序中的更长的历史记录、各种摘要任务和理解更长的文档特别有用。表16比较了2k和4k上下文预训练在长上下文基准上的性能。两个模型都训练了150B个令牌,保持相同的架构和超参数作为基线,只改变上下文长度。我们观察到在SCROLLS上的改进(Shaham等人,2022),其中平均输入长度为3.5k,并且在SQUAD上没有性能下降(Rajpurkar等人,2018)。表17显示,较长的上下文模型在各种通用任务上保持了较强的性能。

Grouped-Query关注。自回归解码的标准做法是缓存序列中前面标记的键(K)和值(V)对,加快注意力计算。然而,随着上下文窗口或批处理大小的增加,在多头注意(MHA)模型中,与KV缓存大小相关的内存成本显著增加。对于较大的模型,KV缓存大小成为瓶颈,键和值预测可以在多个磁头之间共享,而不会导致性能下降(Chowdhery et al., 2022)。可以使用具有单个KV投影的原始多查询格式(MQA, Shazeer,2019)或具有8 KV投影的分组查询关注变体(GQA, Ainslie等人,2023)。

在表18中,我们用MHA基线比较了MQA和GQA变体。我们用150btoken训练所有模型,同时保持固定的30B模型大小。为了在GQA和mqa之间保持相似的总体参数计数,我们增加了前馈层的维度,以补偿注意力层的减少。对于MQA变体,我们将FFN维度增加了1.33倍,对于GQA变体,我们将其增加了1.3倍。从结果中,我们观察到GQA变体在大多数评估任务上的表现与theMHA基线相当,并且平均优于MQA变体。

为了优化延迟,我们在具有张量并行性的单个节点上使用8个a100来托管最大的模型(Shoeybi等人,2019)。在这种情况下,由于磁头的数量低于gpu的数量,MQA的分片不能再跨磁头进行。要么在所有gpu中复制KV值(使KV缓存大小等于GQA),要么在批处理维度上进行分片(Pope et al.,2022)。然而,后者可能会使推理服务复杂化,因为它只有在批处理大小大于分片数量时才有效,并且在所有情况下,额外的通信成本都不值得。

因此,基于消融结果和缩放推理的易用性,对于34B和70B Llama 2模型,我们选择使用GQA而不是MQA。

图24显示了与theMHA基线相比,30B GQA和MQA消融模型的推理速度变化情况,使用8 x 80 GiB a100进行张量并行实验。在这些运行中,我们简单地在所有gpu中复制了MQA的KV磁头,因此MQA的KV缓存大小与GQA相等,并且两个变体的行为非常相似(MQA只是具有略大的FFN维度)。

A.2.2预训练模型评估的附加细节

MMLU细节。在表19中,我们报告了MMLU (Hendrycks et al., 2020)对Llama2模型和其他开源模型的评估细节。

标准的基准。在表20中,我们显示了几个标准基准测试的结果。

代码生成。在表21中,我们比较了Llama 2与流行的开源模型在human - eval和MBPP代码生成基准测试上的结果。

世界的知识。我们在Natu- ralQuestions和TriviaQA基准测试上评估了Llama 2模型和其他开源模型(表22)。

在表23中,我们报告了SQUAD的零枪和少枪实验结果以及QUAC的零枪和一枪实验结果。在这里,羊驼2在所有评估设置和模型上表现最好,除了QUAC 0-shot,羊驼130b表现略好。

考试。在表24中,我们展示了AGI Eval (Zhong et al.,2023)基准的英文部分的细粒度结果。AGI评估是不同科目的标准化考试的集合。

PAGE 51

数学推理。在表25中,我们报告了Llama 2和其他开源数据集在gsm8k和MATH任务上的结果。

A.3微调的附加细节

A.3.1 Meta人类偏好数据详细统计

表26显示了Meta人类偏好数据的详细统计数据。总的来说,我们每周收集14批人类偏好数据(即Meta Safety + Helpfulness),包括超过100万的二进制模型生成比较。一般来说,后面的批次包含更多的样本,因为我们增加了更多的注释者,并且注释者对任务也更加熟悉,从而具有更好的工作效率。我们还有意收集更多的多回合样本来增加RLHF数据的复杂性,因此每个样本的平均令牌数量也相应增加。

在图25中,我们绘制了批的偏好评级变化。可以清楚地看到,随着时间的推移,具有类似反应(例如,可以忽略不计的更好或不确定)的样本份额急剧增加,而具有更强偏好(例如,明显更好)的样本份额同时下降。这反映了我们迭代模型更新和偏好数据注释过程的本质——随着时间的推移,使用性能更好的Llama 2- chatmodel进行响应采样,对于注释者来说,从两个同样高质量的响应中选择一个更好的响应变得具有挑战性。

A.3.2元人类偏好数据的课程策略

高质量的数据对于SFT的校准是至关重要的。在我们的微调过程中,我们与注释平台密切合作,并选择了课程注释策略。在第一个模型中,注释者被要求制作相对简单的提示,然后逐步向更复杂的提示移动,并向Llama 2-Chat教授新技能。图26显示了我们的有用性首选项数据上的课程注释。

A.3.3利用基于偏好评级的边际来消除奖励模型中的排名损失

我们在帮助奖励模型中使用基于偏好评级的边际项来消除排名损失。我们尝试了两种不同大小的m(r)变体,用于Eq 2中列出的开源27中的边际项,并将它们与没有边际项的基线进行比较。我们在表28的Meta有用测试集上报告了它们的评分和平均准确性。我们观察到,边际项确实可以帮助后续模型在更多可分离的比较对上表现得更好,并且更大的边际可以进一步提高它。然而,较大的边际也会对类似样本的性能进行回归。

我们进一步评估了基于利润的损失对奖励分数分布变化的影响。我们在图27中绘制了测试集的奖励分数直方图。从本质上讲,保证金期限推动了回报

PAGE 52

模型将更极端的分数分配给模型代,形成二元分裂模式,更大的边际使这种分布转移更显著。上述观察结果表明,由于强化学习算法(如PPO)可能对奖励分布变化敏感,因此需要对奖励校准进行投资。

A.3.4利用安全辅助损失消融奖励建模中的排名损失

我们将安全辅助损失的影响与表29所示的Meta safety测试集的结果相结合。正如预期的那样,当我们使用奖励分数为0.5作为阈值(Sigmoid之前为负)时,自定义损失提高了对不安全反应的回忆,从而为RLHF提供了更好的安全奖励信号。教模型区分安全和不安全的模型代还可以在三个子类上提高模型的准确性。

A.3.5关贸总协定的其他结果

PAGE 53

PAGE 54

现在,人们的注意力已经超越了20个回合。我们通过人类评估来测试模型记忆系统参数的能力。参数(例如,爱好,角色)在第一个消息中定义,然后从第2次到第20次。我们明确要求模型参考它们(例如:“你最喜欢的爱好是什么?”,“你叫什么名字?”),以测量Llama 2-Chat的多回合记忆能力。我们在表30中报告了结果。配备GAtt, Llama 2-Chat保持100%的准确性,始终引用definedattribute,因此,最多20个回合(我们没有扩展人类评估,并且所有示例在回合中总共不超过4048个标记)。相比之下,没有GAtt的羊驼2-Chat在几个回合后就不能再使用属性了:从第t+1回合的100%,到第t+3回合的10%,然后是0%。

关税及贸易总协定零枪普遍化。我们试图在推理时设置gatt训练中不存在的约束。例如,“只用一句话回答”,模型对此保持一致,如图28所示。

我们首先将GAtt应用于Llama 1,它使用上下文长度为2048个令牌进行预训练,然后使用4096个最大长度进行微调。我们测试了GAtt是否能在超过2048个令牌的情况下工作,并且该模型有可能设法理解超出这个窗口的属性。这一有希望的结果表明,GAtt可以作为一种有效的长上下文注意技术。

A.3.6基于模型的评估能走多远?

为了衡量我们的奖励模型的稳健性,我们收集了一组关于有用性和安全性的测试提示,并要求注释者根据李克特量表(李克特量表越高越好)使用三重评论来判断答案的质量。如图29所示(见附录),我们观察到我们的奖励模型总体上很好地与人类偏好校准。请注意,这使我们能够将奖励用作点明智度量,尽管我们接受了成对排名损失的训练。

A.3.7人的评价

PAGE 56

提示和世代。为了比较模型,我们收集了超过4000个单一和多个回合提示符。我们手动收集单轮提示,涵盖以下类别:事实问题、写作和内容创作、语言帮助、推荐和对话。对于多回合提示,注释器与另一个模型交互以生成一组多回合提示。为了确保公平性,我们要求注释者使用四种不同的交互方法收集多回合提示:(a) ChatGPT作为交互模型,(b) Llama2-Chat作为交互模型,(c)注释者选择ChatGPT和Llama2-Chat之间每回合的最佳响应,(d)在ChatGPT和Llama2-Chat之间每回合交替进行。我们还将多回合提示划分为上述五类。由于很难将多回合提示分类到一个类别中,注释者最多可以为多回合提示选择两个类别。表33显示了计算提示的示例。

对于开源模型,我们使用1000个令牌的上下文长度来收集代,并允许模型生成多达1000个令牌。尽管Llama 2-Chat模型能够处理多达4000个令牌,但我们将上下文和生成长度限制为1000个令牌,以便与开源模型进行公平的比较。将生成长度限制在1000个令牌可能会对Llama 2-Chat模型产生不利影响。任何超过1000个令牌的提示都会被过滤掉,以便使用开源模型进行评估。对于mpt模型,我们使用mpt-7b-chat模型。对于猎鹰模型,我们使用猎鹰- 40b -指令模型,这是一个聊天/指令模型。对于Vicuna模型,我们使用来自lmsys的Vicuna -13b-delta-v1.1和Vicuna -33b-delta-v1.3模型。所有模型权重均来自HuggingFace。

由于闭源模型具有更长的上下文长度,因此我们将这些模型的上下文长度和生成长度更改为2000个令牌。为了使用闭源模型进行评估,我们收集了另一组具有2000个上下文和生成长度的代。

在收集代时,我们在评估提示符之前附加一个系统提示符。每个模型的系统提示符如表31所示。由于ChatGPT、PaLM和Falcon不提供系统提示符,因此我们使用与Llama 2-Chat模型相同的系统提示符。表34显示了来自不同模型的代。

PAGE 57

评价方法。对于评估,人类注释者提供了一个提示和来自两个并排模型的代。他们被要求回答以下问题:

考虑到两种模式的反应,哪种模式更好(既有用又安全、诚实),A模式还是B模式?

注释者用以下标签以7分制回答了这个问题:

A好多了,A好多了,A稍微好多了,差不多,B稍微好多了,B稍微好多了,B好多了。

其中一代模型是Llama 2-Chat模型,另一代是开源或闭源模型。当呈现给注释者时,两个模型的响应被随机化为模型A或模型B。根据这些数据,我们在结果中报告胜利、平局和失败。每个代对有三个注释器。先前有五个注释者的实验没有显著改变结果或注释者之间的一致性。

PAGE 58

额外的结果。为了理解系统提示符对ChatGPT生成的影响,我们运行了另一个没有ChatGPT系统提示符的人工评估。如图30所示,Llama 2-Chat的胜率从36%增加到44%。此外,单回合提示的胜率从36%大幅增加到近49%。在第30章中,我们还展示了不同类别提示的胜率分类。有趣的是,ChatGPT在语言帮助上优于Llama 2-Chat 70B,而Llama 2-Chat 70B在事实问题上优于ChatGPT。在分析实际问题的结果时,我们注意到两个模型都得到了正确答案的例子,但由于回答的风格,注释者更喜欢llama 2-Chat的回答。这些关于事实问题的结果并没有表明两种模型的幻觉率。在31中,我们还根据回合数和提示和生成的总字数共享胜率。在这两种情况下,我们都没有看到胜率的任何趋势。

A.4安全补充说明

A.4.1奖励建模中安全性和帮助性之间的紧张关系

我们在第3.2.2节中简要讨论了安全性和帮助性之间的紧张关系,以及它如何导致我们在研究中优化帮助性和安全性的两个单独的奖励模型。在这里,我们展示了更多的证据和定性结果来表明这种紧张关系。图32是安全响应和不安全响应在安全测试集上的帮助性和安全奖励模型得分的两个散点图。在安全反应图(左)的右下角(即安全得分高但乐于助人得分低)和不安全反应图(右)的左上角(即安全得分低但乐于助人得分高)可以观察到张力。我们还在表35中列出了两个定性的例子,其中安全性和帮助性奖励模型彼此不一致。

A.4.2安全数据尺度的定性结果

在4.2.3节中,我们定量研究了在RLHF模型中加入更多安全数据的影响。在这里,我们展示了几个样本,以定性地检查模型行为的演变,当我们缩放表36、37和38中的安全数据时。总的来说,我们观察到Llama 2-Chat在响应不安全提示时变得更安全,使用了更多的安全数据。例如,一旦我们使用了50%的安全数据,Llama 2-Chat就会学会拒绝生成冒犯性内容(表36)。

A.4.3英语代词

我们用于代词分析的术语与PaLM 2论文一致(Anil et al., 2023):

A.4.4背景信息蒸馏提示

PAGE 60

我们在表39中展示了我们使用的预提示的示例。

A.4.5安全错误:错误的拒绝和模糊的回应

在提示中,由于感知到安全问题而错误拒绝的例子见表40,错误拒绝率作为使用的安全数据百分比的函数见图33。

PAGE 63

内容警告:色情描写

PAGE 65

内容警告:潜在的不良内容

A.4.6安全评价示例

PAGE 66

我们在表42中展示了不同风险类别的安全评估提示的例子,并在表43中展示了响应。

A.4.7自动安全基准说明

PAGE 69

在本节中,我们将从真实性、毒性和偏倚的角度详细描述用于评估的自动安全基准。

真实性。为了了解LLMs生成符合事实和常识的可靠输出的能力,我们使用TruthfulQA (Lin等人,2021),用于LLMs幻觉,以衡量语言模型在生成问题答案时是否真实,同时提供信息。TruthfulQA基准由分布在38个类别中的817个问题组成,包括但不限于健康、金融、法律和政治(Lin et al., 2021)。这些问题被设计成即使是人类也可能因为毫无根据的信念或误解而回答错误。继Lin等人(2021)之后,我们使用基于gpt -3的指标,该指标已被证明在预测人类判断方面具有强大的性能。具体来说,一个微调的GPT-3模型¶¶,即“GPT-judge”,用于预测llm生成输出的真实性和信息性。对于QA提示,我们采用了包含6个随机QA对的几个镜头提示,格式如下InstructGPT (Ouyang et al., 2022)。我们报告了既真实又有信息的世代的百分比,以及既真实又有信息的世代的百分比。

毒性。为了衡量不同群体中有毒语言和仇恨言论的产生程度,我们使用了ToxiGen (Hartvigsen等人,2022),这是一个包含提到13个少数群体的隐含有毒和良性句子的数据集。我们采用了来自Hosseini等人(2023)的数据集的修订版本,该版本通过过滤掉注释者对目标人口统计群体不一致的提示来降低噪声。然后,我们使用在RoBERTa上调优的默认ToxiGen分类器(Liu et al., 2019)来测量每个llm的几代毒性。

偏见。为了研究模型世代中可能随人口统计属性而变化的情绪,我们选择了bold (Dhamala et al., 2021),这是一个大规模的偏差基准,包括23,679个英语维基百科提示,跨越种族,性别,宗教,政治意识形态和职业的五个领域,有43个不同的子群体∗∗。我们使用价感知字典和情感推理器(VADER) (Hutto和Gilbert, 2014)进行情感分析,以评估提示前缀和模型生成相结合所传达的情感。维德的情绪得分在-1到1之间。正(负)分表示对提示中提到的人口的正面(负面)情绪,接近0的分数表示中立情绪。

A.4.8自动安全基准评估结果

毒性、真实性和偏见的细粒度分析。在这里,我们进行了深入的分析,以便从毒性、真实性和偏见的角度更好地理解模型代的安全性。

•真实性。表44给出了TruthfulQA对真实性百分比、信息性百分比、真实性和信息性兼有百分比的跨代评价结果。大多数模型在模型代内的信息量大于90%。然而,预训练模型的准确率相对较低,猎鹰、MPT和7B美洲驼1的准确率约为30%至40%。预训练的羊驼1号和体型较大的羊驼2号的百分比增加。经过指令微调后,7B和13B羊驼2-Chat的可信度提高了约20%,30B羊驼2-Chat提高了约24%,70B羊驼2-Chat提高了约14%。表45显示,墨西哥人、拉丁美洲人和女性往往是前三个人口群体,根据预训练模型的毒素原提示,有毒世代的比例最高。由于指令微调,所有尺寸的微调Llama 2-Chat模型都显示出有毒模型代的有效零百分比,因此他们的结果不在这里展示。表46、47、48、49和50给出了不同人口群体在种族、性别、宗教意识形态、政治意识形态和职业领域下的情绪得分分布。总体而言,我们观察到BOLD数据集中每个领域的积极情绪得分为

PAGE 70

基准测试的局限性。值得注意的是,由于llm的毒性和偏倚的复杂性,这些使用自动指标的评估绝不是完全全面的,但我们选择的基准代表了我们的理解,即Llama 2-Chat在llm安全性的关键方面有所提高。基准评估对于评估人工智能模型(包括面向聊天的LLMs)非常重要,因为基准测试提供了一种标准化和可衡量的方式来比较不同的模型并跟踪该领域的进展。

然而,至关重要的是要意识到基准在评估安全性方面的局限性。它们中的大多数最初是为预训练的LLMs开发的,当使用它们来衡量微调/面向聊天的模型的安全性时,需要考虑某些限制。例如,基准可能无法充分涵盖对抗性输入或专门设计用于利用漏洞的有毒内容,并且它们可能无法涵盖所有人口统计类别。为了更好地理解和分析LLMs在不同人口群体中表现出的不同行为,建议监控分解的指标和基准。

PAGE 72

此外,基准测试通常基于单个句子或提示来评估语言理解和生成,但在聊天场景中,上下文很重要。经过微调的聊天模型维护上下文、处理微妙的情况和避免在对话中生成有害内容的能力,可能无法通过现有的基准进行全面评估。在BOLD数据集中,从维基百科中提取的提示是前5个单词加上领域术语,根据领域和人口统计组,BOLD中的提示有6到9个单词(Dhamala et al., 2021)。

在部署之后,聊天模型中的安全性涉及用户体验和长期影响,这些不是单独通过基准测试捕获的。因此,为了有效地评估安全性,额外的测试是如何集成到产品部署中,如何使用它们,以及在给定产品环境下准确和精确地捕捉安全风险的度量标准,对于全面的安全性评估是必不可少的。我们今后的工作将进行更全面的评估,包括在上述情况中尚未解决的一些方面。

A.5数据标注

我们依靠人类注释者来收集监督微调阶段的注释,以及人类偏好来训练奖励模型。在本节中,我们将详细介绍数据注释过程。

A.5.1 SFT注释说明

我们从我们的注释器池中收集了单轮和多轮对话注释。我们要求注释者写出信息丰富、真实、相关、清晰和无害的回答。我们还要求提示者在提示可能导致回答以任何方式出现问题的情况下,优先考虑无害性,而不是信息性和有用性。我们将可能导致负面用户体验的响应类型进行分类,并与注释者分享这些类别和示例。在A.5.2节中可以看到这些类别的摘要。

A.5.2负面用户体验类别

PAGE 74

当与我们的模型交互时,有不同类型的响应可能会导致负面的用户体验。我们已经指示批注者避免写违反我们安全指南的回复,例如,我们要求他们写的提示不要:

1. 促进或促成犯罪活动;促进或允许对使用者或其他人的危险行为。包含,促进或允许对用户或其他人的冒犯和辱骂行为。包含、推广或启用露骨的色情内容。

A.5.3质量保证过程

我们已经实现了一个质量保证过程,以确保我们只使用高质量的注释来训练模型。对于这个过程,一组高技能的内容管理人员手动审查注释并批准将要使用的注释。

在质量保证步骤中,审稿人被要求只批准那些符合我们指南的注释:(a)它们与对话历史一致,(b)遵循提示中的说明(c)没有语法、拼写和其他写作错误,(d)不属于章节a .5.2中描述的任何类别。如果由于语法或拼写错误,或者为了改进文本的结构、凝聚力和风格,注释需要进行小的修改才能获得批准,审稿人可以编辑它来修复问题并批准它。如果答案不能在没有重大修改的情况下被批准,审稿人被要求拒绝它,并写下必要的反馈来改进它。

A.5.4选择标注者

为了选择能够完成我们不同数据收集任务的注释者,我们进行了一个多步骤的过程,我们测试了他们对我们的指南的理解,与我们的质量评估标准的一致性,与我们的敏感主题指南的一致性以及他们的阅读和写作技能。

该过程包括4项测试:

•第一个测试包括三个部分的测试,以评估语法,阅读理解和写作风格。每个部分都是计时的,考试时间为50分钟。考生必须在第一部分取得90%的成绩才能继续第二部分和第三部分的考试,第二部分和第三部分的平均成绩达到4分才能通过考试。•第二次测试包括42个问题,分为敏感话题排列,答案排名和两个答案写作示例,由我们手动审核。为了通过测试,注释者需要在80%的答案上同意我们的标准,并且通过书面示例的得分为4分(满分5分)。

PAGE 75

•第三个测试包括测量与我们的质量评估标准的一致性。该测试包括31个不同的问题,要求注释者对不同的提示答案对进行评分,并对同一提示的不同答案进行排序。为了衡量一致性,我们首先收集了不同团队成员的回答,在超过26个问题上同意我们偏好的注释者通过了测试。•最后,最后一个测试包括一个快速反应评估,注释者从18个提示中选择至少6个来写回应。我们手动评估每个响应以评估生产准备情况。平均得分>4的注释者通过了培训。

A.6数据集污染

随着公开培训数据规模的不断扩大,不可避免地会出现部分评估数据在培训过程中被看到的情况,这可能会对评估绩效产生不应有的推动作用。

Brown et al. (2020), Wei et al. (2022a), Du et al.(2022)在测量这种数据集污染时认为,如果样本中的高阶n-gram(通常为n = 13)与训练数据之间存在冲突,则评估集中的一个示例被“污染”。这是一种故意保守的方法,目的是产生高精度的“干净”数据子集,并用于开源评估库(例如Gao等人(2021))。

然而,这种方法无法准确地检测出给定样本中污染的比例,也没有考虑到评估数据集的构建方式。此外,正如Chowdheryet等人(2022)所指出的,一些数据集(如BoolQ)包含从网络逐字提取的上下文,但不包括问题和答案的延续。因此,来自这些数据集的高度污染的样本不太可能获得不公平的优势。Chowdhery等人(2022)的方法进一步改进了早克碰撞检测,认为如果在训练数据中至少可以找到所有8克中的70%,则该样本被污染。

前面提到的方法都考虑了文本空间中的污染,并且似乎没有考虑实际评估中使用的提示的格式。相反,我们将匹配tokenizedinput,小心地将完全语言化的评估样本传递给tokenizer。我们还从自下而上的角度考虑污染,从而与以前的方法有所不同。如果一个令牌在评估样本和训练集中出现在任何超过10个令牌的令牌n-gram中,我们认为它被污染了,并将样本的污染百分比定义为被污染的令牌百分比。这使我们能够在一系列污染尺度上查看模型的基准性能,同时保留测试高精度清洁子集(污染< 20%的样本)和高精度污染子集(污染> 80%的样本)的能力。为了解释语言化样本精确格式的变幻莫测,我们允许四个标记的小“跳图预算”,以便评估样本和训练数据之间的匹配跨度最多可以在四个位置上不同(我们不允许跟踪不匹配,或者前10个标记不匹配)。

我们使用Leeet等人(2022)的库变体实现了后缀数组,并对其进行了修改,以在PySpark集群上工作(有效地无需随机访问磁盘),从而识别出这样的10(+)-skip图。考虑到这个任务令人尴尬的并行性质,我们能够在大约7小时内(包括标记化的时间)在我们的整个数据集中找到所有这样的10克(和它们的全部长度),使用大约1500个核心。

由于在确定数据集污染是否对评估性能有贡献时,有许多混淆因素在起作用(主要源于“干净”和“脏”子集不一定很好地估计总体分布的事实),我们做出以下假设:在数据集污染影响评估性能的情况下,我们期望“最干净”的样本的总体平均得分比它们的补体差,而“最脏”的样本的总体平均得分比它们的补体好。如果其中只有一个是真的,那就不足以证明污染。为此,我们定义如下四种(不相交的)子集类型:

•“干净”样本,代币污染小于20%,•“不干净”样本,代币污染大于(或等于)20%,•“不脏”样本,代币污染小于80%,•“脏”样本,代币污染大于(或等于)80%。

还有一个额外的混淆因素,我们试图直接解决。根据给定的污染定义(以及文献中提到的其他定义),有可能样品

PAGE 76

由于在训练数据中发现的匹配序列中出现了许多标记,可能会出现污染。然而,匹配的序列在训练数据中可能是高度碎片化的,在这种情况下,模型在训练过程中不太可能看到正确组装的污染序列。为了减少出现这种现象的机会,我们使用最小匹配长度L∈{10,20,30,40,50}来重复分析。由于在L→∞的极限下,每个样本都属于“干净”和“不脏”(没有污染),我们报告了每个数据集的最大L,这些数据集似乎受益于污染,以在碎片化和整体污染之间取得平衡。

对于每个数据集和上述每个样本子集类型,我们计算性能指标X的平均值X¯和统计量Zn = (X¯-µn)σn,其中n是样本子集类型的大小,µn和σn2分别是大小为n的样本的性能指标抽样分布的平均值和方差。根据中心极限定理,Zn趋向于标准正态分布,因此我们认为有足够的证据表明,如果所有四个样本子集都有|Zn| > 2,则污染会影响数据集的评估性能。

分析结果如表51所示。我们观察到,由于训练数据的污染,只有HellaSwag和mmlu - humanitis似乎得到了提升,70B模型似乎比7B模型获得了更大的好处,正如人们所期望的那样。此外,对于70B模型,MMLU-Humanities效应的影响似乎对mmlu -总体上有好处,尽管在“干净”子集性能和采样平均值之间只有很小的差值(-0.9)。没有其他数据集(对于L的任何选择)似乎从数据集污染中受益,为了简洁起见,我们省略了这些数据集的结果。

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

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

相关文章

使用知行之桥EDI系统的HTTP签名身份验证

本文简要概述了如何在知行之桥EDI系统中使用 HTTP 签名身份验证&#xff0c;并将使用 CyberSource 作为该集成的示例。 API 概述 API 是”应用编程接口”的缩写。这听起来可能很复杂&#xff0c;但它的真正含义是一种允许两个不同实体相互通信的软件。自开发以来&#xff0c;…

K8S的dashboard使用账号密码登录

原文网址&#xff1a;K8S的dashboard使用账号密码登录-CSDN博客 简介 本文介绍K8S的dashboard使用账号密码登录的方法。 ----------------------------------------------------------------------------------------------- 分享Java真实高频面试题&#xff0c;吊打面试官&…

可运营的SSL证书在线生成系统源码,附带图文搭建教程

安装教程 运行环境 PHP8.0.2-8.2最好选用8.0 Nginx1.22.1版本 Mysql5.7 伪静态设置为Thinkphp 后台账号admin 密码123456 系统使用API申请地址&#xff1a;https://www.sslprogen.com/

Hive分区表实战 - 多分区字段

文章目录 一、实战概述二、实战步骤&#xff08;一&#xff09;创建学校数据库&#xff08;二&#xff09;创建省市分区的大学表&#xff08;三&#xff09;在本地创建数据文件1、创建四川成都学校数据文件2、创建四川泸州学校数据文件3、创建江苏南京学校数据文件4、创建江苏苏…

【RT-DETR有效改进】带你分析如何确定改进的基础模型,解决模型无法收敛精度很差的问题(ResNet官方一比一复现)

一、本文介绍 Hello&#xff0c;各位读者&#xff0c;距离第一天发RT-DETR的博客已经过去了接近两个月&#xff0c;这段时间里我深入的研究了一下RT-DETR在ultralytics仓库的使用&#xff0c;旨在为大家解决为什么用v8的仓库训练的时候模型不收敛&#xff0c;精度差的离谱的问…

高效降压控制器FP7132XR:为高亮度LED提供稳定可靠的电源

目录 一. FP7132概述 二. 驱动电路&#xff1a;FP7132 三. FP7132应用 高亮度LED作为新一代照明技术的代表&#xff0c;已经广泛应用于各种领域。然而&#xff0c;高亮度LED的工作电压较低&#xff0c;需要一个高效降压控制器来为其提供稳定可靠的电源。在众多降压控制器…

maya , motionbuilder 骨骼动画相关操作与脚本

文章目录 maya 解除/增加父子关系maya 修改骨骼局部坐标系mb同时打开两个动画文件显示骨骼局部坐标系删除不需要的骨骼重命名骨骼 maya 解除/增加父子关系 解触: 右键->操作->解除父子关系 增加&#xff1a;鼠标中键拖拽 maya 修改骨骼局部坐标系 注意一般就是改旋转&…

Alphalens因子分析(4) - Information Coefficient方法

在前面的笔记中&#xff0c;无论是回报分析&#xff0c;还是因子Alpha&#xff0c;它们都受到交易成本的影响。信息分析 (Information Analysis)则是一种不受这种影响的评估方法&#xff0c;主要研究方法就是信息系数(Information Coefficient)。 信息系数的范围为-1到1&#x…

CISP-DSG证书含金量分析

CISP-DSG证书的含金量主要体现在以下几个方面&#x1f447; 1️⃣专业知识 CISP-DSG认证要求持有者具备深入的数据an全治理知识&#xff0c;包括数据分类、数据隐私、合规性、风险管理等。&#x1f4d2;这些知识对于处理和保护组织的敏感数据至关重要&#xff0c;因此具有高含金…

JavaScript系列——Promise

文章目录 概要Promise三种状态状态改变Promise链式调用Promise处理并发promise.all()promise.allSettled&#xff08;&#xff09;Promise.any()promise.race() 小结 概要 Promise中文翻译过来就是承诺、预示、有可能的意思。 在JavaScript里面&#xff0c;Promise 是一个对象…

docker部署mongo过程

1、拉取MongoDB镜像&#xff0c;这里拉取最新版本。 docker pull mongo2、运行容器 docker run -d --name mongo -p 27017:27017 \ -e MONGO_INITDB_ROOT_USERNAMEadmin \ -e MONGO_INITDB_ROOT_PASSWORD123456 \ mongo:latest --auth#由于 mongodb 默认情况下&#xff0c;…

SpringBoot-开启Actuator监控

Spring Boot Actuator是Spring Boot提供的一种管理和监控应用程序的框架&#xff0c;可以帮助我们了解应用程序的运行状况&#xff0c;提供HTTP端点来暴露应用程序的不同方面&#xff0c;如健康状况、指标、日志和运行时信息等。 开启Actuator监控&#xff0c;我们可以通过HTT…