苹果公司昨天发布了Apple Intelligence技术报告,详细介绍了为驱动苹果智能特性而开发的基础语言模型,包括一个约30亿参数的端侧模型,以及一个为私有云计算设计的服务器基础大型语言模型。
本报告描述了模型架构、用于训练模型的数据、训练过程、模型如何针对推理进行优化,以及评估结果。
报告链接:https://machinelearning.apple.com/papers/apple_intelligence_foundation_language_models.pdf,本文用kimi进行了翻译。
//
1. 简介
在2024年全球开发者大会上,我们介绍了苹果智能(Apple Intelligence),这是一个深度集成到iOS 18、iPadOS 18和macOS Sequoia中的个人智能系统。
苹果智能由多个高效的生成模型组成,这些模型速度快、效率高,专为用户的日常工作任务而设计,并且能够根据当前活动即时适应。构建在苹果智能中的基础模型已经针对用户体验进行了微调,例如撰写和润色文本、优先排序和总结通知、为与家人和朋友的对话创建有趣的图像,以及在应用程序中采取行动以简化跨应用程序的交互。
图1:苹果基础模型的建模概览。
在本报告中,我们将详细介绍其中的两个模型——AFM-on-device(AFM代表苹果基础模型),一个大约30亿参数的语言模型,以及AFM-server,一个更大的服务器基础语言模型——它们的构建和适应过程,以高效、准确、负责任地执行专业任务(见图1)。这两个基础模型是由苹果创建的支持用户和开发者的更大家族生成模型的一部分,这包括一个基于AFM语言模型的编码模型,用于在Xcode中构建智能,以及一个扩散模型,帮助用户在例如信息应用中视觉上表达自己。
苹果智能的每一步设计都以苹果的核心价值观为基础,建立在行业领先的隐私保护基础上。此外,我们还创建了负责任的人工智能原则,以指导我们如何开发人工智能工具,以及支撑它们的模型:
1. 用智能工具赋予用户力量:我们确定可以负责任地使用人工智能来创建解决特定用户需求的工具的领域。我们尊重用户选择如何使用这些工具来实现他们的目标的方式。
2. 代表我们的用户:我们构建深度个性化的产品,目标是真实地代表全球用户。我们不懈努力,避免在我们的人工智能工具和模型中延续刻板印象和系统性偏见。
3. 用心设计:我们在流程的每个阶段,包括设计、模型训练、功能开发和质量评估中采取预防措施,以识别我们的人工智能工具可能被滥用或导致潜在伤害的方式。我们将不断主动地借助用户反馈改进我们的人工智能工具。
4. 保护隐私:我们通过强大的设备端处理和像私有云计算这样的开创性基础设施来保护我们用户的隐私。我们在训练我们的基础模型时,不使用我们用户的私人个人数据或用户交互。
这些原则在使能苹果智能的架构的每个阶段都得到了体现,并将功能和工具与专业模型连接起来。
在本报告的其余部分,我们将提供有关我们如何开发的模型高度能胜任、快速和节能;我们如何接近这些模型的训练;我们的适配器如何针对特定用户需求进行微调;以及我们如何评估模型性能,以帮助性和意外伤害为标准。
2. 架构
AFM基础模型是密集的仅解码器模型,它们建立在Transformer架构之上,具有以下设计选择:
共享输入/输出嵌入矩阵,以减少参数的内存使用。
预归一化,使用RMSNorm以提高训练稳定性。
查询/键归一化以提高训练稳定性。
分组查询注意力(GQA),具有8个键-值头,以减少KV缓存的内存占用。
SwiGLU激活以提高效率。
RoPE位置嵌入,将基础频率设置为500k以支持长上下文。
表1提供了有关AFM-on-device尺寸的一些详细信息。
3. 预训练
AFM预训练过程在开发能够支持大量苹果智能功能的高效语言模型中发挥着关键作用,这些功能可以帮助和支持用户。我们专注于效率和数据质量,以便在每一步预训练中都能获得高质量、端到端的用户体验,同时模型还要高效且低延迟。
3.1 数据
AFM预训练数据集由多样化且高质量的数据混合组成。这包括我们从出版商那里获得许可的数据、策划的公开可用或开源数据集,以及我们的网络爬虫Applebot抓取的公开可用信息。我们尊重网页选择不被Applebot爬取的权利,使用标准的robots.txt指令。
鉴于我们专注于保护用户隐私,我们指出数据混合中不包含任何私人苹果用户数据。此外,我们做出了大量努力,从公开可用的数据中排除亵渎内容、不安全材料和个人可识别信息(见第7节的更多细节)。我们还对许多常见的评估基准进行了严格的净化处理。
我们发现,数据质量远比数量更是决定下游模型性能的关键因素。下面,我们将提供有关数据混合中关键组件的更多细节。
3.1.1 网页
我们使用我们的网络爬虫Applebot抓取公开可用的信息,并尊重网络发布者选择不被Applebot爬取的权利,使用标准的robots.txt指令。此外,我们采取措施排除包含亵渎内容的页面,并应用过滤器以删除某些类别的个人可识别信息(PII)。然后,剩余的文档通过一个管道进行处理,该管道执行质量过滤和纯文本提取,更具体地说:
1. 使用Safari的阅读模式和Boilerpipe算法执行正文提取。
2. 使用启发式和基于模型的分类器进行安全性和亵渎内容过滤。
3. 使用局部敏感的n-gram哈希进行全局模糊去重。
4. 使用启发式和基于模型的分类器进行广泛的质量过滤。
5. 对811个常见的预训练基准进行净化,过滤与任何基准数据集的4-13克碰撞的整个文档,除非给定n-gram的碰撞计数达到1000的“常用”阈值。
3.1.2 许可数据集
我们不遗余力地从出版商那里识别并许可少量高质量的数据。这些许可的数据集为多样化和高质量的长上下文数据提供了自然来源,因此我们将其作为数据混合的一部分,用于预训练的持续和上下文延长阶段(见第3.2.2节和3.2.3节的更多细节)。我们按照第3.1.1节中描述的同样方式对出版商许可的数据部分进行净化。
3.1.3 代码
代码数据来自GitHub上的许可过滤开源存储库。大部分代码数据涵盖了14种常见的编程语言,包括:Swift、Python、C、Objective-C、C++、JavaScript、Java和Go。数据经过去重、进一步过滤PII和质量,并按照第3.1.1节中的方式进行净化。
3.1.4 数学
我们整合了来自网络的两类高质量数据。第一类是数学问答数据集,包含来自20个富含数学内容的网络域的30亿个token。我们通过识别HTML页面中的相关标签来提取问题和答案。
第二类是来自诸如数学论坛、博客、教程和研讨会等网页的140亿个token的集合。为了过滤这些网页,我们使用了一个专门的管道,其中包括一个带有40个字符串集合的数学标签过滤器,用于识别数学模板,一个带有350个Unicode和LaTeX符号的数学符号过滤器,用于识别数学内容,一个由专门为数学设计的语言模型分类器驱动的质量过滤器,以及一个处理由人类手动标记的所有域的域过滤器。我们应用这些过滤器,然后进行去重、净化和PII删除,以产生最终的数据集。
3.1.5 公共数据集
我们评估并选择了一些高质量的公开可用数据集,其许可允许用于训练语言模型。然后,我们在将它们包含在预训练混合中之前,过滤了这些数据集以删除个人可识别信息。
3.1.6 分词器
我们使用字节对编码(BPE)分词器,遵循SentencePiece的实现。所有数字都被拆分为单个数字,我们使用字节回退将未知的UTF-8字符分解为字节标记。我们不启用Unicode规范化。AFM-server和AFM-on-device的词汇表大小分别为100k和49k。
3.2 配方
我们将AFM预训练分为三个不同的阶段:1. 核心阶段,消耗大部分计算预算,2. 持续阶段,我们在其中减轻了较低质量的网络爬取数据的权重,转而更重视代码和数学,并结合了第3.1.2节中描述的许可数据,3. 上下文延长阶段,与另一个持续预训练阶段类似,但是在更长的序列长度下进行,并且在混合中包括了合成的长上下文数据。
关于每个预训练阶段后的模型质量的详细信息(以及来自我们内部基准实现的额外指标用于AFM)在附录C中,附录D检查了AFM-server的长上下文能力。所有三个阶段都使用解耦的权重衰减进行正则化,以及μParam的简化版本,类似于[Wortsman等人,2023]中描述的μParam(简单)。
到目前为止,我们还没有发现在这个规模上需要更复杂的参数范数控制。所有阶段都保持在float32中的分片模型和优化器状态,在前向和后向传递中转换为bfloat16以提高效率。
3.2.1 核心预训练
AFM-server核心训练从头开始进行,而AFM-on-device则是从更大的模型中进行蒸馏和修剪。
AFM-server:我们从头开始在8192个TPUv4芯片上训练AFM-server,使用6.3T个token,序列长度为4096,批量大小为4096个序列。批量大小是根据模型大小和计算预算的缩放定律确定的,然而我们发现下游结果对相当宽范围的批量大小相对不敏感,预计任何在预测批量大小的0.5×到2×之间的值都会有类似的结果(预测的最佳值实际上是∼3072,但4096允许更好的芯片利用率)。我们使用一个模型维度为768的代理模型进行学习率扫描,发现最佳学习率范围在0.01-0.02之间,因此我们选择0.01作为保守的选择。线性层将由于使用μParam(简单)而有一个大约0.1的有效学习率缩放。
我们使用调整后的解耦权重衰减3.16e−4,发现它在所有测试的模型大小和计算预算中都表现良好。学习率计划包括5000步的线性预热,然后是余下训练过程中峰值的余弦衰减到0.005。有关优化器的更多细节,请参见第3.2.4节。附录A比较了AFM核心预训练配方与更典型的配置。
AFM-on-device:对于设备上的模型,我们发现知识蒸馏和结构修剪是提高模型性能和训练效率的有效方法。这两种方法互为补充,以不同的方式工作。更具体地说,在训练AFM-on-device之前,我们从修剪过的6.4B模型(使用与AFM-server相同的配方从头开始训练)初始化它,使用通过类似于[Wang等人,2020; Xia等人,2023]中描述的方法学习到的修剪掩码。关键的区别是:(1)我们只修剪前馈层中的隐藏维度;(2)我们使用Soft-Top-K掩码而不是HardConcrete掩码;(3)我们使用与核心阶段相同的预训练数据混合来学习掩码,训练188B个token。然后,在AFM-on-device的核心预训练期间,通过将目标标签替换为真实标签和教师模型的top-1预测的凸组合(教师标签的权重为0.9),使用蒸馏损失进行训练,训练完整的6.3T个token。我们观察到,从修剪过的模型初始化可以改善数据效率和最终基准结果0-2%,而添加蒸馏可以将MMLU和GSM8K分别提高约5%和3%。更详细的消融结果可以在附录B中找到。除了批量大小之外,所有训练超参数都与AFM-server保持一致。
3.2.2 持续预训练
对于两个模型,我们都在8192的序列长度下进行持续预训练,另外1T个token来自一个混合,该混合加重了数学和代码的权重,并减轻了大量网络爬取的权重。我们还包括了第3.1.2节中描述的许可数据。我们使用3e−4的峰值学习率和1e−5的解耦权重衰减,以及1000个预热步骤,最终学习率衰减到峰值的0.001,这与核心预训练不同。其他设置(批量大小等)被继承过来。我们没有发现在此处为AFM-on-device使用蒸馏损失是有帮助的,与核心预训练不同,因此配方与用于AFM-server的相同。
3.2.3 上下文延长
最后,我们在32768个token的序列长度下进行了额外的100B个token的持续预训练,使用来自持续预训练阶段的数据混合,并增加了合成长上下文问答数据。我们还将RoPE基础频率从500k增加到6315089,遵循[Liu等人,2024]中描述的缩放定律,期望这将允许更好的短到长泛化——这是可取的,因为大部分我们的预训练数据由远小于32k个token的文档组成。配方与持续预训练相似。我们检查了附录D中AFM-server的长上下文性能。
3.2.4 优化器
我们选择使用带有动量的RMSProp变体进行AFM预训练。具体来说,我们将原始梯度除以平方梯度的偏差校正指数移动平均值的平方根,以产生即时更新,然后将其剪切到每个参数块的最大范数为1.0,然后进一步使用无偏差校正的指数移动平均值平滑这个估计值,以产生净更新。除非另有说明,平方梯度(β2)和更新(β1)的平滑常数都设置为0.95。在平滑之前,为了数值稳定性,我们在即时平方梯度上添加了一个小常数ϵ = 1e−30。
平滑更新按学习率缩放,添加权重衰减,然后应用计划衰减以形成最终的权重增量。作为稳定性的额外保护,在优化器之前,我们将全局梯度范数剪切到1.0。有关与更典型配置的配方消融,请参见附录A。
3.3 训练基础设施
AFM模型是在v4和v5p Cloud TPU集群上使用AXLearn框架进行预训练的,AXLearn是一个基于JAX的深度学习库,专为公共云设计。训练是使用张量、完全分片数据并行和序列并行的组合进行的,允许训练扩展到大量的模型参数和序列长度,同时保持高利用率。这个系统使我们能够高效、可扩展地训练AFM模型,包括AFM-on-device、AFM-server和更大的模型。
AFM-server是在8192个TPUv4芯片上进行训练的,这些芯片被配置为8×1024芯片片,其中片通过数据中心网络(DCN)连接在一起。只有数据并行性跨越片边界,其他类型的分片状态仅在片内进行,因为片内互连带宽比DCN高几个数量级。这次训练运行的持续模型浮点运算利用率(MFU)大约是52%。AFM-on-device是在2048个TPUv5p芯片的一片上进行训练的。
4. 后训练
尽管苹果智能功能通过基础模型之上的适配器来实现(见第5节有关适配器架构的深入介绍),但根据经验,我们发现改进通用的后训练可以提升所有功能的性能,因为模型在遵循指令、推理和写作方面具有更强的能力。
我们对后训练方法进行了广泛的研究,以赋予预训练的AFM模型通用的指令遵循和对话能力。我们的目标是确保这些模型能力与苹果的核心价值和原则保持一致,包括我们致力于保护用户隐私和负责任的人工智能原则。我们的后训练工作包括数据收集和生成、指令调整和对齐创新。我们的后训练过程包括两个阶段:监督式微调和来自人类反馈的强化学习(RLHF)。我们介绍了两种新的后训练算法:(1)一种带有教师委员会的拒绝采样微调算法(iTeC),以及(2)一种带有镜像下降策略优化和留一法优势估计器(MDLOO)的来自人类反馈的强化学习算法,这些算法在我们的强化学习迭代中使用,带来了显著的模型质量提升。
4.1 数据
我们在后训练管道中使用混合数据策略,包括人工注释和合成数据。在我们的数据收集和实验过程中,我们发现数据质量是模型成功的关键是,因此我们进行了广泛的数据审查和过滤程序。
4.1.1 人工注释
示范数据 为了推动AFM的指令微调,我们从各种来源收集了高质量的人工注释示范数据集。这些对话风格的数据包括系统级和任务级指令(即提示),以及它们的相应响应。与[Zhou等人,2024]类似,我们观察到在我们的实验中,质量比数量更重要。因此,我们专注于关键数据质量标准,包括有用性、无害性、呈现和响应准确性,此外还针对涵盖苹果智能功能的多样化任务分布。为了保护用户隐私,我们采取措施确保我们的数据中没有个人可识别信息,我们不包括用户存储在苹果的任何个人数据。
人类偏好反馈 为了迭代地提高AFM的能力,我们进一步收集了用于强化学习的人类反馈。具体来说,我们指示人工注释者比较并排列同一提示下的两个模型响应,以收集并排偏好标签。此外,我们还使用单边问题来指导这个过程。这些问题告知评分员对各种方面的模型响应质量进行评分,包括指令遵循、安全性、事实性和呈现,我们还保留这些标签用于模型训练。我们强调在这个过程中坚持苹果的价值观和标准。与示范数据类似,我们发现反馈数据的质量至关重要,因此我们联合迭代数据和模型质量,以统一的方式改进它们。
4.1.2 合成数据
除了人工注释外,我们还通过合成数据生成来提高数据质量和多样性。我们的发现表明,当由我们强大的奖励模型指导时,AFM能够生成高质量的响应,对于某些特定领域,这些响应被发现与人类注释相当,甚至更优。因此,我们扩展了提示集以增加多样性,并发现这些生成的响应可以惠及AFM本身。下面,我们讨论了为AFM后训练生成合成数据的三个领域:数学、工具使用和编码。
数学:在数学领域,广泛的主题和难度级别使得收集人类演示变得特别耗费资源,因为这需要人类作者的专业知识。随着模型的不断改进,仅仅依赖人类编写的内容也变得不切实际。因此,探索合成数据的潜力对于有效应对挑战至关重要。数学合成数据的创建包括两个主要阶段:生成合成数学问题和产生相应的解决方案。对于数学问题的综合,我们采用了几种“进化”策略,将一组种子提示转换为更多样化的提示集合:
有了一组扩展的数学问题后,我们接着提示AFM为每个问题合成N个带有思维链的响应。如果初始种子数据有真实答案,它们可以用作“结果奖励信号”来过滤合成答案。对于那些需要较少推理步骤的问题,我们观察到正确的最终答案通常与正确的中间步骤相关联。如果直接答案检查不成功或真实答案不可用,我们则通过查询LLM裁判来评估响应的正确性。我们发现,将过滤后的答案输入训练数据,可以大幅提升我们模型的数学能力。
工具使用:我们开发了工具使用能力,如函数调用、代码解释器和浏览,通过混合合成和人类数据来实现。模型能力首先用合成数据引导,重点关注单一工具使用案例。然后,我们收集人工注释来改进涉及多工具和多步骤场景的模型能力。我们进一步通过将预言工具与其他类似工具混合来增强人工策划的函数调用数据,以增加工具选择的难度。此外,我们还从人工策划的函数调用数据中合成并行函数调用,以启用新功能,并基于人工策划的函数调用和通用SFT数据来减轻工具调用过度触发的问题。
编码:合成编码数据集的生成涉及使用拒绝采样的自我指导方法。这种方法使模型能够自主学习和生成数据。从71个不同的编程主题作为种子开始,模型被提示生成一个初始的编码面试风格问题池。对于每个问题,模型生成一组单元测试和多个可能的解决方案。然后,我们使用基于执行的拒绝采样方法来选择最佳解决方案。这包括编译每个潜在解决方案与每个单元测试,并执行它们。成功执行次数最多的解决方案被选中。这样,我们得到了一组(问题、测试用例、解决方案)三元组。最后,我们通过过滤通过单元测试数量来验证数据集的质量,最终得到了12K个高质量的三元组用于SFT。
4.2 监督式微调(SFT)
已经证明,扩展多任务指令调整可以显著提高模型在各种任务上的性能。同样,我们尝试扩展监督式微调数据,以实现一个强大的基础模型,用于后续的对齐。在SFT期间,我们在给定提示的示范数据上收集和训练模型。我们仔细选择并组合人类数据和合成数据,形成一个高质量的混合,涵盖各种自然语言用例。
数据选择:在将数据用于模型训练之前,我们建立了一系列的数据质量保护措施,包括内部人工标注者的评级、基于模型的自动过滤技术和文本嵌入的去重。我们还通过第4.1.2节中描述的各种合成数据生成方法和第4.3.2节中描述的拒绝采样来扩大混合规模。
调整混合比例:为了调整混合比例,我们将其视为一个优化问题。具体来说,给定一组权重(w1,w2,...,wn),其中wi代表混合中特定组件的比例,我们用wi → wi ± ∆wi训练模型,并在一组基准上评估质量变化。我们发现,广泛运行此类实验可以有效地识别最佳混合并去除影响最小的数据组件。
训练超参数:模型使用AFM-server的恒定学习率5e−6和AFM-device模型的2e−5,以及0.1的dropout率进行训练。由于评估指标在不同的检查点之间波动,我们根据自动评估基准和最佳N选择进行检查点选择,以测试RL的潜力。
4.3 来自人类反馈的强化学习(RLHF)
我们进一步使用收集到的人类偏好数据进行强化学习,以提高模型的性能和质量。这涉及到训练一个强大的奖励模型,并将其应用于我们下面讨论的iTeC和MDLOO算法中的两个算法。我们在附录E中更详细地描述了我们的RLHF管道。
4.3.1 奖励建模
我们使用第4.1.1节中收集的人类偏好数据来训练奖励模型。每个人类偏好数据项包含一个提示和两个响应以及人类标签,包括:
两个响应之间的首选项以及偏好水平,即首选响应是否明显更好、更好、略好或与被拒绝的响应几乎一样好。
每个响应的单边评分,衡量每个响应的指令遵循属性、简洁性、真实性和无害性。
我们的奖励模型训练遵循RLHF中奖励建模的标准实践,但有两个主要创新:
我们设计了一个软标签损失函数,考虑到人类偏好的水平。
我们将单边评分作为奖励建模的正则化项纳入。
我们采用常用的Bradley-Terry-Luce (BTL)模型用于RLHF中的奖励建模。在此模型中,人类注释者更倾向于一种响应而不是另一种响应的概率被建模为奖励差异的sigmoid函数。我们的软标签损失函数鼓励当偏好水平较高时(例如,当一个响应明显优于另一个响应时),这个概率很高,反之亦然。我们注意到这与Llama 2中使用的基于边际的损失函数不同,后者也利用了偏好水平。
从经验上,我们发现我们的方法比基于边际的损失函数更好。此外,我们还发现使用单边评分作为正则化项可以有效地提高奖励模型的准确性。我们的奖励建模技术的更多细节可以在第E.1节中找到。
4.3.2 迭代教学委员会(iTeC)
为了充分利用我们的模型进行多轮RLHF,我们提出了一个新的迭代RLHF框架,有效地结合了各种偏好优化算法,包括拒绝采样(RS)、直接偏好优化(DPO)及其变体如IPO和在线强化学习(RL)。这使我们能够将RLHF的好处带给所有尺寸的AFM模型,并同时提高它们的对齐度。
迭代委员会:我们在开发AFM RLHF中学到的最重要的教训之一是,使用一组最佳性能模型的多样化集合来刷新在线人类偏好数据收集。具体来说,对于每批人类偏好数据收集,我们设置了一组最新的有前景的模型,这些模型从SFT、RS、DPO/IPO和RL训练而来,以及之前迭代中的最佳模型,我们称之为“模型委员会”。我们收集了来自最新模型委员会的响应的成对人类偏好。在获取每批人类偏好数据后,我们刷新我们的奖励模型,并进一步使用一系列偏好优化算法训练一组新模型。然后我们继续下一轮迭代RLHF数据收集,使用新的模型委员会。
委员会蒸馏:我们进一步从模型委员会中运行拒绝采样(蒸馏),使用最新的奖励模型作为重新排序器。与在全球层面重新排序不同,即从委员会中选择一个单一的最佳性能模型并将其用作教师模型,我们在提示层面重新排序模型响应。具体来说,对于每个提示,我们从委员会中的每个模型中采样多个响应,并使用最新的奖励模型为每个提示选择最佳响应。这使我们能够结合不同偏好优化算法训练的模型的优势。例如,我们发现利用负例的算法,如在线RLHF、DPO、IPO,在提高数学等推理技能方面更好,而拒绝采样微调则更有效地学习指令遵循和写作技能。
扩大蒸馏:为了将RLHF改进带给所有尺寸的AFM模型,我们扩大了从模型委员会的蒸馏。与更大的模型不同,其中仔细迭代数据和模型质量比数据量更重要,我们发现更小的模型在扩大蒸馏的提示数量时可以实现巨大的改进。我们最终的AFM-on-device模型是在模型委员会生成的超过1M个高质量响应上训练的。
4.3.3 在线RLHF算法:MDLOO
在本节中,我们介绍了我们的在线强化学习算法MDLOO,我们在模型训练期间解码响应,并应用RL算法来最大化奖励。我们使用通常采用的RLHF目标,即最大化KL惩罚奖励函数:
其中D是提示分布,DKL(·∥·)表示两个分布之间的Kullback-Leibler散度,β是控制行为策略πθ和通常由SFT训练的模型πref之间散度的系数。在我们的RL训练中,我们使用以下奖励函数:
其期望值等同于方程1。我们考虑了将整个响应的生成视为一个动作的强盗设置,我们不使用价值网络(即批评家)来获得每个标记的奖励或优势。类似于常用的RLHF算法,如PPO,我们使用基于信任域的策略迭代算法。我们的在线RL算法中有两个主要设计选择:
我们使用留一法(LOO)估计器来估计提示-响应对的优势,类似于最近的工作[Ahmadian等人,2024]。
我们使用镜像下降策略优化(MDPO)来优化策略,与更常用的基于剪辑的PPO方法不同。
因此,我们将我们的在线RL算法命名为带留一法估计的镜像下降(MDLOO)。更具体地说,在算法的解码阶段,我们为每个提示解码多个响应,并将每个响应的优势分配为(提示,响应)对的奖励与同一提示生成的其他响应的平均奖励之间的差异。直观地说,这个估计器旨在衡量一个响应与典型响应相比有多好。从经验上,我们发现这种优势估计器对于稳定RL算法和取得强大的结果至关重要。此外,我们还使用基于KL正则化的信托区域方法,即MDPO,来控制每次迭代中的策略变化。我们发现这种算法在我们的环境中比PPO更有效。我们的在线RLHF算法的更多细节可以在第E.2节中找到。
5. 驱动苹果智能特性
我们的基础模型旨在为苹果智能功能提供动力,这是集成在iPhone、iPad和Mac支持的模型中的个人智能系统。我们已经构建了这些模型,使它们快速高效。虽然我们在基础模型中实现了令人印象深刻的广泛能力,但其质量的实际相关衡量标准是它在我们的操作系统上特定任务的表现。
在这里,我们发现即使是小型模型,我们也可以通过特定任务的微调将其性能提升到最佳级别,并且我们开发了一种基于运行时可替换适配器的架构,使单一基础模型能够专门用于数十项此类任务。图2提供了高级概述。
图2:带有用于设备和服务器模型的语言以及图像模型的适配器的苹果智能架构。本报告中我们仅描述文本模型。
5.1 适配器架构
我们的基础模型经过微调,以适应用户的日常工作活动,并且可以动态地针对手头的任务即时专业化。我们使用LoRA适配器,这是可以插入基础模型各个层的小神经网络模块,用于针对特定任务微调我们的模型。对于每个任务,我们调整AFM自注意力层中的所有线性投影矩阵和逐点前馈网络中的全连接层。通过仅微调适配器,原始预训练模型的参数保持不变,同时保留模型的通用知识,同时定制适配器以支持特定任务。
我们使用16位表示适配器参数的值,并且对于大约30亿参数的设备模型,一个16级的适配器参数通常需要数十兆字节。适配器模型可以动态加载,临时缓存在内存中,并进行交换 - 这使我们的基础模型能够在有效管理内存并确保操作系统响应性的同时,针对手头的任务即时专业化。
为了便于适配器的训练,我们创建了一个高效的基础设施,允许我们在基础模型或训练数据更新或需要新功能时快速添加、重新训练、测试和部署适配器。值得注意的是,适配器参数是使用第5.2节中介绍的准确性恢复适配器进行初始化的。
5.2 优化
AFM模型旨在支持用户的日常活动,推理延迟和能效对整体用户体验都很重要。我们应用了各种优化技术,允许AFM在设备上和私有云计算中高效部署。这些技术在保持整体模型质量的同时显著降低了内存、延迟和功耗。
为了适应边缘设备的有限内存预算并降低推理成本,关键是应用模型量化技术,以在保持模型质量的同时减少每权重的有效位数。以前的研究发现,与原始的32/16位浮点版本相比,4位量化模型的质量损失很小(通常以预训练指标衡量)。由于AFM预计支持多种产品功能,因此量化模型在这些用例的关键特定领域保持能力至关重要。为了实现模型容量和推理性能之间的最佳权衡,我们开发了最先进的量化方法和框架,该框架利用准确性恢复适配器。这使我们能够实现平均每权重不到4位的近无损量化,并提供灵活的量化方案选择。
方法:模型在后训练阶段(量化方案的详细信息将在稍后讨论)之后被压缩和量化,平均每权重不到4位。量化模型通常会显示出适度的质量损失。因此,我们不是直接将量化模型传递给应用团队进行功能开发,而是附加一组参数效率高的LoRA适配器以恢复质量。我们确保这些LoRA适配器的训练配方与预训练和后训练过程一致。然后,产品将通过从准确性恢复适配器初始化适配器权重来微调自己的特定功能LoRA适配器,同时保持量化的基础模型冻结。
值得注意的是,训练准确性恢复适配器是样本效率高的,可以被视为基础模型训练的迷你版本。在适配器的预训练阶段,我们只需要大约100亿个token(约占基础模型训练的0.15%)就可以完全恢复量化模型的容量。由于应用适配器将从这些准确性恢复适配器进行微调,因此它们不会增加任何额外的内存使用或推理成本。关于适配器大小,我们发现16级的适配器在模型容量和推理性能之间提供了最佳权衡。但是,为了提供灵活性以适应各种用例,我们为应用团队提供了不同等级的准确性恢复适配器套件{8, 16, 32}供选择。在附录F中,我们提供了未量化、量化和准确性恢复模型的详细评估结果,并表明恢复的模型表现更接近未量化版本。
量化方案:准确性恢复适配器带来的另一个好处是,它们允许更灵活的量化方案选择。以前在量化大型语言模型时,人们通常将权重分组成小块,通过相应的最大绝对值对每个块进行归一化以过滤异常值,然后以块为单位应用量化算法。较大的块大小会产生较低的有效位数和更高的吞吐量,但量化损失会增加。为了平衡这种权衡,通常将块大小设置为小值,如64或32。在我们的实验中,我们发现准确性恢复适配器可以大大改善权衡中的帕累托前沿。对于更积极的量化方案,可以恢复更多的错误。因此,我们能够使用高度有效的量化方案,而不必担心失去模型容量。具体来说,我们的AFM设备模型在苹果神经引擎(ANE)上运行时使用调色板化:对于投影权重,每16列/行共享相同的量化常数(即查找表),并使用K均值量化16个唯一值(4位)。量化块大小可以高达100k。此外,由于AFM的嵌入层在输入和输出之间共享,它与ANE上的投影层实现不同。因此,我们使用8位整数进行每通道量化,以获得更好的效率。
混合精度量化:在AFM的每个transformer块和每层都存在残差连接。因此,并非所有层都具有相同的重要性。基于这种直觉,我们通过将某些层推至使用2位量化(默认为4位)来进一步减少内存使用。平均而言,AFM设备可以被压缩到仅约3.5位每权重(bpw),而不会显著损失质量。我们选择在生产中使用3.7 bpw,因为它已经满足了内存要求。
交互式模型分析:我们使用交互式模型延迟和功耗分析工具Talaria,以更好地指导每个操作的比特率选择。
更多讨论:使用量化模型和LoRA适配器在概念上看起来与QLoRA相似。而QLoRA旨在节省微调期间的计算资源,我们关注的是能够切换不同的LoRA适配器,以有效支持各种特定用例的高性能。在特定功能微调之前,我们首先在相同的预训练和后训练数据上训练准确性恢复适配器,这对于保持模型质量至关重要。准确性恢复框架可以与不同的量化技术结合使用,如GPTQ和AWQ,因为它不直接依赖于量化方法本身。第5节中描述的功能适配器是从这些准确性恢复适配器初始化的。
5.3 案例研究:摘要
我们使用AFM设备模型为电子邮件、消息和通知的摘要功能提供动力。我们与设计团队合作,为摘要创建了电子邮件、消息和通知的规范。
虽然AFM设备在一般摘要方面表现良好,但我们发现很难得出严格符合规范的摘要。因此,我们在量化的AFM设备之上微调了一个LoRA适配器,用于摘要。适配器是从第5.2节中描述的准确性恢复适配器初始化的。我们使用由电子邮件、消息和通知的输入有效载荷组成的数据混合。这些有效载荷包括公共数据集、供应商数据以及内部生成和提交的示例。所有数据都已获批准用于生产。供应商数据和内部生成的数据都已匿名化,以去除用户信息。鉴于这些有效载荷,我们使用AFM服务器根据产品要求生成合成摘要。这些有效载荷和摘要被用于训练。
合成摘要:我们使用AFM服务器生成合成摘要。我们应用了一系列基于规则的过滤器,然后是模型基于的过滤器。基于规则的过滤器基于诸如长度约束、格式约束、观点、声音等启发式规则。模型基于的过滤器用于筛选更具挑战性的问题,例如蕴含。我们的合成数据管道使我们能够高效地生成大量训练数据,并通过数量级过滤,保留高质量的示例用于微调。
提示注入:我们发现AFM设备倾向于遵循输入内容中的指令或回答问题,而不是对其进行摘要。为了缓解这个问题,我们使用启发式方法识别了一大数据集的示例,这些示例具有此类内容,使用AFM服务器生成摘要,因为它没有表现出类似的行为,并将这个合成数据集添加到微调数据混合中。
6. 评估
我们对AFM模型进行了预训练(第6.1节)、后训练(第6.2节)以及最重要的特定功能(第6.3节)的评估。
6.1 预训练评估
在这一部分,我们展示了常见的少样本预训练评估指标。虽然这些基准对于跟踪我们在预训练上的进展很有用,但我们发现对后训练模型(第6.2节)和功能适配器(第6.3节)的人类评估与最终用户体验的相关性更高。
我们使用常见的开源评估工具和基准测试对AFM预训练模型进行了评估。表2展示了AFM-on-device和AFM-server在HELM MMLU v1.5.0上的结果,该基准测试了57个科目的5次少样本多项选择问题回答。另见表3和表4,分别展示了AFM-server在HuggingFace OpenLLM排行榜V1的一个子集和HELM-Lite v1.5.0基准测试套件上的结果。这些基准测试表明,AFM预训练模型具备强大的语言和推理能力,为后训练和功能微调提供了坚实的基础。
表2:HELM MMLU-5s v1.5.0评估结果。
表3:HuggingFace OpenLLM排行榜V1的一个子集的评估结果。
6.2 后训练评估
我们在全面的基准测试上评估后训练模型,并将其与各种开源模型以及GPT-3.5和GPT-4.1进行比较。本节报告的所有结果都是使用没有任何适配器的AFM-on-device和AFM-server基础模型,在bfloat16精度下获得的。在本节中,我们首先介绍衡量AFM通用能力的人类评估结果,然后展示几个特定能力和领域的结果。
我们比较了以下模型版本:gpt-3.5-turbo-0125、gpt-4-0125preview、Gemini-1.5-Pro-0514、DBRX Instruct、Phi-3-mini-4k-instruct、LLaMA 3 8B Instruct、LLaMA 3 70B Instruct、Mistral-7B-Instruct-v0.2、Mixtral-8x22B-Instruct-v0.1、Gemma-1.12B和Gemma-1.1-7B。
6.2.1 人类评估
人类评估模拟实际用例和用户反馈,因此通常作为语言模型评估的黄金标准。因此,我们在模型开发过程中进行了广泛的人类评估,并评估其最终形态。我们收集了一系列评估提示,以测试模型在不同方面的表现,包括通用能力和安全性。对于每个提示,两个模型响应匿名呈现给人类评估者进行并排比较。根据评估的性质,提供详细的指导方针,包括评分原则和单响应评分以及并排偏好评分的示例,以确保一致的评分标准和评估质量。每对模型响应由多个评估者评分,他们的评分被聚合以得出最终结果。总体而言,我们发现人类评估与用户体验更为一致,并提供比某些使用LLM作为评估者的学术基准更好的评估信号。在本节中,我们展示了对通用能力的人类评估结果,安全性评估结果在第7.6节中提供。
我们收集了1393个综合提示的全面集合,以评估通用模型能力。这些提示涵盖了不同的难度级别,并涵盖了包括分析推理、头脑风暴、聊天机器人、分类、封闭问题回答、编码、提取、数学推理、开放问题回答、改写、安全性、摘要和写作在内的主要类别。为了防止过拟合,在准备训练数据时,我们对评估提示进行了净化。
在图3中,我们将AFM与开源模型(Phi-3、Gemma-1.1、Llama-3、Mistral、DBRX-Instruct)和商业模型(GPT-3.5和GPT-4)进行了比较。与竞争对手的模型相比,人类评估者更倾向于选择AFM模型。特别是,尽管AFM-on-device的模型大小比Phi-3-mini小25%,但它在比较中获得了47.7%的胜率,甚至超过了参数数量超过其两倍的开源强基线模型Gemma-7B和Mistral-7B。与闭源模型相比,AFM-server实现了竞争性的性能,与GPT-3.5相比,其胜率超过50%,平局率为27.4%。
6.2.2 指令遵循
指令遵循(IF)是我们期望语言模型具备的核心能力,因为现实世界的提示通常是复杂的,并包含复杂指令。我们强调在RLHF数据收集和人类评估中指令遵循的重要性。在这一部分中,我们使用自动化基准测试评估模型的IF技能。
在图4中,我们分别评估了AFM-on-device和AFM-server在公共IFEval基准测试上的表现。该基准测试衡量语言模型生成精确遵循提示中指令的响应的能力。此基准测试中的指令通常包括对响应长度、格式、内容等的要求。我们发现AFM-on-device和AFM-server在指令级和提示级准确性上都取得了卓越的表现。此外,我们还在AlpacaEval 2.0 LC基准测试[Dubois等人,2024]上对AFM模型进行了基准测试,以衡量一般的指令遵循能力,结果表明我们的模型具有很高的竞争力。
6.2.3 工具使用
在工具使用应用中,给定用户请求和潜在工具列表及其描述,模型可以选择发出工具调用,提供指定要调用工具的名称和参数值的结构化输出。我们期望工具描述遵循OpenAPI规范。
我们在公共Berkeley Function Calling Leaderboard基准测试上通过原生支持函数调用进行评估,使用AST指标。如图5所示,AFM-server在整体准确性方面取得了最佳表现,超过了Gemini-1.5-Pro-Preview-0514和GPT-4。
6.2.4 写作
写作是大型语言模型必须具备的关键能力之一,因为它支持诸如改变语调、重写和摘要等各种下游用例。然而,评估写作质量是一项非常复杂的任务,并且在上述公共基准测试中并未得到很好的覆盖。
我们在内部摘要和写作基准测试上评估了AFM的写作能力,这些基准测试包括各种写作指令。按照LLM-as-a-judge,我们为每个摘要和写作任务设计了评分指南,并提示GPT-4 Turbo为模型响应分配1到10的分数。我们注意到,使用LLM作为评分员存在某些局限性和偏见,例如长度偏见。
我们将AFM与一些最杰出的模型以及较小规模的开源模型进行了比较。如图6所示,AFM-on-device在与Gemma-7B和Mistral-7B相比时可以实现可比或更优越的性能。AFM-server显著优于DBRX-Instruct和GPT3.5,并且与GPT4相当。
6.2.5 数学
在图7中,我们比较了AFM在GSM8K和MATH等数学基准测试上的表现。我们对GSM8K使用了8次思维链(CoT)提示,对MATH使用了4次CoT提示。我们使用内部自动化评估管道进行了所有评估。我们看到,AFM-on-device即使在规模不到Mistral-7B和Gemma-7B一半的情况下,也显著优于它们。
6.3 摘要功能评估
产品团队对电子邮件、消息和通知摘要的规范要求定制一套指导方针、指标和专门的评分员,以针对各种开源、许可和专有数据集评估摘要质量。
数据集。我们为每个用例精心采样了丰富的有效载荷。这些评估数据集强调了我们的产品设计功能在生产中可能面临的多样化输入,并包括不同内容类型和长度的单一和堆叠文档的分层混合。我们开发了一个管道,以构建模拟真实用户输入的评估数据集。
评分员。我们聘请了一批经过高度培训、全职、苹果雇佣的人类评分员,他们具备专业的写作和理解能力,以评估摘要质量。为了有资格参与评分项目,每个评分员必须通过一系列资格和培训步骤,其中包括所需的与写作相关的学士学位、定制的培训课程,以及在内部评分质量基准上持续的高性能表现。
评分指南。在评估任务期间,评分员将获得摘要的规范、原始输入内容和输出摘要。评分员根据以下每个子维度的质量使用3点量表(“好”,“一般”或“差”)评估摘要:
构成:评估摘要的整体可读性,考虑语法、标点、拼写和简洁性。
全面性:评估摘要在捕捉要点或提醒用户采取任何行动/结论方面的全面性。
贴切性:评估摘要与原始有效载荷的关联程度。不完全贴切的摘要可能包含夸张、推断、不准确或虚构的细节。
遵循指令:评估摘要是否满足特定样式和格式要求。要求针对每个功能量身定制,反映具体的产品和设计期望。
有害性:评估摘要是否包含根据苹果的安全分类包含有害或不安全的内容。
如果任何子维度被评为“差”,则摘要被分类为“差”,根据预先定义的产品规范。同样,只有当所有子维度都好时,摘要才被评为“好”。这些分类用于计算“好/差结果比率”指标,定义为所有摘要中好/差摘要的百分比。
结果。我们要求人类评分员评估AFM-on-device适配器、Phi-3-mini、Llama-3-8B和Gemma-7B的摘要质量。图8显示AFM-on-device适配器总体上优于其他模型。
7. 负责任的AI
7.1 概述
苹果智能以负责任的方式开发,并以谨慎设计,赋予我们的用户力量,真实地代表他们,并保护他们的隐私。对我们负责任的人工智能方法至关重要的是,我们最终提供的是智能、明确定义的工具,以满足特定用户需求。明确定义一个功能旨在做什么,使我们能够更好地识别任何潜在的安全差距。
我们已经开发了一个安全分类法,以便在设计和评估我们的生成性人工智能功能时,全面和一致。这个分类法建立并扩展了苹果在利用人工智能和机器学习为全球用户提供有用功能的广泛经验,并随着我们开发和测试功能的不断更新。目前,它由12个主要类别组成,包括51个子类别,包括“仇恨言论、刻板印象和亵渎”,“歧视、边缘化和排斥”,“非法活动”,“成人色情内容”和“图形暴力”。
该分类法作为一个结构化的方式来考虑与每个特定功能相关的潜在问题和风险。随着新的或额外风险的识别,我们开发和修订相关的政策,这些政策针对每个功能进行上下文化的调整,考虑到它所服务的特定需求、它产生的具体内容,以及适当的缓解措施。它们是在内部和外部的广泛输入下开发的,包括学者、人工智能伦理学家、信任和安全以及法律专家,以更好地识别和理解相关风险、这些风险的潜在严重性,以及这些风险可能对某些群体产生的潜在不同影响。这些政策指导我们在数据收集、人工注释、模型训练、护栏开发、评估和红队演练中的工作。
特别是,分类法本身不是我们政策的唯一决定因素。例如,可能属于安全分类法的内容并不总是被阻止,因为这样做可能会与苹果负责任的人工智能开发原则的其他方面发生冲突,例如“尊重用户选择如何使用这些工具来实现他们的目标”。因此,作为工具运作的功能可能在它们运作和产生的内容包括更宽松,以便有效地解决用户的意图。另一方面,可能会产生超出用户指定意图的内容的功能可能需要受到更多限制。无论如何,我们努力确保某些类别的伤害始终得到特别关注(例如,任何与自我伤害有关的内容),而其他类别将始终被阻止(例如非法内容)。
此外,我们的负责任的人工智能原则内置于苹果基础模型和苹果智能的每个阶段,以及安全分类法,这有助于我们评估风险并逐个制定政策。我们在特定适配器的微调中包括面向安全的数据,以适应用例。此外,在推理时,我们还运行护栏模型作为预处理和后处理步骤,以评估输入和输出级别的潜在伤害。最后,我们建立了机制,以持续和主动地借助持续的用户反馈改进我们的人工智能工具。
7.2 预训练
在预训练阶段,我们采取了几个步骤,以确保上述价值观得到维护。我们遵循严格的数据政策,确保不包括任何苹果用户数据,并针对训练语料库的每个组成部分进行严格的法律审查。此外,我们执行安全过滤,以减少潜在有害内容,包括不适宜的性内容、亵渎、垃圾邮件和个人身份信息或财务数据。
由于预训练是多个下游功能共享的步骤,我们的安全缓解措施旨在保留一般能力,使我们能够在功能级别上迭代分类法和政策,而不会损害这些下游模型的有用性。我们借鉴以往的经验,避免在预训练阶段过于激进的过滤,这可能在安全对齐方面带来潜在的好处。直观地说,预训练模型应该意识到内容,下游功能和政策可能要求它小心处理 - 在某些情况下要小心,或者在其他情况下直接操作这些内容。
7.3 后训练
在后训练阶段,我们的目标是在不必要时,将负责任的人工智能原则的基线水平灌输到模型中,以避免在每个下游模型构建在基础模型之上时都需要完整的复杂性后训练(例如RLHF)。为此,有两个关键考虑因素:
1. 我们必须确保我们的模型产生的输出对用户有帮助,同时最小化潜在的伤害。
2. 我们必须在功能基础上对我们的安全分类法和政策进行上下文化的调整,以提供最佳的用户体验。
为了平衡有用性和无害性的权衡,我们的解决方案是将安全对齐视为众多核心后训练任务之一,在训练中与它们一起评估和迭代,而不是作为一个单独的训练阶段。具体来说,我们在SFT和RLHF训练语料库中包括根据我们的政策和价值观与可信供应商紧密合作策划的对抗性数据。我们还将安全任务和基准测试纳入自动和人工评估中,这些评估在模型开发过程中使用。
总的来说,超过10%的训练数据是对抗性的或涉及安全或敏感话题,包括单次和多次安全类别注释、成对和整体偏好评级,以及注释器重写。这些数据要么直接使用,要么作为合成数据生成的种子数据,如第4.1.2节所述。
我们为每个功能实现适当的安全行为做了额外的工作,超出了基线对齐。我们实现此目的的主要方式之一是收集特定于安全的训练数据,并在微调适配器时包括它。例如,在微调我们的摘要适配器时,我们寻求改进诸如提高对包含在摘要内容中的恶意问题的鲁棒性,以及减少摘要可能无意中放大有害或敏感内容的可能性等方面。
7.4 防范恶意代码
代码生成需要特别小心。我们的代码基准测试涉及实际执行生成的代码,以确定其语法和语义正确性。因此,负责任的代码模型训练涉及将所有生成的代码默认视为不安全 - 所有代码总是在完全锁定的环境中执行,没有访问互联网或任何内部或外部服务的权限。具体来说,锁定环境由FireCracker管理,FireCracker jailer在集群级别上进行管理。
7.5 红队演练
红队演练试图从模型中引出违反安全政策的响应,或者对于尚未存在政策的有害响应。这些结果通知了政策制定以及安全评估数据集的重点和内容。红队演练转而可以影响设计、工程和发布准备决策。
红队演练是一项根本上的创造性工作,需要红队成员运用攻击载体的组合来探测已知的模型漏洞,并尝试发现新的漏洞。与语言模型互动时使用的攻击载体包括越狱/提示注入、说服技巧,以及已知会导致模型误行为的语言特征(例如俚语、代码切换、表情符号、错别字)。
我们使用手动和自动红队演练来引出对齐模型的潜在未知故障模式。[Tourvron等人,2023]的最新研究表明,自动化流程可能比人类生成更多样化的提示,人类以前被视为数据收集的“黄金”标准。这些自动化流程可以包括使用语言模型本身来识别差距,其中一些可能是直观的或甚至是令人惊讶的。这些示例可以直接用作合成训练或评估数据,并通知未来的数据收集工作。
基本的人类红队演练任务模式如下:红队成员被分配一个安全分类法类别和攻击载体。他们使用该攻击载体为模型编写输入,旨在引出包含该类别内容的响应。如果响应不包含目标内容,红队成员可以进行固定数量的对话轮次,之后他们提供模型输出的最终有害性评级,并列出其中包含的分类法类别(如果有)。为确保注释质量,红队成员还为他们的评价提供整体置信度评分。
除了在基础模型级别进行红队演练外,我们还对特定功能进行红队演练。功能级别的红队演练项目使用特定于功能的指导方针,攻击载体由功能的安全政策和工程问题告知。这些项目可以深入探测该特定功能的已知风险,也可以对抗性地探测未知的漏洞。
我们的红队演练项目是使用内部和外部人群运行的。为确保负责任的数据收集,由于红队演练的敏感性质,我们:1)使红队演练完全自愿;2)对每个红队成员每周花费在任务上的时间实行严格时间限制;3)提供全天候可用的健康和福利资源;4)通过每周办公室时间和Slack频道与内部红队成员保持开放的沟通线路,以便他们可以传达任何出现的担忧。
7.6 评估
如前几节所述,安全性是在基础模型开发过程中反复迭代的众多方面之一,因此在后训练期间也经历了相同的自动和人工评估周期。
安全评估集 为了在人工评估期间减少噪音、成本和周转时间,我们必须确保我们的安全评估集既干净又具有挑战性和全面性。为此,我们过滤掉那些在不同版本的模型中始终产生低有害性响应的“简单”提示,并使用基于嵌入的分析来提高我们的评估提示集覆盖率。总体而言,我们策划了1000多个对抗性提示,以测试AFM在有害内容、敏感话题和根据我们的安全政策的事实性方面的性能。
安全评估结果 图9总结了由人类评估者在安全评估集上评估的不同模型的违规率。越低越好。AFM-on-device和AFM-server都对对抗性提示具有鲁棒性,实现了明显低于开源和商业模型的违规率。
此外,我们还报告了在安全提示上的人类偏好的并排人类评估结果,如图10所示。人类评估者发现我们的响应比竞争对手的模型更安全、更有帮助。
8 结论
在本报告中,我们介绍了为苹果智能功能提供动力的基础语言模型,AFM-on-device和AFM-server。这些模型旨在快速运行,能够在iPhone、iPad和Mac以及通过私有云计算的苹果硅服务器上高效运行。它们被训练用于高度胜任的任务。
END.
延伸阅读