摘要

我们引入百川对齐(Baichuan Alignment),对百川系列模型中采用的对齐技术进行了详细分析。这是行业首个全面介绍对齐方法的科目,为推进人工智能研究提供了宝贵的见解。我们研究增强模型性能的关键组成部分,在对齐过程中包括优化方法、数据策略、能力增强和评估过程。该过程涵盖三个关键阶段:提示增强系统(PAS: Prompt Augmentation System)、监督微调(SFT)和偏好对齐。所遇到的问题、采用的解决方案和所做的改进均有详细记录。

通过对已建立的基准进行比较,我们突出了百川对齐所带来的技术进步。Baichuan-Instruct是一个内部模型,而Qwen2-Nova-72B和Llama3-PBM-Nova-70B是经过Baichuan对齐优化的Qwen2-72B和Llama-3-70B基础模型的instruct版本。Baichuan-Instruct在核心能力方面表现出显著的改进,用户体验提升范围从17%到28%,在专业基准测试中表现出色。在开源基准评估中,无论是Qwen2-Nova-72B还是Llama3-PBM-Nova70B在几乎所有数据集上都稳定地优于各自官方的instruct版本。本报告旨在阐明对齐过程背后的关键技术,促进社区对该技术更深入的理解。Llama3-PBM-Nova-70B模型可在https://huggingface.co/ PKU-Baichuan-MLSystemLab/Llama3-PBM-Nova-70B找到。

图1:Qwen2-Nova-72B 和 Llama3-PBM-Nova-70B 与其他产品的性能比较。

目录

1简介

2优化

2.1训练

2.2高效训练

2.3增强提示

2.4模型合并

3数据

3.1选择提示

3.2响应构建

3.3偏好数据

4关键能力

4.1指示遵循

4.2数学

4.3推理

4.4代码

4.5工具使用

4.6提示增强系统

5评估

5.1用户体验评估

5.2开源基准测试

5.3关键能力评估

5.3.1CFBench

5.3.2SysBench

5.3.3FB-Bench

1 简介

近年来,大型语言模型(LLMs)取得了显著的突破[67, 23, 69, 10, 18, 1, 3, 4, 81, 79],显示出朝着人工通用智能(AGI)迈进的早期迹象。通过下一个令牌预测的机制,LLMs在大规模数据集上进行自监督预训练,从而获得多样化的能力范围,使它们能够执行一系列任务,如文本延续、总结和创作。进一步发展的对齐方法,如Prompt增强系统(PAS)[103],监督微调(SFT)和偏好建模[65],对LLMs的发展至关重要。这些发展增强了模型理解用户意图并遵循指示的能力,从而增强了它们的对话技能和适应复杂现实场景的能力。尽管对齐的重要性不言自明,但对广大公众而言,对齐的全面理解仍然难以获得[5, 95, 84, 19, 98, 8, 55, 31, 37, 94, 81, 1]。对齐的广泛和错综复杂的性质导致研究工作的碎片化,通常只提供对专门领域的狭隘洞见,使呈现对齐景观的整体视角具有挑战性。此外,对齐经常被视为LLMs训练中的专有基石,笼罩在公司机密之下。为促进LLM社区内的发展,我们提出了Baichuan对齐的全面系统性阐述,涵盖了一套先进且实用的对齐技术。

Baichuan对齐包括三个关键阶段:提示增强系统(PAS),监督微调(SFT)和偏好对齐。 PAS阶段旨在通过自动提示工程(PE)技术将用户查询转换为更易理解和可执行的指令,以供LLMs使用。 SFT阶段使LLMs能够利用大量高质量和多样化的数据进行对话和处理复杂任务。偏好对齐进一步将LLMs与人类价值观和偏好对齐。本报告主要关注四个方面:优化、数据、关键能力增强和系统评估,这些是Baichuan对齐的关键要素。 优化确保LLM培训的有效性和效率,第2节详细讨论了训练方法、提示论证和模型合并,共同加速和改善模型性能。在第3节中,我们强调对齐中数据的重要性,重点放在提示选择、响应构建和偏好数据上。第4节概述了在通往AGI的能力增强道路上遇到的挑战,详细说明了通过Baichuan对齐获得的具体方法和见解。最后,第5节提出了对Baichuan对齐的全面评估,重点关注用户体验、开源基准和特定能力评估。这种评估对评估模型能力和指导迭代改进至关重要,特别是通过与用户体验密切契合的用户评估和第三方产品评估。此外,我们介绍了定制的基准测试,包括CFBench [99],SysBench [66]和FB-Bench [52],旨在解决LLM应用中的当前挑战和实际需求。

我们在百川对齐后从多个角度对多个模型进行了系统评估。其中,百川指导模型作为我们的内部模型,**而 Qwen2-Nova-72B 和Llama3-PBM-Nova-70B 则是基于 Qwen2-72B [95] 和 Llama-370B [27] 基础模型,经过百川对齐技术微调得到的指导版本。**用户体验评估显示,百川指导模型在多个核心能力上显示出显著改进,增幅在 17% 到 28% 之间。特别地,在数学和推理方面的改进分别为 28% 和 23%。在开源基准测试方面,Qwen2-Nova-72B 显示出明显优于其官方指导版本 Qwen2-72B-Instruct 的进展,在多个排行榜上表现出色。同样,Llama3-PBM-Nova-70B 相对于 Llama-3-70B-Instruct 显示出明显改进,特别是在 ArenaHard 基准测试中实现了60% 的相对增长(从 46.6 到 74.5)。在特定基准测试中,百川指导模型在 CFBench、SysBench 和 FBBench 上在核心竞争力方面排名竞争激烈,与目前可用的领先模型相比。这种多维、全面和深入的评估凸显了百川对齐技术的优越性及其在不同基础模型上的适用性。作为AGI的一个关键步骤,我们公开分享了百川对齐过程中遇到的挑战、制定的解决方案以及一些深刻的见解。这一披露旨在为社区提供新的视角或从失败中吸取的经验教训,从而促进关于对齐的讨论,并对AGI的进展做出有意义的贡献。

2 优化

2.1 训练

在监督微调期间,我们使用学习率为1 × 10^−5来优化模型,并针对不同规模的模型进行2至6个epochs的训练。对于所有训练会话,我们采用样本打包,下面将对此进行讨论。此外,我们应用权重衰减以防止过拟合。

在许多实践中,根据偏好数据使用布拉德利-特里模型估计奖励函数。然而,布拉德利-特里模型存在一些局限性,包括对数据过度拟合的倾向。即使在高质量数据集的训练中完成单个epoch之前,这种情况也可能发生。此外,奖励模型仅确保不同响应的奖励得分的相对顺序,而不是它们的绝对感觉。例如:Sperfect − Sbad1的拟合奖励得分差可能小于Sbad1 − Sbad2,这将鼓励模型寻找一种快捷方式来欺骗奖励。为了减轻这种影响,我们添加了一种点对点的均方误差损失,让模型拟合从第3.3节注释的归一化绝对分数。因此,奖励模型将最小化以下目标:

在这里,α是一个可调节的系数,rˆxyw和是所选数据和被拒绝数据的标准化注释绝对分数。请注意,在我们的偏好数据集中,我们还混合了一些没有绝对分数的数据集,比如开放源代码hh-rlhf[7]数据集,SHP[28]数据集。对于这些数据集中的数据,α被设置为0。通过这个目标,我们发现拟合的奖励模型更加稳健。RM模型训练1到2个周期,取决于其大小。

强化学习 在强化学习过程中,我们对PPO[73]和GRPO [74]进行了实验,以进一步增强我们的模型。应用这两种方法时,我们进行了一些修改:在对合并模型进行强化学习时(如第2.4节所述),使用SFT数据集上的交叉熵损失作为PTX损失会使模型退化为SFT+强化模型。因此,在强化训练期间,我们使用策略模型和原始模型之间的KL散度作为PTX损失。此外,在计算每个令牌的KL散度时,我们首先选择来自参考模型的前500个logits对应的索引。对于这些前500个索引,我们分别计算了来自策略模型和参考模型的归一化对数概率。然后,我们应用了两组对数概率之间的标准KL散度公式,而不是使用简化的KL散度版本[72],以确保KL保持非负并尽可能准确。在GRPO中,每个提示的n_sample设置为3,我们没有删除令牌级别奖励分解中的KL项。强化学习的优化目标将描述如下:

在训练过程中,模型会在每个一定的训练步骤之后被保存和评估。我们为各种任务类别建立相应的测试集,以监控各个类别的过拟合或欠拟合情况。这使我们可以调整训练数据中每个类别的提示比例,从而提高模型的整体性能。

在我们的实验中,我们发现即使没有评论家模型,GRPO 仍然可以实现与 PPO 相当的结果。在 FollowBench 中,GRPO 和 PPO 之间的评估基准差异(在第 5.2.1 节中描述)∆GRPO−PPO 为 +3.7%,在 CFBench PSR Full 中为 +1.0%,在 SysBench 中为-0.50%。另一方面,与 PPO 相比,GRPO 可以节省将近一半的训练资源。此外,它比直接优化方法(如 DPO 和 KTO)表现更好,同时只需稍微增加训练资源。因此,GRPO 被选择为我们的强化学习方法。

2.2 高效训练

打包 为了解决样本长度不同导致的训练效率低下问题,我们将多个短样本合并成单个长样本,显著减少了所需的填充标记数量[80]。传统的打包在样本级别上执行,通常在Flash Attention v1的attention_map上实现。在我们的方法中,我们利用了Flash Attention v2中的cu_seqlens参数[22],它允许无需掩码的变长序列长度。这个特性有效地隔离了不同样本之间的注意力,防止它们之间的上下文污染,并实现即插即用的等效训练。我们的实验证明,这种打包方法将批次中的有效标记利用率从10%提高到98%,实现了近10倍的效率提升,而且没有任何性能损失。

图2:在样本级别和批量级别上的打包差异。

多层梯度检查点。传统的梯度检查点实现通常涉及为LLMs的每个解码层设置一个检查点[16]。然而,在具有非常多层的模型中,例如具有超过80层和超过700亿参数的模型中,这种设置远非最节省内存的配置。梯度检查点实质上是时间和内存之间的折衷。理想情况下,配置应该允许GPU内存容纳完全利用计算能力的序列长度,使其成为最具成本效益的设置。在实践中,这个参数需要实验调整。因此,我们使用多层梯度检查点,将多个解码层合并以实现更好的内存控制。假设在模型的前向传播过程中,每个解码器层具有n个激活,则在后向传播过程中,梯度检查点所需的存储量为hidden_size × n + hidden_size × num_layer。如果在检查点之前合并了k层,

所需的存储空间增加。这意味着

在内存使用最小化时,重要的是注意,n的值和计算最佳k值可能会因特定架构而有所不同。在我们的实践中,这种优化可以将训练模型需要的最小GPU数量从128个GPU降低到40个GPU,从而训练具有16K序列长度的超过700亿个参数的模型。

基于DeepSpeed-Ulysses [39],我们将序列并行的方法调整到我们的训练框架中,并实现了对具有极长序列长度的大型语言模型的高效可扩展训练。这使得它更适用于高频实验和资源有限的情况。

2.3 增强提示

大型语言模型在各种应用中的有效性很大程度上取决于提示的质量。已经有许多设计良好的提示可以显著提升LLM的性能[43, 85, 88, 97]。然而,依赖手动提示设计的方法往往缺乏可扩展性,对消费者用户来说学习曲线陡峭,需要投入大量时间。因此,探索自动提示工程机制的发展至关重要,这可以显著提升人工智能交互的效率和有效性。

我们设计了一个即插即用系统,用于自动生成提示补充,命名为提示增强系统(PAS)。一般情况下,该管道根据用户的提示生成相应的补充内容,然后将提示与内容进行补充,输入到主模型中。PAS通常补充以下内容方面:1)产品应用场景响应的要求。2)基于用户意图的非强制调子的扩展内容。3)响应格式约束,如“内容应该逻辑清晰、有序且易于用户理解”。

图3:我们提出了Prompt增强系统(PAS)。(a) 它接受用户提示,增强它们,并将增强后的提示输入LLMs中。 (b) PAS在人类评估中显着改善了所有类别的响应。

关于检索增强生成(RAG)用于LLMs,扩展的提示内容需要在搜索结果范围内;因此,在生成补充提示时,应使用搜索关键词作为新的约束条件。

2.4 模型合并

**模型合并是人工智能领域的一项新兴技术,涉及将多个模型的参数结合在一起,每个模型针对不同任务进行优化,以创建一个更灵活和通用的模型。**尽管模型合并是一个相对新兴的研究领域,但它正在迅速发展,并已经在各个领域展示了其效用。这项技术的一个显著应用是在增强基础模型方面。通过合并在不同下游任务上进行微调的模型,可以显著增强大型语言模型的能力。有关模型合并的深入探讨,我们建议读者参考一份合并算法的综合调查[96]。

**在模型训练过程中的一个挑战是调优检查点的泛滥,这是由于不同的训练数据更新、超参数设置和正则化技术导致的。**这些变化经常导致在不同领域出现不同的性能结果,这种现象通常被称为“跷跷板效应”,在一个领域的改进会导致另一个领域的恶化。模型合并提了一个有前途的解决方案,通过平衡不同任务之间的性能来减轻这种效应。

在实践中,我们从不同领域选择了表现最佳的模型,并应用了各种合并算法,包括线性、任务算术[38]和模型库[40],使用模型合并工具 MergeKit [32]。我们的实验结果表明,合并的模型通常在评估的领域中实现了更平衡的性能。在测试的算法中,模型库一直表现出最佳的整体性能。

3 数据

对齐数据被广泛验证为LLMs最终性能的关键因素,包括提示响应对和偏好数据[46, 90, 44, 26, 30]。 图4说明了构建Baichuan对齐数据集的全面流程。首先,我们开发了一个提示系统和一个分类模型(第3.1.1节),这形成了数据飞轮的基础。然后,我们详细阐述了数据构建中的关键步骤,重点关注提示多样性(3.1.2节)和提示质量(3.1.3节)。此外,我们详细介绍了生成响应的各种技术和最佳实践(第3.2节)。另外,我们提供了从构建偏好数据过程中获得的见解(第3.3节)。

图4:对齐数据过程的流程,包括:提示系统和分类。

选择提示,并构建响应和偏好数据。

3.1 选择提示

3.1.1 提示系统和分类

提示系统在数据管理中扮演着关键的角色,扩大了数据覆盖的广度和平衡性,引导了模型性能迭代的可靠性和方向。在分类法和统计分析的指导下,并借助人类专业知识,我们通过多次迭代和完善,开发了一个多维度、多粒度的提示标记系统。随后,一个自动化标记分类模型被训练并部署到数据生产的各个方面。

提示系统 我们策划了一个多样化的初始提示池,包括来自人类提示和各种开源数据集的真实请求。利用一个通用模型,给这些提示分配了初步标签。随后,通过同义词合并、长尾修剪和层次关联等技术,开发了一个初始提示标注系统。通过人工注释者的迭代细化和扩展,最终版本的标注系统和丰富的标签数据集得以精心建立。

值得注意的是,我们的系统精心围绕着六个主要维度进行结构化:能力、属性、领域、语言、难度和提示约束。这些维度具有交织和分层结构,可以生成成千上万种组合类型。能力包括LLM完成任务所需的技能,包括基于知识的问答、文本生成、编程和逻辑推理。属性提供与能力相关的独特背景信息,例如文学写作和实用写作用于文本生成。领域将现实世界与LLM连接,赋予其相关性和活力,常见领域包括IT、历史和人文领域。语言定义了表达的媒介,分为中文、外语和编程语言,进一步细分为简体中文、繁体中文、古文、英语、法语、Python和C++等。难度表示提示的复杂程度,分为简单、中等和困难级别。提示约束强调提示中约束的重要性,按约束数量分为无约束、简单约束和强约束。这一综合框架确保了一个全面而灵活的系统,能够应对各种教学场景。

在前述提示系统的指导下,我们最初利用先进的LLMs对提示进行分类。通过投票和对低置信样本的手动验证等方法,这一过程得以完善,最终形成了一个包含数万个例子的训练集。随后,我们基于Baichuan2-13B [94]和标签数据对一个专门的自动提示标记模型进行了微调,通过基于提示的技术在评估集上实现了90%的准确率。相比之下,一个经过微调的BERT [24]模型仅达到了81%的准确率。提示系统与自动分类模型的集成实现了提示集的高效管理和迭代。这包括评估提示的多样性和覆盖范围,进行分组以进行挖掘和优化,并将提示自动匹配给专业的人工标注者。每一个加入训练集的新数据点都经过这一系统化过程,确保所有与提示相关的任务都得到一致和全面的处理,如图4的最左侧所示。

3.1.2 多样性提示

许多研究表明,类似和重复的提示会对模型性能产生不利影响,强调在对齐阶段的提示多样性的关键重要性[87, 89, 12]。在实际应用中,提示通常包括指令和输入,通常格式化为任务模板与上下文信息相连。当前基于语义的密集嵌入方法通常模拟整体语义,但未能充分捕捉特定任务信息的重复表现[70, 91]。为解决这一挑战,我们提出了一个更精确捕捉指令之间微妙差异的任务感知嵌入模型,从而促进更多样化提示集的选择。

如图4右上方所示,我们的主要创新在于通过多粒度聚类方法提取高质量的任务感知训练数据。我们首先进行粗粒度聚类,然后在每个类别内进行细粒度聚类。利用最长公共子序列(LCS)算法和启发式规则,从不同的细粒度聚类中,具有相似任务模板的样本被识别为难例正例,而没有相似任务模板的样本被识别为难例负例。这些样本随后被用于对抗学习中的三元组损失来训练高质量的嵌入模型。此外,通过设置增量阈值序列来执行分层聚类,我们还将层次聚类原则纳入其中,从而增强算法的稳健性、效率性和稳定性。这种综合方法使我们能够在仅使用原始数据量的50%的情况下,相比原始算法取得明显优越的结果。

3.1.3 提示质量

高质量的提示在训练模型更高效地实现卓越性能方面起着关键作用[104, 93, 56]。然而,现有的提示质量评分方法存在一定的不足,因为它们要么在一般数据集上缺乏健壮性,要么不能满足特定情境下的个性化指导筛选要求[34, 57, 53, 11, 13]。为了解决这些问题,我们开发了一个灵活且可扩展的自动化提示质量评估框架,利用大型语言模型(LLMs)。

训练数据 从ArenaHard评估系统[47]中汲取灵感,我们利用基于成对LLM的评判机制构建训练数据集。具体来说,我们最初采用第3.1.1节中概述的分类模型将指令分类为20个不同的桶。从每个桶中,我们随机选择30个数据点作为锚定点。随后,将桶内其他数据与这些锚定点配对,并使用多个LLM作为评估器。评估过程考虑四个维度:清晰度、实用性、复杂性和新颖性,使用三个级别的得分系统进行成对比较。来自多个锚定点的汇总得分结果最终用于为每个示例分配最终的质量标签。

性能和效率方面,我们根据上述训练数据对百川2-7B [94]基础模型进行了微调,开发出最终的提示评分模型,Quality-7B。与强大的LLM(如GPT-4 [1])相比,该模型在效率和成本方面具有显著优势。此外,通过对一组200个评估样本的测试,我们已经证明Quality-7B模型的评分准确性明显优于GPT-4。

3.2 响应构建

人工标注:我们采用各种规模的模型和多样的生成策略来为同一提示抽样多个响应。这些响应基于类型标签自动分配给专门的标注员进行优先级排序,从而极大地增强了标注效率和质量,从而显著提升了数据的上限。通常,我们使用奖励模型或LLM作为评判者来预先过滤响应,形成一个具有不同质量区别的响应集,以收集足够丰富的优选顺序。当最佳响应未能达到已建立的标准时,我们要求标注员修改答案,从而构建高质量的SFT和优选数据集。

人机协作标注 大规模标注演示数据集受成本、时间和人员限制。因此,我们采用人机协作的方法来提高效率。例如,我们利用LLM的批评作为辅助信息来提高响应修改的速度和质量。有时,我们要求评估者根据抽样数据子集编制一组质量缺陷,然后使用LLM进行缺陷挖掘和自动重写。在实践中,标注过程中积累了许多有用的技术,任何利用LLM来提高标注效率的尝试或方法都会得到高度奖励。

针对需要专业知识或创造力的任务,期望注释员始终能够提供高质量的响应是不切实际和不经济的。为了解决这个问题,受[49]的启发,我们使用文本质量模型从各个领域的公开来源中筛选高质量的文本,并合成高质量的提示-回应对。我们收集了一批高质量的文案、示范性文章和备受赞誉的帖子,然后将它们进行回译以生成相应的创意指导。

个性化在同一个提示有多个正确回答的情境中,个体可能展现出不同的偏好:一些人喜欢简洁直接的回答,而另一些人则偏爱详细和结构化的回应。通过将与不同回答风格对应的风格描述整合到提示中,我们可以减轻风格偏好冲突,并增强模型在不同风格间切换时的适应能力。此外,回应通常会包括拒绝,这是由于与价值和幻觉相关的约束。与安全、及时性和模型功能相关的提示往往会导致过多的拒绝,显著降低可用性,损害用户体验。我们通过严格控制拒绝的比例,并将拒绝约束整合到系统消息和提示中来解决这一问题。

3.3 偏好数据

具有高数据质量和良好数据多样性的数据集对于SFT数据集和RLHF偏好数据集都很重要。为了获得该偏好数据集的高质量和高多样性提示集合及其标签,我们执行了类似于第3.1节的数据过滤管道。此外,我们使用分类标签过滤了具有简单、时间敏感无意义或超出能力任务的提示。由于我们的标注者语言限制,我们还只保留了使用中文或英文语言的提示。

对于数据标注,我们参考并改进了 Llama 2 的处理流程 [82]。我们使用我们的前三个最先进的模型,为每个提示取样 5 个响应。每个模型的生成设置为 Temperature = 1, TopP = 0.99, TopK = 50。为了进一步增加数据的多样性并过滤那些模型已经回答得很好的提示,我们使用了基于 Rouge 的规则过滤器来粗略过滤类似的响应。对于不同的任务集,我们开发了几个名为 AutoRator 的LLM-as-Judge 提示来评估响应的评分。总之,在评分流程中使用了三种类型的 AutoRator:1) 绝对评分:为具有开放式响应的任务如写作、开放式问答等判断绝对评分。2) 对比评分:判断两个响应是否具有相似的思路链和相同的结果。对于具有特定答案的任务如数学、推理等。3) 黄金答案:针对具有黄金答案的数据集判断绝对评分。经过 AutoRator 评估,所有得分很高或得分非常相似的提示都将被删除,剩余数据发送给标注员。对于一些具有黄金答案的数学和推理数据,我们发现 LLM-as-Judge 得分已经足够好,直接使用它们。

在进行标注时,对于每组回答,我们不仅要求标注者对其首选顺序进行评分,还要评定其在帮助性、流畅性和安全性方面的绝对感受分数。为了确保良好的标注质量,并为可能的将来使用做准备,我们要求标注者突出显示错误的部分,并在回答中增加有关错误的说明。如果某个提示的所有回答都获得低的绝对标注分数,则会被发送到第3.2节中描述的回答修改流程中。

由于我们大部分的标注数据都是中文,我们已经整合了其他语言的额外开源数据集,以增强多语言能力。这些数据集包括hh-rlhf[7],Helpsteer2[86],UltraFeedback[21]和SHP[28]。

4 关键能力

4.1 指示遵循

按照要求,直接输出结果: 遵循指示的能力是任何先进的大型语言模型的关键能力。

百川对LLM进行了几项关键增强,以增强这一关键功能,如图5所示。这些主要包括构建复杂的系统消息、扩展指令约束、响应反转和教科书学习。

系统消息 系统消息是一组特殊指令,位于多轮对话的开始,预设模型的角色、背景、方法或输出格式,以符合用户定义的目标[83, 45, 58, 62]。我们通过收集和构建大规模、高质量的系统消息数据集(详见图5(a))来增强LLM对理解和遵守的能力。最初,我们收集了大量的初始系统消息组件。一方面,我们从真实用户日志和开源数据中收集直接的系统消息,进一步将其分解为任务描述、工作流程、输出规范、约束和初始语句。另一方面,我们从广泛的多轮对话中提取具有复杂约束和要求的样本,利用LLM来提取和综合类似的组件。随后,我们采用聚类和过滤技术,获得多样化的约束描述和其他组件池。我们将原始提示与适当的约束无缝集成,创建富有约束的提示。同时,我们精心选择系统消息的其余组件,并进一步将约束提示嵌入到适当位置,伴随着演化学习和约束合理化步骤。这个过程进行了多次迭代,最终进行最后的过滤步骤,消除不合理的。

在这里插入图片描述

图5:指令遵循优化概述,包括:系统消息,约束扩展,响应逆转和教科书技术。

系统消息,导致了一个综合系统提示数据库。通过这些步骤,我们确保系统消息涵盖了各种任务类型,比如角色扮演、函数调用和安全性。我们还确保了约束描述和任务描述之间的紧密集成,以及数据的整体高质量。

约束指令拓展 通过添加约束来构建复杂指令已被广泛证明对增强指令遵循能力至关重要[76, 25, 33, 92]。为了确保基于约束的指令数据的质量和覆盖范围,我们采用一系列步骤和方法,包括开发复杂约束系统,与多个LLM进行协作迭代,以及独立验证,如图5(b)所示。借鉴以前的工作[99],我们利用LLM从大量提示中分解、聚类和合成超过30种约束类型。通过取样,我们验证随机指令中约束类型的覆盖率达到90%,并获得与每种约束类型相对应的丰富描述。随后,我们利用多个LLM增加选定原始提示中约束的复杂性。这个过程涉及详细的提示工程指导,以确保LLM选择符合提示的约束描述,重点关注约束类型的合理性,约束表达的灵活性,并根据提示质量分数进行过滤。最后,我们使用单独的LLM作为验证器,选择高质量、富含约束的指令。

响应反转 复杂指令的对齐面临两个关键挑战:(1) 缺乏高质量包含多个约束的提示的稀缺性和缺乏多样性,以及(2) 生成完全符合这些提示的响应的困难和高成本。然而,存在大量高质量的自然语言文本,通过利用这些文本的内在属性作为生成相应指令的约束,可以实现大规模创建具有多个约束的丰富高质量提示-响应对。 为了解决这个问题,我们开发了一个响应反转流水线,如图5©所示。具体流程如下:首先,我们通过使用质量评分模型进行质量过滤,从网络文本中的知识丰富段落中提取高质量文本。接下来,将这些高质量文本作为响应,并让一个LLM生成相应的提示,将响应的内在属性作为提示的约束。最后,LLM检查员评估生成的提示的质量,给出得分并提出改进建议。这个过程循环进行,直到响应中的所有约束完全包含在提示中。

**教科书。**虽然简单的模仿学习可以有效地获取相对简单的指令,但当应用于复杂的指令时,往往只会导致表面理解。为了解决模型可能知道结果但缺乏理解基础推理的问题,我们提出了一种指令模仿的方法。通过明确专注于学习指令的意图、思维过程、类比推理和对齐原则,我们可以显著增强指令学习的效率,提高模型的泛化和对齐能力。具体来说,对于复杂的指令,我们利用LLMs生成与提示高度对齐的响应,如图5(d)所示。例如,当任务是理解一项指令时,模型可能被提示“解释如何理解该指令,从专业性、复杂性和输出约束等多个方面分析其细节和挑战”。另外,也可以引导LLMs表述解决方案背后的思维过程,比如“详细阐述解决方案背后的推理过程,包括相关领域知识、推理方法和常见陷阱,特别关注错误推理路径和易忽略的输出约束,如格式、风格、语气、长度和字数限制”。此外,还可以提供这样的提示“您需要从给定示例中学习推理技巧和背景知识挖掘。例如: xx”,以赋予LLM泛化和适应不同任务场景的能力。一些对齐原则也被教导,如“尽量避免使用专业术语或复杂表达”和“考虑用户的情绪状态”,这是常见的响应技巧。这种方法确保对复杂指令有更深入的理解和更稳健的应用,从而提升模型的整体泛化和对齐各种指令需求的能力。

4.2 数学

在提示选择阶段,采用多层平衡方法来保持问题的多样性。具体来说,问题在小学、初中、高中和大学水平上均匀抽样。此外,我们使用更精细的标准,称为“知识点”,在每个级别内,问题被选择来均匀覆盖超过1,000个不同的知识点。优先考虑抽样解决问题的问题,因为它们通常包含更全面的步骤。

在许多数学问题解决的数据集中,提供的答案通常缺乏详细步骤。手动标注是一种常见方法,但是一些中间步骤可能会被忽略。然而,这些步骤对模型训练是重要的。通过利用大型语言模型结合提示和标准答案,我们可以生成保持与参考答案一致风格的详细解决方案。这种方法合成了大量包含详细步骤的数学校准数据,显著增强了模型的数学能力。直接生成的答案通常难以匹配正确答案,因此提供参考答案和步骤有助于模型将其丰富化为连贯的推理链。我们发现参考答案显著提高了生成响应的质量。但是,由于参考答案可能包含错误,我们指示模型将其视为正确的概率达到95%。这种方法减少了基于潜在错误参考的不正确推理。此外,我们进行后处理以控制生成响应的质量,例如确保它们不明确提到参考答案的存在。最后,数学数据所占比例约占用了用于监督微调的总数据的20%。

4.3 推理

根据以下类别,我们收集基于推理的数据:

常识推理:包括时间转换、时区计算、排序、路径规划、日期推理、几何空间推理和家庭关系判断;

命题假设:包括演绎推理、归纳推理和逆否命题。

关系判断:涵盖包含/暗示关系、因果关系、对立关系、中立关系和类比推理。

多步推理:包括平行推理、串行推理、链式和树形推理以及推理链攻击。

博弈论:包括经典问题如囚徒困境和鹰鸽博弈。

破坏性问题:涉及引入破坏性条件来测试推理能力;

对立因果推理:涉及相同的个体,连接无关个体,颠倒因果关系,关联在文本上相关但因果上无关的事件,并探讨科学上不可能的情况。

数据收集从开源材料中收集具有参考答案的数据可以显著提高数据质量。逻辑推理任务对数据质量特别敏感,需要对回答的风格和准确性进行手动检查。一些任务,比如复杂的数值序列问题,对当前的大型模型提出了相当大的挑战。这些任务通常涉及探索各种解决方案的方法。如果手动标记的数据只提供正确答案而不包括探索不同解决方法,可能会对模型的性能产生负面影响。

为了增强我们模型的推理能力,我们将我们的指导调优数据与“思维链”提示相结合。这一技术鼓励模型将复杂问题分解为逐步推理过程。通过这样做,我们旨在提高模型在数学和逻辑推理任务中的推理能力。

在生成答案的过程中,LLMs有时会由于错误的推理和有限的自我修正能力而产生错误的答案。为了增强这些模型反思和纠错错误的能力,实施了一项策略,即识别不正确的回答,提供参考答案,并使用LLMs重新编写这些数据,旨在提高反思和纠错能力。[2, 75, 60]。

数据分布 许多逻辑推理训练数据集采用均匀抽样比例,但数据的难度差异显著,这可能不是最佳选择。在我们的研究中,我们进行了实验,评估不同数据分布如何影响模型性能。这些实验为构建这样的数据集提供了有价值的见解和指导。例如,降低简单数据的比例可以提高模型性能,但如果降低过度,可能会产生负面影响。

长尾谬论理解 除了干净和传统的推理数据外,我们还考虑涉及误导信息、错误前提和故意模糊的问题。现有研究表明,当前的逻辑推理数据集不足以涵盖这些类型的长尾问题,暗示着若只比哈数据可以增强模型的逻辑推理能力 [51]。然而,开源的若只比哈数据揭示了质量和响应方式上的不足,通常无法有效捕捉若只比哈数据中固有的问题意图。因此,通过从互联网收集更广泛范围的若只比哈用户问题,然后经过仔细的选择和标注,我们可以创建一个高质量的标记数据集。这个数据集可以作为逻辑推理的宝贵训练集。

4.4 代码

CategoryCode-related prompts are classified by category and difficulty. Categories include:编码相关提示按类别和难度分类。类别包括:

代码生成,其中查询使用自然语言,响应包含代码;

代码完成,包含具有空白的部分代码段。

代码调试,包括在所提供的代码中识别和纠正错误; 代码解释,需要总结给定代码的功能或流程;

编码知识问答,涉及常见编码知识。

困难等级如下

简单,适用于只需基础知识即可解决的小规模代码问题;

- Medium级别,适用于需要高级知识和分析时间的复杂问题; - Difficult级别,适用于需要深入算法理解和大量调试的庞大、复杂代码;

非常困难,需要专业知识、大量努力,可能还需要深入研究。

编码知识问答本质上是常见知识提问,并不会增强编码技能,因此它被降低了80%。被分类为非常困难的数据通常需要超出模型能力范围的知识或者在提示中具有广泛的背景信息才能解决,这使其容易产生幻觉并且难以通过人工监督准确验证,因此此类数据会被舍弃。此外,我们已经在不同编程语言之间平衡了数据。

我们最初的与代码相关的提示来自各种来源,包括与代码相关的网站和开源数据集。对于包含响应的提示,我们根据多个标准验证这些响应:

符合度检查,用于检查代码块和公式的格式,以确保正确的缩进和必要注释的包含;

正确性,确保回应符合提示的要求,如使用指定的编程语言并提供请求的示例,同时评估解决方案的准确性和完整性,包括考虑边界情况;

质量,评估回答是否提供了详细的问题背景描述、清晰的解决方案说明,以及在代码后提供的进一步解释或总结。

多轮对话 大多数与代码相关的数据都是单轮的,这可能无法反映用户的实际使用模式。受WizardCoder方法的启发 [59],该方法涉及根据原始问题提出多轮深入的追问,这种方法有助于揭示更多细节和相关信息,从而产生更全面的提示-回复对。因此,我们使用LLMs根据现有的单轮问答生成一个新问题。这个新问题应该:1)在原始问题的基础上进行拓展,提高难度和深度;2)确保它是一个具体的、实践问题,在现实场景中可能遇到,并且与第一轮问答相关。获得新问题后,LLMs被用来提供答案。有趣的是,对第二轮问答的人工评估表明,这些追问对通常比原始的人工提供的答案更有用,这表明创建一个动态和迭代的对话,而不是依赖于单轮交换,可以更好地模拟现实世界的问题解决场景,从而产生更丰富的见解和更有效的解决方案。

4.5 工具使用

在本节中,我们概述了在大型语言模型中增强通用工具使用和代码解释能力的方法。

通用工具使用 对于一般工具使用,我们模拟各种工具使用场景,从单工具、一轮交互到多工具、多轮交互,并利用这些合成数据来提高LLMs的工具使用技能。在单工具场景中,重点是通过理解上下文和为期望的结果格式化输入,确定何时调用工具并正确构造参数。在更复杂的多工具场景中,模型必须选择最适合用户查询的工具,管理顺序和并行工具调用,并协调多个工具以获得连贯的结果。这需要理解工具之间的依赖关系和功能,根据中间结果动态调整策略,并在输出不符合期望时诊断问题。为了改进模型区分相似工具的能力,我们生成现有工具的变体,让模型学习微妙的差异,并提高在各种情境下选择和使用工具的决策能力。

代码解释器在开发代码解释器的能力时,我们注重编码技能和解释能力。为了提高编码熟练度,我们主要利用Jupyter Notebooks和开源Python代码存储库中的数据。Jupyter Notebooks中的结构化数据,包括文本、代码和执行结果,与涉及多轮问答、编码响应和执行结果的代码解释器场景相吻合。我们还发现,在预训练阶段增加Jupyter Notebook数据的比例可以提高模型在Python编码、代码解释和工具使用方面的熟练度。对于开源Python数据,我们设置了一个Python Jupyter Notebook沙箱环境来执行LLM生成的代码,并选择可以无错误运行的输出。为了构建调试能力,我们对在执行沙箱中发生的错误进行分类,以识别真正由于编码问题而导致的错误。然后要求LLM反思完整的错误消息,并相应地修订代码,从而教导模型学习调试技能。

对于解释能力,我们专注于数据分析和文件阅读能力。为了处理涉及Excel、CSV、JSON和Markdown文件上传的场景,我们使用LLM模拟用户、问题解决者和验证者的角色。我们使用Pandas和Scikit-learn等库对主要任务进行分类,如总结、统计、图表生成和机器学习。任务被随机组合并由LLM扮演用户将其组织成连贯的请求。然后问题解决者将其分解为子任务,并在Jupyter Notebook沙箱中使用Python代码解决每个子任务。验证者检查每个执行步骤,如有必要则返回到先前的步骤,使用深度优先搜索方法直到完成。每个数据集均经手动验证。任务的多样性导致详尽的结果,对话平均为12轮,超过2000个标记。

4.6 提示增强系统

我们使用一个经过精心策划的数据集对一个33B聊天模型进行了后续训练,以生成提示补充内容。我们已经组建了一个包含约9000个示例的提示补充数据集。PAS模型在4096个标记长度的序列上进行了两轮后续训练。我们的数据集构建流程包括三个步骤:1)定义不同场景的响应风格,并收集少量人工编写的种子。2)为数据合成进行少样本学习。3)使用LLM自我校正来提高数据质量。

-若正文段落内容的语言和所需要的语言一致时,则不翻译,直接输出正文段落内容。 - 当正文段落内容包含公式时,不需要翻译公式。 - 不加任何解释性内容,直接输出结果。 - 注意专业词汇的翻译要求准确、统一。

你是一个擅长增强用户提示信息的专家,精通提供详细补充。

在确定用户提示中需要进一步阐述的领域时,您需要提供精确的补充信息,以帮助用户更深入地理解其问题的核心意图。专注于提供一般性的方法和策略,而不是具体细节。

注意:仅补充用户提示,不直接回答问题;保持补充内容在30个字左右,并尽量不超过30个字。

<辅助信息>: - 成本效益分析是一种用来评估方案或计划的经济性和有效性的技术方法,它可以帮助决策者做出明智的选择。

5 评估

在本节中,我们将详细介绍Baichuan对齐评估系统,该系统通过整合用户感知、开源基准和专门构建的用于关键能力的评估集,有效展示了我们评估的全面性和充分性,以及对齐技术的优越性。我们评估了当前可用的领先模型,包括GPT [1]、Claude [4]、Qwen [5, 95]、ERNIE [77]、Moonshot [61]、Yi-Large [98]、DeepSeek-V2 [8]、GLM [31]、mixtral [41]和Llama [81, 27]。

5.1 用户体验评估

5.1.1 评估标准

为我们的对话助手开发了一套全面的评估系统,与其产品定位和用户需求精心匹配。该系统进行了多方面的评估,专门针对指令进行,基于模型能力、场景、难度和格式。场景定义了模型解决问题和用户需求的范围和背景。能力在这些场景中进一步详细说明,概述了模型解决真实世界问题的技能。难度衡量了解决问题的挑战级别,而格式区分了指令类型,如零次、一次、少次和复杂指令。

为了确保对模型响应的全面和准确评估,我们评估并对其在四个关键维度上进行评分:意图理解、结果准确性、语言质量和安全性。每个维度都经过仔细评估,以为反映用户期望的整体质量得分做出贡献。值得注意的是,上述响应的质量得分是由第三方产品专家评估的。我们的主要评估指标是通过率,它衡量满足所有评估标准的样本在总样本数量中所占的百分比,从而与用户感知相一致。此外,我们还利用更详细的指标,如GSB(好vs.中vs.差)和满意度率,这些指标是指导产品迭代和比较分析的关键指标,因为它们具有特定的适用性。通过率的定义如下:

5.1.2 结果与讨论

表1:在使用百川对齐优化后,各内部能力评估集中通过率(PR)的绝对百分比增长。’IF’、’IP’、’FC’的缩写。

'KQA’分别代表指示跟随,信息处理,函数调用,知识问答。

表1展示了在本文提到的优化行动之前和之后,覆盖了百川产品迭代中几乎所有关键任务和能力的通过率的比较改进。值得注意的是,∆代表绝对百分比的变化。总体上,前文讨论的各种优化策略已经导致所有任务的显著改进,其中在数学(28%)、知识问答(KQA)(25%)和推理(23%)方面观察到最显著的增长。这些改进主要源自第4.2、4.3和4.1节讨论的优化。值得注意的是,数学能力的增强在很大程度上是由涉及“知识点的全面涵盖和更详细的问题解决步骤”的数据优化驱动的,而响应质量的改善主要归因于“推理CoT”的实施。所展示的变化显著改进了遵循指令,特别归因于相关第4.1节讨论的约束扩展和响应反转工程。函数调用的增长似乎是最渐进的,主要是由于其固有的复杂性和挑战。然而,在细化的高质量标注数据涉及的方法方面,具有明显优势,详见第4.5节。角色扮演主要通过个性化数据和偏好对齐的构建来提升性能,如在第3.2、2.1和3.3节清楚说明的那样。值得注意的是,PAS(4.6)和偏好对齐,以及数据多样性和质量的提升,共同为多个核心能力的显著改进做出贡献。

5.2开源基准测试

我们对Qwen2-72B和Llama-3-70B基础模型进行了对齐,得到了相应的Nova模型,即Qwen2-Nova-72B和Llama3-PBM-Nova-70B。在开源基准测试中表现出色的结果充分验证和展示了我们对齐技术的先进性。

5.2.1 基准测试

我们精选了一系列广泛认可的开源基准测试,涵盖了各种能力领域,用于对通过百川对齐优化的模型进行全面深入的评估。基准测试包括BBH[78]、MixEval-Hard[63]和Alpaca-Eval 2.0[50],主要用于评估一般能力。指令跟随能力通过IFEval[105]和FollowBench[42]进行评估,而对话能力则通过ArenaHard[47]和MTBench[101]进行评估。HumanEval[14]、MATH[36]和GPQA[71]专门用于评估编码、数学和基于知识的能力。

5.2.2 主要结果和讨论

表2呈现了Qwen2-Nova-72B与其他模型在几个权威开源基准测试中的比较分析。很明显,Qwen2-Nova-72B在所有评估集上明显优于官方的instruct版本Qwen2-72B-Instruct,后者源自Qwen2-72B基础模型。最显著的改进出现在ArenaHard上,性能从48.1提高到75.1。在BBH和Math方面也明显取得了实质性的增长。此外,与目前最先进的LLMs相比,Qwen2-Nova-72B在ArenaHard、MTBench、HumanEval、BBH、Math和FollowBench上均取得了领先地位。表3展示了经过Baichuan Alignment后Llama3-PBM-Nova-70B模型的性能。与基于相同基础模型的Llama-3-70B-Instruct模型相比,Llama3-PBM-Nova-70B在ArenaHard(74.5)、MixEval(58.1)、AlpacaEval2.0(56.9)和GPQA(34)上表现出明显的性能优势。与最先进的LLMs相比,在AlpacaEval2.0和ArenaHard上分别排名第二和第三。总的来说,在两种不同开源基础模型上通过Baichuan Alignment获得的instruct模型在多个开源基准测试中始终优于官方版本的instruct。这清楚地展示了Baichuan Alignment在增强基础模型方面的多功能性,以及它在不同基准测试中提高性能的全面能力。

表2:与其他模型的Qwen2-Nova-72B比较。♠:基于相同的基础模型。下划线:未公开发现的结果,来自我们自己的测试。

表3:Llama3-PBM-Nova-70B与其他产品的比较。 ♠:基于相同的基础模型。下划线:未公开找到的结果,根据我们自己的测试推导得出。

在这里插入图片描述

5.3 关键能力评估

与模型应用和产品场景相结合,我们已经开发了专门针对约束跟随、系统消息跟随和多轮对话能力的高质量基准,实现了对相应模型能力的精确评估和指导,以便优化和迭代。为了明确起见,在随后的评估结果中,粗体、下划线和波浪号:::分别表示第一、第二和第三名。

5.3.1 CFBench

背景和评估 LLMs 的能力理解和遵循自然语言指令对它们在复杂的现实世界应用中的使用至关重要。我们介绍了 CFBench[99],一个大型-指导规模综合约束跟踪-特朗普枪击事件概述,包括起因、过程、影响、事后评估、射手信息和特朗普的反馈。使用Benchmark设计来评估三个要素。

LLMs的约束遵从能力。编号点和粗体关键词:时间、位置和性质。原因应该是在 。用JSON格式总结过程,包含三个句子与事件有关。

CFBench拥有1000个精心制作的cu-从国际和国内两个角度讨论影响。

总内容不超过500字。最后,用七个词总结这一事件。

覆盖了超过 200 个现实世界夸克四重奏的评级样本。

场景和50多个NLP任务。

系统地编译了特朗普枪击事件概述中的约束条件。1.原因 \n{“时间”:“2024年7月13日”,真实指示和构造一个"地点":“美国宾夕法尼亚州巴特勒”,“性质”:“暗杀未遂”} \n

2.过程 - 特朗普在集会上演讲时发生了枪击事件。 - 秘密特工迅速包围特朗普并将他护送离开。包括10个主要类别和超过3.影响- 国际:这一事件震惊了世界,引发了担忧。

关于美国政治暴力。\n-国内:美国政治紧张局势和极化。

25个子类别,确保无缝地增加;特朗普的支持可能会上升。4.枪手信息:细节尚未公开。

对每个约束在内部进行了集成释放;联邦调查局正在调查。\n特朗普在一场集会上被枪击;枪手被特勤局击毙,震惊了全世界。七字夸克隆:\n-前总统。主要种类的十个领域,在图6中部分呈现,包括:约束检查表约束优先级满意。

内容涉及特朗普枪击事件的语义内容主要包括原因、过程、影响…元素内容主要包含方面、数字、风格、格式、语言学…。

词典、规则约束。 为了确保JSON中的原因:时间等…常见格式次要,LLM输出评估对齐。 在三个句子中的过程 句子计数次要影响:国际和国内要素内容二级。

根据用户感知,我们提出了一个集成多高级方法的广告-7.总字数不超过500字。总字数次高级。八七字四行实用次级。

基于维度的评估标准和需求优先级排序。这种方法图6:CFBench的示例。

覆盖了与约束、指令和需求履行相关的各个方面,分别对应着CSR、ISR和PSR指标。

性能和讨论:表4展示了使用三个关键指标评估了CFBench及其子集在领先模型中的综合评估结果。总体而言,GPT-4o在所有划分和指标上均表现出色,Claude-3.5-Sonnet紧随其后。即使在表现最佳的模型中,也存在不同程度的差异,突显出CFBench在区分LLMs遵循约束能力方面的强大能力。值得注意的是,Baichuan-Instruct展现出了出色的整体表现,在同行中表现出较强的竞争力,特别是在Hard Set上表现出色。这一成功主要归因于第4.1节“约束指令构建”中详细介绍的约束扩展方法。

表格4:LLMs在CFBench及其分割数据集上的评估结果。

5.3.2 SysBench

背景和评估系统消息是LLM的基本组成部分,由精心设计的指令组成,指导模型的行为以实现既定目标。

图7:一个具有多轮用户对话的系统消息示例。理想情况下,用户对话的每一轮都应满足系统消息中的约束。然而,在实际应用中存在以下挑战:约束复杂性,指令不匹配和多轮不稳定。

我们介绍 SysBench[66],一种系统性分析系统消息跟随能力的基准测试,涉及三个具有挑战性的方面:约束复杂性、指令不对齐和多轮稳定性。为了实现有效评估,SysBench基于真实场景中系统消息的六种常见约束类型,构建了涵盖各种交互关系的多轮用户对话。我们的数据集包含来自各个领域的 500 条系统消息,每条消息配对5轮用户对话,这些对话经过手工制定和检查,以确保高质量。

Constraint Satisfaction Rate (CSR)代表了最精细的粒度水平,定义为满足约束条件的平均准确度。它评估了模型在单个指令中遵循特定约束条件的能力,侧重于详细的约束条件遵循能力,如图7所示。

表5显示了几种主要LLMs在SysBench中CSR度量评估结果。GPT-4o和Claude 3.5分别在总分中排名第一和第二。在具体的约束类型方面,角色和格式约束通常更容易。

LLMs在满足Constraint约束方面表现良好,而在Action和Style约束方面对所有模型都更具挑战性。除了GPT-4o和Claude 3.5外,其他模型在不同约束类型上交替领先表现,突出了SysBench在辨别模型性能变化方面的能力。毫不奇怪,百川Instruct在Role约束方面排名第一,在Total和许多其他约束类型中排名第三,展示了百川对齐的先进性质。(ERNIE 4.0是百度自研的旗舰级超大规模⼤语⾔模型)

表5: 在SysBench中的核心评估指标CSR分数在各种约束条件下显示。

5.3.3 FB-Bench

背景和评估在与消费者进行多轮对话时,LLMs常常需要根据用户反馈修正回复并纠正错误。不同模型在回应人类反馈方面的能力各不相同,我们希望定量评估这些能力。许多现有的基准[35, 20, 15, 100, 48]在评估大型语言模型时,通常侧重于描述模型的直接满意度率,但这并不准确反映LLMs的人机协作能力。我们引入了FB-Bench[52],这是一个用于评估LLM对人类反馈响应能力的细粒度多任务基准。

图8:构建FB-Bench的复杂过程可分为三个组成部分:数据筹备、层次分类和自动评估。

为了保持平衡的数据分布,我们实施了一个分类系统,将数据分为两个主要组:错误校正和响应维护。这种分类系统使得对模型性能指标进行全面而细致的定量分析成为可能。FB-Bench的独特功能在于能够同时比较模型的两个维度,并引导它们的优化方向。图8展示了在FB-Bench上的评估结果。

性能和讨论 在FB-Bench中领先的LLMs的子集评估结果在表6中呈现。与响应维持相比,大多数LLMs在误差校正方面表现出优越性。这表明大多数LLMs缺乏区分有效和误导性指令的强大能力。这种不足可能源于LLM的指令遵循能力优化相对简单;然而,过于坚持指令遵循可能会导致LLM扭曲现实。在错误校正方面,Claude-3.5-Sonnet明显优于其他LLMs。相反,在响应维持场景中,ERNIE-4-8K、Qwen272B-Instruct和Baichuan-Instruct在同行中展现出竞争力。

表6:LLMs在FB-Bench上的评估结果

6 结论

在这份报告中,我们提供了百川对齐(Baichuan Alignment)的全面概述,这是一种先进、精确和多功能的对齐技术,已被广泛应用于百川系列模型中。我们的讨论涵盖了优化、数据、关键能力增强和全面评估等各个方面。我们介绍了三个阶段的提示增强系统(PAS)、监督微调(SFT)和偏好对齐,记录和总结了在对齐阶段中百川对齐团队遇到的挑战、成功经验以及一些错误尝试。通过对通过百川对齐优化的模型进行多维度评估,包括用户体验、开源基准和特定能力评估,我们展示了百川对齐在解决各种场景特定问题以及其适应各种基础模型的有效性。这份报告代表了该行业对齐技术向公众的首个全面阐述。我们希望我们的方法、见解和经验能与研究界 共鸣并启发,提供宝贵的指导和经验教训,从我们的成功和失误中学习。我们的最终目标是为人工智能的进步做出贡献,共同向着实现人工通用智能(AGI)迈进。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!

更多推荐