Apple 智能基础语言模型

news2024/9/23 5:29:48

Introducing Apple’s On-Device and Server Foundation Models

technical details June 10, 2024

在2024年的全球开发者大会上,苹果推出了Apple Intelligence,这是一个深度集成到iOS 18、iPadOS 18和macOS Sequoia中的个人智能系统。Apple Intelligence由多个高性能生成模型组成,专门为用户的日常任务提供支持,并可以根据当前活动进行实时调整。内置于Apple Intelligence中的基础模型经过精细调整,用于改善用户体验,例如撰写和完善文本、优先处理和总结通知、创建与家人和朋友对话时有趣的图像以及简化跨应用程序交互所需的应用内操作。在接下来的概述中,

本文将详细介绍其中两个模型——一个拥有约30亿参数的设备上语言模型以及一个更大且运行在苹果自研芯片服务器上并可通过私有云计算使用的服务器端语言模型——它们如何被构建和适应以高效、准确且负责任地执行特定任务。这两个基础模型是苹果创建用于支持用户和开发者而形成更大生成模型家族中一部分;该家族还包括编码模型(用于向Xcode添加智能功能)以及扩散模型(帮助用户在消息应用程序等场景下进行视觉表达)。我们期待很快分享关于这一更广泛模型集合的更多信息。

全面详细的技术说明:Apple 的设备端与服务器端基础模型

在 2024 年全球开发者大会(WWDC24)上,Apple 引入了 Apple Intelligence,一个深度集成于 iOS 18、iPadOS 18 和 macOS Sequoia 的个人智能系统。Apple Intelligence 由多个高性能的生成模型组成,这些模型专注于用户的日常任务,并能根据当前活动快速适应。本文档将详细介绍 Apple 的设备端(约 30 亿参数)和服务器端(基于 Private Cloud Compute)语言模型,探讨它们的构建、优化及在多种任务中的表现。

模型架构与训练

  • 训练框架与数据

Apple 的基础模型基于开源的 AXLearn 框架进行训练,该框架建立在 JAX 和 XLA 之上,支持在各种训练硬件和云平台上高效扩展,包括 TPU 和 GPU。模型训练数据主要来自公开数据集和 AppleBot 爬取的网页内容,后者是 Apple 的网络爬虫工具。所有使用的内容均经过数据使用者控制(Data Usage Control)处理,确保数据合法合规。

在数据处理阶段,Apple 过滤掉个人身份信息和低质量内容,如信用卡号码、社会安全号码和脏话。同时,通过数据提取、去重和模型分类器应用,选择高质量文档进行训练。此外,Apple 还利用人工标注和合成数据混合的策略,以提升模型训练效果。

  • 预训练与后训练优化

预训练阶段,Apple 使用并行处理技术,包括数据并行、张量并行、序列并行和全分片数据并行(FSDP),以提高训练效率。后训练阶段,则引入了两个关键算法:拒绝采样微调算法和教师委员会,以及从人类反馈中学习的强化学习算法(RLHF),这些算法显著提高了模型遵循指令的质量。

apple_inteligence

模型优化

  • 设备端优化

为了在资源受限的设备上高效运行,Apple 对设备端模型进行了多项优化。首先,采用低比特量化技术,如低比特调色板化和激活量化,以减少内存和计算需求。对于关键组件,如 LoRA 适配器,Apple 采用混合 2 位和 4 位配置策略,平均每个权重为 3.7 比特,几乎保持了与未压缩模型相同的精度。

此外,Apple 使用了分组查询注意力机制(grouped-query-attention)和共享输入输出词汇嵌入表,进一步减少内存占用和推理成本。设备端模型的词汇量被设置为 49K,适用于大多数日常应用场景。

  • 服务器端优化

服务器端模型则部署在 Apple 硅服务器上,利用 Private Cloud Compute 提供高性能计算能力。尽管服务器端模型不受设备资源限制,但 Apple 仍对其进行了优化,如使用更大的词汇量(100K)以支持更广泛的语言和技术术语。同时,通过共享嵌入表和查询注意力机制,保持高效推理。

任务适配与评估

  • 适配器机制

Apple 通过 LoRA 适配器为不同用户任务进行微调,如文本摘要、优先级排序和通知总结等。每个适配器针对具体任务需求进行训练,以确保模型输出满足用户期望。例如,在邮件摘要任务中,适配器会根据邮件内容生成简洁明了的摘要,同时保持关键信息的完整性。

  • 性能评估

Apple 采用多种评估方法来衡量模型性能,包括自动评估和人类评估。自动评估通过标准基准测试(如 IFEval)衡量模型的指令遵循能力和写作能力。人类评估则通过真实用户场景下的使用反馈,确保模型输出的有用性和无害性。

在摘要任务中,Apple 的设备端和服务器端模型均表现出色,生成的摘要在准确性、相关性和有用性方面优于其他可比模型。特别是在处理敏感内容和对抗性样本时,Apple 的模型展现出较高的鲁棒性和安全性。

责任性 AI 原则

Apple 在开发 AI 工具及其底层模型时,始终坚持责任性 AI 原则。这些原则包括:

  1. 赋能用户:识别 AI 可以负责任地用于创建满足用户特定需求的工具。
  2. 代表用户:构建能够真实反映全球用户的深度个性化产品,避免刻板印象和系统性偏见。
  3. 设计需谨慎:在设计、模型训练、功能开发和质量评估的每个阶段采取预防措施,防止 AI 工具被误用或造成潜在伤害。
  4. 保护隐私:通过强大的设备端处理和创新的基础设施(如 Private Cloud Compute)保护用户隐私。

Apple 的设备端和服务器端基础模型作为 Apple Intelligence 的核心组成部分,展示了强大的生成能力和广泛的应用潜力。通过持续的技术创新和优化,Apple 致力于为用户提供更加智能、高效和安全的个人智能体验。未来,Apple 计划分享更多关于其生成模型家族的信息,包括语言模型、扩散模型和编码模型等,进一步推动 AI 技术的发展和应用。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【系统响应慢排查所需命令】ps -ef、grep、jstat、pmap 、sort 、head 、jmap 、dump.hprof

列出所有进程,找到需要的进程id【ps -ef】 UID: 进程所属的用户 ID。 PID: 进程 ID。 PPID: 父进程 ID。 C: CPU 使用率。 STIME: 进程启动的时间。 TTY: 与进程关联的终端。 TIME: 进程占用的 CPU 时间。 CMD: 启动进程的命令。 假如是搜索功能缓慢&#x…

算法板子:分解质因数

目录 1. 质因数的概念 2. 代码 1. 质因数的概念 这道题的目的是找到x这个数的质因数的底数和指数。例如280这个数&#xff0c;可以看成2^3 * 5^1 * 7^1&#xff0c;其中2、5和7分别是三个质因数的底数&#xff0c;3、1、1分别是三个质因数的指数。 2. 代码 #include <io…

Java | Leetcode Java题解之第332题重新安排行程

题目&#xff1a; 题解&#xff1a; class Solution {Map<String, PriorityQueue<String>> map new HashMap<String, PriorityQueue<String>>();List<String> itinerary new LinkedList<String>();public List<String> findItine…

onnxruntime和tensorrt动态输入推理

onnxruntime动态输入推理 lenet的onnxruntime动态输入推理 导出下面的onnx模型&#xff1a; 可以看到&#xff0c;该模型的输入batch是动态的。 onnx动态输入推理&#xff08;python&#xff09;&#xff1a; import cv2 import numpy as np import onnxruntime from path…

AI 手机的技术展望

某某领导问到我&#xff0c;AI手机这个产业发展如何&#xff1f;对于&#xff0c;地方科技园区&#xff0c;应该如何发展相关产业&#xff1f;我一时还真说不上来&#xff0c;于是&#xff0c;查了一下资料&#xff0c;大概应对了一下。 一&#xff1a;AI手机的定义 首先&…

《车辆路径规划问题》专栏_安全提示3——关于抄袭并通过其本人有偿获取内容的安全提示

近期经粉丝反馈&#xff0c;咸鱼用户《白芷归露》 未经允许&#xff0c;盗用本人原创代码 &#xff1a; 【自适应大邻域算法(ALNS)求解MDHFVRPTW『Py』】 本人在此声明&#xff0c;此咸鱼号 非本博主运营&#xff0c;其行为与本人无关&#xff0c;如有在处上当受骗者&#xf…

【初阶数据结构题目】18.设计循环队列

设计循环队列 点击链接答题 思路&#xff1a; 循环队列&#xff0c;空间固定。 这里我们可以用数组来实现循环队列。 如何判断队列是否为满&#xff1f; 多申请一块空间 (rear1)%(k1) front 如何判断队列是否为空&#xff1f; rear front 代码&#xff1a; //定义循环队列的…

typora数学公式

typora是一款可以写markdown文档的软件&#xff0c;感兴趣的小伙伴可以看我的另一篇关于typora的文章&#xff1a;http://t.csdnimg.cn/6qkLt 以上是基本的数学公式。

Python | Leetcode Python题解之第331题验证二叉树的前序序列化

题目&#xff1a; 题解&#xff1a; class Solution:def isValidSerialization(self, preorder: str) -> bool:pre 1for i in preorder.split(,):if i.isdigit():if pre 0:return Falsepre 1else:if pre 0:return Falsepre - 1return pre 0

node安装及环境变量配置

1、安装node 安装地址 > https://nodejs.org/en/ 选择 LTS 长期维护的稳定版本 在电脑 window R cmd&#xff0c;打开终端命令行输入node -v 查看node版本&#xff0c;说明安装好了 vue3要求node版本至少是10.0以上 npm -v&#xff0c;安装了node之后本地会自动安装工具…

网创教程自动采集wordpress插件子比主题

网创教程自动采集wordpress插件子比主题 现在为 1.5.1版本 主要采集: 福缘&#xff0c;中创&#xff0c;冒泡 自动采集各大项目网进行整合发布到自己个人网站 傻瓜式操作&#xff0c;一次设置永久使用 变现手段&#xff1a; 卖网站会员 卖插件&#xff08;闲鱼一堆人在卖…

C Primer Plus第十一章编程练习第十一题详解

C Primer Plus第十一章第十一题详解 首先&#xff0c;分析一下要求以及如何对其进行实现&#xff0c;读入十个字符串或者读到文件结尾结束&#xff0c;然后提供一个含有5个选项的菜单分别以四种格式去打印字符串列表&#xff0c;以及退出&#xff0c;循环展示菜单&#xff0c;分…

leetcode-二叉树oj题-101.对称二叉树,572.另一颗子树,110.平衡二叉树-c

a、题目链接 101.对称二叉树 572.另一棵树的子树 110.平衡二叉树 一、题目讲解 101.对称二叉树 1、题目 给你一个二叉树的根节点 root &#xff0c; 检查它是否轴对称。 示例1&#xff1a; 输入&#xff1a;root [1,2,2,3,4,4,3 ] 输出&#xff1a;true 示例2&#xff1…

SpringMVC学习笔记---带你快速入门和复习

一、初识SpringMVC 1.1、什么是SpringMVC 1.1.1、什么是MVC MVC是一种软件架构模式&#xff08;是一种软件架构设计思想&#xff0c;不止Java开发中用到&#xff0c;其它语言也需要用到&#xff09;&#xff0c;它将应用分为三块&#xff1a; M&#xff1a;Model&#xff0…

PostgreSQL的学习心得和知识总结(一百五十)|[performance]更好地处理冗余 IS [NOT] NULL 限定符

目录结构 注&#xff1a;提前言明 本文借鉴了以下博主、书籍或网站的内容&#xff0c;其列表如下&#xff1a; 1、参考书籍&#xff1a;《PostgreSQL数据库内核分析》 2、参考书籍&#xff1a;《数据库事务处理的艺术&#xff1a;事务管理与并发控制》 3、PostgreSQL数据库仓库…

书生大模型实战营-基础关卡-1-书生大模型全链路开源体系

开源一周年 性能天梯 2.5能力概览 核心技术思路-模型能力飞轮 核心技术思路-高质量合成数据 大海捞针实验-全绿 解决复杂问题 开源模型谱系 开源生态 数据处理 预训练工具 微调工具 开源评测 部署工具 RAG

鸿蒙AI功能开发【hiai引擎框架-分词、实体抽取】 自然语言理解服务

介绍 本示例展示了使用hiai引擎框架提供的基于自然语言处理服务的分词、实体抽取功能。 本示例模拟了在应用里&#xff0c;输入一段文字&#xff0c;调用分词、实体抽取能力后得到的结果。 需要使用hiai引擎框架通用文字识别接口hms.ai.nlp.textProcessing.d.ts。 效果预览…

03 Canal HA原理及安装

1. Canal HA原理 Canal一般用于实时同步数据场景&#xff0c;那么对于实时场景HA显得尤为重要&#xff0c;Canal支持HA搭建&#xff0c;canal的HA分为两部分&#xff0c;canal server和canal client分别有对应的HA实现。大数据中使用Canal同步数据一般同步到Kafka中&#xff0…

最新虚拟试衣框架IMAGDressing模型部署

IMAGDressing是一个全新的虚拟试衣框架&#xff0c;它由南京理工大学、武汉理工大学、腾讯AI实验室和南京大学共同开发。 该项目旨在通过先进的技术提升消费者的在线购物体验&#xff0c;特别是通过虚拟试穿技术&#xff08;VTON&#xff09;来实现逼真的服装效果。 IMAGDres…

QT界面布局

目录 界面布局 静态布局 动态布局 界面布局 静态布局 静态布局指的是在设计时固定每个控件&#xff08;如按钮、文本框等&#xff09;的位置和大小&#xff0c;无论窗口大小如何变化&#xff0c;控件的位置和大小都不会改变。 动态布局 动态布局指的是控件的位置和大小可…