从苹果智能看端上大模型应用

news2024/11/23 13:36:36

将生成式人工智能集成到边缘设备本身就是一个重大挑战,我们需要在智能手机和计算机有限的计算能力和内存范围内高效地运行高级模型。确保这些模型运行迅速,而不会耗尽电池寿命或使设备过热,端上的局限增加了大模型应用的复杂性。此外,保护用户隐私至关重要,需要 AI 在不依赖云服务器的情况下在本地处理数据。

今年,苹果已经通过引入苹果智能来应对这些挑战。这个新系统将复杂的人工智能直接带到设备上,同时保持高隐私标准。透过苹果智能, 我们或许可以进一步探索端上大模型应用的实现路径。

8c0723b7a483d4f6189c92cd69df8013.jpeg

1.苹果智能的核心特征

苹果智能的核心特征是为苹果设备赋能了高生产力的能力工具,并且提升了Siri 的AI 能力。

1.1 提高生产力的人工智能工具

像 iPhone、 iPad 和 Mac 这样的苹果设备现在配备了一系列以人工智能为动力的工具,旨在提高生产力和创造力。例如:

  • 写作与沟通: 苹果的预测性文本功能已经进化到可以更好地理解上下文,并提供更准确的建议。这使得写电子邮件或信息更快,更直观。此外,人工智能与通信应用程序集成,根据收到的信息建议回应,节省时间,并提高了沟通的质量。

  • 图像创建和编辑: 照片应用程序使用先进的机器学习来智能组织照片和建议编辑。对于创作者来说,像照片和视频中的实时文本这样的功能使用人工智能来检测图像中的文本,允许用户像输入文本一样与文本进行交互。这对于快速提取信息而无需手动输入数据特别有用。 

013758e986843b0e341ac5d7e6302cb0.jpeg

1.2 让 Siri 具备先进的人工智能能力

Siri 的人工智能能力得到了重大提升,使其比以往更加智能化和多功能化。这些改进旨在使 Siri 成为各种苹果设备上更积极主动、更有帮助的助手。

  • 丰富的语言理解能力: Siri 理解和处理自然语言的能力得到了显著的提高。这种改进使 Siri 能够处理更复杂的查询,并提供更准确的响应,模仿用户之间更自然的对话流程。

  • 屏幕感知: Siri 现在能够根据屏幕上显示的内容来理解上下文。这个特性允许用户提出与当前正在查看的内容相关的请求,而无需过于具体,从而使交互更加顺畅和直观。

  • 跨应用程序行动: 也许最重要的更新之一是 Siri 增强了在多个应用程序间执行操作的能力。例如,可以让 Siri 通过一个拼车应用程序预订车程,然后通过一个消息应用程序将预计到达时间发送给一个朋友,所有这些都是通过语音命令。

这种跨不同平台和服务的集成水平简化了复杂的任务,使 Siri 成为多任务处理的强大工具。

2. 苹果智能背后的技术创新

苹果在其设备上对人工智能能力的战略部署,得到了确保性能和用户隐私得到优化的重大技术创新的支持。这些进步在其双模型结构、新的后训练算法的应用以及提高效率和准确性的各种优化技术方面尤为明显。

058a7f510baa63d6a6c1a2c37ddf2048.jpeg

2.1 双模型架构: 平衡在设备和基于服务器的处理

苹果采用了一种称为双模型架构的复杂方法,以最大限度地提高人工智能应用的性能和效率。这个架构巧妙地将任务划分为设备上处理和基于服务器的资源,利用每个环境的优势:

  • 端上处理: 这是为需要立即响应或涉及必须保留在设备上的敏感数据的任务设计的。设备上的模型是一个约30亿参数的语言模型,经过微调可以有效地执行任务。这个模型擅长于书写和提炼文本,汇总通知,创建图像,以及其他任务,确保快速和负责任的人工智能交互

  • 基于服务器的处理: 更复杂或者时间敏感性更低的任务在云中处理,苹果可以在云中使用更强大的计算资源。这种设置用于 Siri 基于深度学习的语音识别等任务,在这些任务中,可以快速分析大量数据集,以便更有效地理解和预测用户查询。

这两个处理之间的协同作用使苹果能够优化性能和电池寿命,同时保持强大的数据隐私保护。

2.2 新颖的后训练算法

在最初的模型训练之后,苹果已经实施了后训练算法,以增强其 AI 模型的指令跟踪能力。这些算法提高了模型更精确地理解和执行用户命令的能力,显著改善了用户体验。

Teacher Committee拒绝抽样微调算法(Rejection Sampling Fine-Tuning Algorithm )

在后训练阶段采用的创新算法之一是拒绝采样微调算法,这种技术利用多个专家模型(Teacher)的见解来监督人工智能的微调。这个committee 确保人工智能只采用最有效的行为和反应,提高了它准确和有效地遵循指令的能力。这导致了一个完善的学习过程,通过强化预期的结果来提高性能。

人工反馈的强化学习算法(RLHF)

另一个基石来自RLHF。这种技术将人类的洞察力集成到人工智能训练循环中,利用最小下降策略优化并采用留一法优势估计器。通过这种方法,人工智能直接从人工反馈中学习,不断地调整和完善自己的响应。这不仅提高了人工智能的准确性,而且确保其产出具有上下文相关性并真正有用。RLHF 算法有助于人工智能的输出与人类偏好保持一致,使每个交互更加直观和有效。

纠错算法

这些算法的目的是从识别部署后的错误中学习。通过不断分析交互,模型自我改进,随着时间的推移,对用户查询提供越来越准确的响应。

2.3 边缘器件的优化技术

为了确保人工智能模型在硬件有限的边缘设备上表现良好,苹果开发了几种优化技术,提高了效率和准确性:

  • Low-Bit Palletization: 这项技术包括减少人工智能模型所使用的数据的位宽度。通过将数据转换成低位格式,所需的内存量减少,从而显著加快计算速度,同时保持准确性。这对于处理能力或电池寿命有限的设备尤其重要。

  • 共享嵌入张量: 苹果使用共享嵌入张量来减少人工智能模型不同部分相似数据的重复。通过共享嵌入,模型可以通过重用相似类型数据的学习表示来更有效地运行。这不仅减少了模型的内存占用,而且加快了边缘设备上的处理时间。

这些技术策略是苹果致力于平衡性能、效率和隐私的更广泛承诺的一部分。通过不断推进这些领域,苹果确保其设备不仅功能强大、智能化,而且在数据完整性和安全性方面得到用户的信任。

cdb85b993aa3328c463f74e40ae313d7.jpeg

此外,苹果还特别强调了用户隐私。苹果的方法围绕着专利技术展开,这些技术可以在不损害隐私的前提下增强用户体验。通过采用双模型架构,苹果公司利用其 M 系列芯片的功能,确保面部识别和个人数据处理等敏感操作完全在设备上进行。这种方法不仅可以通过减少延迟来提高性能,而且还可以通过最小化数据公开来增强用户的信任。

苹果的战略还包括与其他合作伙伴整合,例如 OpenAI, 允许用户直接从他们的设备访问 ChatGPT。这种集成可以作为第三方设备上的AI应用生态,增强用户体验,并扩大苹果的生态系统。这个策略不仅仅是为了提高苹果设备的性能,也是为了确保你对你的数据处理方式感到安全和自信。

通过苹果智能可以看到,在智能手机、物联网设备和嵌入式系统等边缘设备上部署 LLM 应用程序可以带来显著的好处,包括减少延迟、增强隐私和离线功能等。那么, 在端设备上部署大模型应用有什么一般方法么?

3. 端设备的AI 应用考量

端设备是在生成数据的位置执行数据处理的硬件设备,例如智能手机、物联网设备和嵌入式系统。与云计算相比,边缘计算提供了几个优势,例如减少延迟、增强隐私以及离线操作的能力。然而,在边缘设备上部署应用程序存在挑战,包括有限的计算资源和功耗限制。

在部署设备上的 AI 应用程序之前,可能需要考虑以下两个因素:

  1. 应用用例和需求: 理解 LLM 应用的特定用例及其性能需求。这有助于选择合适的模型和优化技术。

  2. 数据隐私和安全: 确保部署符合数据隐私和安全规则,特别是在处理边缘设备上的敏感信息时。

为边缘部署选择正确的语言模型需要平衡性能和资源限制,以下是需要考虑的关键因素:

  • 模型大小和复杂度: 较小的模型通常更适合于边缘设备。这些设备的计算能力有限,所以一个更轻的模型确保更顺利的操作。选择那些在尺寸和性能之间取得平衡的型号,使它们在不牺牲太多精确性的情况下有效率。

  • 性能要求: 选择的模型必须满足应用程序的准确性和响应性需求,这意味着它应该能够迅速交付精确的结果。虽然边缘设备可能无法处理最大的模型,但是要确保所选的 LLM 足够有效,以便在目标设备上有效运行。优先考虑为速度和资源使用而优化的模型,同时不影响产出质量。

总之,用于设备上 AI 部署的正确语言模型应该紧凑而强大,并且适合应用程序的特定性能需求。平衡这些因素是成功部署的关键。

4. 端设备上的模型优化技术

对有效地在端上部署大模型应用而言,大模型优化技术举足轻重。

1. 量化

量化降低了模型权重的精度。通过使用较低的精度(例如,将32位浮点数转换为8位整数) ,内存使用和计算需求显著降低。这种减少导致了更快的推断和更低的功耗,使量子化成为在边缘设备上部署 LLM 的流行技术。

2. 裁剪

裁剪涉及删除模型中多余或不太重要的神经元和连接。通过消除这些部分,模型的大小减少,导致更快的推理时间和更低的资源消耗。修剪有助于维护模型性能,同时提高边缘部署的效率和可管理性。

3. 知识蒸馏

在这种技术中,一个较小的模型(学生)被训练来模仿一个更大、更复杂的模型(老师)的行为。学生模型学习复制教师模型的输出,保留大部分原始的准确性,同时更有效率。这种方法允许在边缘设备上部署紧凑、高性能的模型。

4. LoRA和 QLoRA

LoRA(解读LoRA)及其变体 QLoRA 是为了在保持性能的同时对模型进行自适应和压缩而设计的技术。LoRA 包括将模型的权矩阵分解为低维矩阵,减少参数的数量而不显著影响精度。QLoRA 进一步量化这些低维矩阵,提高效率。这些方法支持在资源受限的边缘设备上部署健壮的模型。

d2811e001452f434860e8a63ba8335b4.jpeg

5. 端设备的软硬件要求

端上的大模型应用需要特定的硬件和软件能力,以确保顺利和有效的操作。

5.1 硬件要求

要顺利地在设备上运行 AI 应用程序,需要确保硬件符合某些标准:

  • 计算能力: 设备应该有一个强大的处理器,有多个核,以处理 LLM 推理的需求。具有专门 AI 加速器的设备,如 GPU 或 NPU,是非常有益的。

  • 内存: 足够的 RAM 是至关重要的,因为 LLM 需要大量的内存来加载和处理数据。内存有限的设备可能很难运行更大的模型。

  • 存储: 需要足够的存储容量来存储模型和任何相关数据。闪存或 SSD 更适合于更快的读写速度。

5.2 软件工具和框架

正确的软件工具和框架对于在设备上部署 AI 至关重要。这些工具有助于模型优化、部署和推理。主要工具和框架包括:

  • TensorFlow Lite: 为移动和边缘设备设计的 TensorFlow 的轻量级版本。它对模型的大小和延迟进行了优化,使其适合于资源受限的环境。

  • ONNX 运行时: 一个开源运行时,允许在多个平台上有效地运行在各种框架中训练的模型。它支持广泛地优化,以提高边缘设备的性能。

  • PyTorch Mobile: 专为移动和嵌入式设备定制的 PyTorch 版本。它提供了优化和部署模型的工具,确保它们在边缘高效运行。

  • AI SDK: 许多硬件制造商提供专门的 SDK 用于在他们的设备上部署人工智能模型。这些 SDK 针对硬件进行了优化,并为模型部署和管理提供了额外的工具。

6. 端上的大模型应用部署策略

从AI工程师的角度来看,在端设备上部署大模型带来了独特的挑战和机遇。有效的部署策略对于确保最佳性能、资源管理和用户体验至关重要,可能有三种主要策略: 端上推理、混合推理和模型分区。

917a5cee3f75d837f4f0c87f6d9eb78e.jpeg

6.1 端上推理

端上推理涉及到直接在边缘设备上运行整个 LLM。这种方法提供了几个重要的优势,特别是在 LLM 应用程序的延迟、隐私和脱机能力方面。

端上推理消除了与远程服务器交互所需要的响应时间。这对于诸如语音助手和交互式用户界面等实时应用程序至关重要。通过在本地运行模型,应用程序可以在没有 Internet 连接的情况下运行。这对于远程地区或连接不可靠的场景非常重要。同时,减少了传输过程中数据泄露的风险。这对于医疗保健或金融服务等敏感应用程序尤其重要。

与云服务相比,端设备通常具有有限的计算能力、内存和存储空间。工程师必须优化模型以适应这些约束条件,同时不显著影响性能。密集的计算可以快速耗尽电池寿命,特别是在便携式设备上。

平衡性能和能源效率至关重要,诸如量化、裁剪和蒸馏等技术对于减少模型的大小和计算需求是必不可少的。利用类似 TensorFlow Lite 或 PyTorch Mobile 这样的框架,这些框架针对移动和嵌入式设备进行了优化,可以显著提高性能。

6.2 混合推理

混合推理利用端资源和云资源来平衡性能和资源约束。该策略包括在边缘设备上运行模型的一部分,以及在云服务器上运行模型的一部分。通过将资源密集型计算卸载到云中,混合推理减轻了边缘设备的负担,从而能够部署更复杂的模型。可以根据需求动态扩展云资源,为不同的工作负载提供灵活性和健壮性。即时的、对延迟敏感的任务可以在本地处理,而更复杂的处理可以由云处理。

混合推理的性能取决于网络连接的质量和可靠性。网络延迟或中断会影响用户体验。把数据传送到云端会构成私隐风险,要确保数据传输和储存的安全。

工程师需要从策略上对模型进行分割,确定哪些部分应该在边缘运行,哪些部分应该在云中运行。最小化边缘和云之间传输的数据量,以减少延迟和带宽使用。数据压缩和智能缓存等技术可能是有益的。需要实现降级机制,以优雅地处理网络故障,确保应用程序在连接丢失时仍能正常工作。

6.3 模型分区

模型分区涉及到将 LLM 分割成更小的、可管理的段,这些段可以分布在多个设备或环境中。这种方法可以提高效率和可伸缩性。通过将模型分布在不同的设备上,平衡了计算负载,使得在资源受限的边缘设备上运行更复杂的模型成为可能。模型的不同部分可以独立优化,允许基于每个设备的能力进行定制优化。模型分区促进了可伸缩性,支持跨不同硬件配置部署大型模型。

对模型进行分区需要仔细的规划和工程设计,以确保各部分之间的无缝集成和通信。不同模型段之间的通信会引入延迟。工程师必须优化段间通信以尽量减少这种开销。确保模型段之间的一致性和同步对于维护整个模型的性能和准确性变得非常重要。

一般地,需要确定模型中的逻辑点,在这些逻辑点中可以对模型进行分区,而不会造成显著的性能损失。这可能涉及根据计算需求分离不同的层或组件。使用有效的通信协议,以尽量减少延迟,并确保可靠的数据传输之间的模型段。根据每个设备的能力优化资源分配,确保每个段有效运行。

6.4 实现端上大模型的一般步骤

在端设备上部署大模型应用的一般步骤如下:

  1. 准备开发环境: 为开发建立必要的工具和框架。

  2. 优化模型: 应用优化技术使模型适合边缘部署。

  3. 与边缘设备软件集成: 确保模型可以与设备的软件和硬件交互。

  4. 测试和验证: 在边缘设备上对模型进行彻底测试,以确保其满足性能和准确性要求。

  5. 部署和监视: 将模型部署到端设备并监视其性能,根据需要进行调整。

7. 一句话小结

端上的 AI 应用可以通过提供快速、高效和私有 AI 功能来显著提高用户体验,利用优化技术和部署策略,我们可以尝试在端上成功地实现大模型应用,苹果智能为我们提供了有益的参考。

【关联阅读】

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

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

相关文章

LeetCode 算法:杨辉三角 c++

原题链接🔗:杨辉三角难度:简单⭐️ 题目 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows 5 输出: [[1],[1,1],[1,2,1]…

关于异常断电后jmeter的jmx文件异常变成二进制文件并成功恢复的心酸历程

今日下午正在编写jmeter接口,正在调试中,突然断电(由于四川高温,导致电力紧缺的很),来电了后我正常启动电脑,打开后,赶紧打开jmeter,并打开最近打开的文件,我…

『功能项目』怪物受击的动画事件【10】

我们打开上一篇09着色器光透魔法球的项目, 本章要做的事情是在场景中创建一个怪物对象,当怪物被主角的魔法球击中后播放受击动画效果,此类技术用到动画事件帧,在动画上创建脚本。 首先打开资源商店选择一个免费资源的怪物模型加载…

静态ISP代理IP适合什么应用场景?

随着互联网的普及和发展,越来越多的设备和应用需要接入网络。在这些情况下,动态主机配置协议 (DHCP) 成为一种常见的选择,因为它会自动为客户端分配 IP 地址。然而,在某些特定场景下,静态 IP 地址 (ISP) 可能是更好的选…

哈夫曼树例题

从这道题可以看出需要构建哈夫曼树 构造哈夫曼树如下 9和5最小,构成左右树,二者之和是14,放入数组,5和9从数组去掉 14和16最小,构成左右树,二者之和是30,放入数组,14和16从数组去…

基于yolov8的玻璃瓶塑料瓶检测系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的玻璃瓶塑料瓶检测系统是一个利用深度学习技术的先进解决方案,专注于对图像、视频或实时摄像头流中的玻璃瓶和塑料瓶进行快速准确的检测与定位。该系统通过YOLOv8这一高效的目标检测算法,能够在多种应用场景下展现卓越的性能。…

Java面试题·解释题

系列文章目录 总章 Java解释题 文章目录 系列文章目录前言面向对象编程是什么?Java的跨平台原理Java的安全性Java的三大版本Java开发运行过程什么是JVM?什么是JDK?什么是JRE?JDK,JRE,JVM三者关系概括Java的数据类型?J…

有没有比较好用的在线翻译工具?实力推荐这4款。

当我们面对外文资料时,可能需要翻阅厚重的词典,耗费大量的时间和精力。在翻译这方面,很多人都十分依赖翻译工具的,因为这些工具只需几秒钟就能给出翻译结果,提高了我们的学习和工作的效率。但是随着翻译工具越来阅读&a…

灵感枯竭?ChatGPT助你轻松完成开题报告!

在学术探索的征途中,撰写论文开题报告是一项至关重要的初步工作。这项工作不仅标志着您研究旅程的起点,也是展现您研究思路和方法论的关键时刻。ChatGPT,作为一款前沿的人工智能工具,将以其深度学习能力,成为您学术探索…

【大模型系列篇】预训练模型:BERT GPT

2018 年,Google 首次推出 BERT(Bidirectional Encoder Representations from Transformers)。该模型是在大量文本语料库上结合无监督和监督学习进行训练的。 BERT 的目标是创建一种语言模型,可以理解句子中单词的上下文和含义&…

数学问题+贪心

前言:一开始我想的就是我每次都设置一个cnt记录每次增加量,后面都增加这个量,但是发现我忘记要把这个量先加到后面的元素上面去 正确的做法就是每次 a [ i ] > a [ i − 1 ] a[ i ] > a[ i-1 ] a[i]>a[i−1] 的时候再进行处理&…

量化交易backtrader实践(四)_评价统计篇(3)_更多评价与可视化

前情回顾 在第(1)节中,我们对于backtrader内置的评价指标一个接一个的进行了实践测试,其中第10个是金融投资组合分析库 - pyfolio,当时我们先去实践了Analyzer中的pyfolio指标(其实就是03,07,08&#xff0…

Python TensorFlow入门与实践

摘要 本文旨在详细介绍如何使用Python和TensorFlow进行基本的深度学习任务。我们将从安装TensorFlow开始,逐步讲解如何创建简单的神经网络模型,并通过一个具体的示例来演示如何训练模型。此外,我们还将讨论一些高级主题,如卷积神…

“长风破浪”计划创作营圆满结营 9月10日“2024华韵视听大会”佛山见

8月26日,“长风破浪”青年音乐人唱享计划与青年影视人扶持计划创作营在佛山高明皂幕山上圆满结营。首季创作营历时一周,在高强度的创作中,20位青年影视人和音乐人群策群力,超额完成任务,共创两首歌曲、一部微短剧及一部…

Wails实现桌面番茄钟应用

0.项目背景 最近在优化自己的工作流,在工作方法上开始使用番茄钟来实现时间控制,一直觉得番茄钟的方式有点silly,直到自己用过之后才发现,番茄钟是真的好用,它不止是工作的方法,更是休息的艺术&#xff0c…

流程图还不会画?这个AI工具一键出图,还有上万模版库可选

我是娜姐 迪娜学姐 ,一个SCI医学期刊编辑,探索用AI工具提效论文写作和发表。 流程图的绘制在工作中很常见。大家在写论文、课题申请等经常会用到需要绘制技术路线、工作流程、病人筛选流程等。 有没有AI工具能够根据我们的描述文字,一键生成流…

aspeed2600 openbmc对mctp over pcie的支持分析(支持mctp over pcie)

遍搜全网,竟然关于openbmc mctp over pcie的支持说明情况了无文章,这不是一个艰难的问题,服务器BMC也不是一个超级精尖的产品,想当年分享stm32资料,都是满天飞。可能服务器市场大家对于文章上的分享并无兴趣。 此篇文…

网络安全总结②

上一篇:网络安全总结① 下一篇: 传统防火墙 传统防火墙 技术:访问控制、代理技术、会话机制 工作层次:应用层一下 防御模式:通过防御设备划分边界,基于IP/端口和特征进行判断;以隔离为基础&am…

【Spring Boot 3】自定义拦截器

【Spring Boot 3】自定义拦截器 背景介绍开发环境开发步骤及源码工程目录结构总结背景 软件开发是一门实践性科学,对大多数人来说,学习一种新技术不是一开始就去深究其原理,而是先从做出一个可工作的DEMO入手。但在我个人学习和工作经历中,每次学习新技术总是要花费或多或…

茶余饭后(六)

有人孤立你,证明你强大;有人嫉妒你,证明你出众;有人诋毁你,证明你有能力;有人议论你,证明你有价值;有人利用你,证明你有能力。所以原谅那些诋毁你的人,至少他…