科技云报道:云原生是大模型“降本增效”的解药吗?

科技云报道原创。

在过去一两年里,以GPT和Diffusion model为代表的大语言模型和生成式AI,将人们对AI的期待推向了一个新高峰,并吸引了千行百业尝试在业务中利用大模型。

国内各家大厂在大模型领域展开了激烈的军备竞赛,如:文心大模型、通义千问、混元大模型、盘古大模型等等,这些超大规模的模型训练参数都在千亿以上,有的甚至超过万亿级。

即便训练一次千亿参数量模型的成本可能就高达数百万美元,但大厂们依然拼尽全力,除此之外也有很多行业企业希望拥有自己的专属大模型。

对于企业来说,要想在大模型的竞争中胜出,就必须充分利用算力,并且构建高效稳定的服务运行环境,这就对IT基础设施能力提出了更高的要求。

而云原生正是比拼的重要一环。云原生技术的自动化部署和管理、弹性伸缩等功能,能够有效提高大模型应用效率并降低成本。

据Gartner预测,2023年70%的AI应用会基于容器和Serverless技术开发。在实际生产中,越来越多的AI业务,比如自动驾驶、NLP等,也正在转向容器化部署。

那么,云原生是如何帮助大模型降本增效,在这个过程中又遇到了哪些挑战?
在这里插入图片描述
云原生成为大模型的标配

近年来,容器和Kubernetes已经成为越来越多AI应用首选的运行环境和平台。

一方面,Kubernetes帮助用户标准化异构资源和运行时环境、简化运维流程;另一方面,AI这种重度依赖GPU的场景可以利用K8s的弹性优势节省资源成本。

随着大模型浪潮的到来,以云原生环境运行AI应用正在变成一种事实标准。

弹性伸缩与资源管理

大模型训练往往需要大量的计算资源,而云原生环境通过容器化和编排工具可以实现资源的弹性调度与自动扩缩容。

这意味着在大模型训练过程中可以迅速获取所需资源,并在任务完成后释放资源,降低闲置成本。

分布式计算支持

云原生架构天然支持分布式系统,大模型训练过程中的并行计算需求可以通过云上的分布式集群轻松实现,从而加速模型收敛速度。

微服务架构与模块化设计

大模型推理服务可以被分解为多个微服务,比如预处理服务、模型加载服务和后处理服务等,这些服务能够在云原生环境中独立部署、升级和扩展,提高系统的可维护性和迭代效率。

持续集成/持续部署(CI/CD)

云原生理念强调快速迭代和自动化运维,借助CI/CD流程,大模型的研发团队能够以更高效的方式构建、测试和部署模型版本,确保模型更新的敏捷性。

存储与数据处理

云原生提供了多种数据持久化和临时存储解决方案,有助于解决大模型所需的大量数据读取和写入问题。

同时,利用云上大数据处理和流式计算能力可以对大规模数据进行有效预处理和后处理。

可观测性和故障恢复

在云原生环境下,监控、日志和追踪功能完善,使得大模型服务的状态更加透明,遇到问题时能更快地定位和修复,保证服务高可用性。

总体而言,云原生架构的诸多优势契合了大模型在计算密集、数据驱动、迭代频繁等方面的需求,能够为大模型带来成本、性能、效率等多方面的价值,因而成为大模型发展的标配。

大模型对云原生能力提出新挑战

尽管云原生对于大模型有着天然的优势,但是面对LLM、AIGC这样的新领域,依然对云原生能力提出了更多挑战。

在训练阶段,大模型对计算、存储、网络等基础架构的要求都更高。

规模上,要训练出具有广泛知识和专业领域理解及推理能力的大语言模型,往往需要高达万卡级别的GPU集群和PB级的数据存储以及TB级的数据吞吐。

此外,高性能网络也将达到单机800Gbps甚至3.2Tbps的RDMA互联。

性能方面,随着模型体积和参数量的增长,单张显卡已无法承载完整的模型。因此需要使用多张显卡进行分布式训练,并采用各种混合并行策略进行加速。

这些策略包括数据并行、模型并行、流水线并行以及针对语言模型的序列并行等,以及各种复杂的组合策略。

在推理阶段,大模型需要提供高效且稳定的推理服务,这需要不断优化其性能,并确保服务质量(QoS)得到保证。

在此基础上,最重要的目标是提高资源效率和工程效率。一方面,持续提高资源利用效率,并通过弹性扩展资源规模,以应对突发的计算需求。

另一方面,要最优化算法人员的工作效率,提高模型迭代速度和质量。

由此可见,大模型对云原生技术提出了新的能力要求:

一是,统一管理异构资源,提升资源利用率。

从异构资源管理的角度,对IaaS云服务或者IDC内的各种异构计算(如 CPU,GPU,NPU,VPU,FPGA,ASIC)、存储(OSS,NAS, CPFS,HDFS)、网络(TCP, RDMA)资源进行抽象,统一管理、运维和分配,通过弹性和软硬协同优化,持续提升资源利用率。

在运维过程中,需要多维度的异构资源可观测性,包括监控、健康检查、告警、自愈等自动化运维能力。

对于宝贵的计算资源,如GPU和NPU等加速器,需要通过各种调度、隔离和共享的方法,最大限度地提高其利用率。

在此过程中,还需要持续利用云资源的弹性特征,持续提高资源的交付和使用效率。

二是,通过统一工作流和调度,实现 AI、大数据等多类复杂任务的高效管理。

对于大规模分布式AI任务,需要提供丰富的任务调度策略,如Gang scheduling、Capacity scheduling、Topology aware scheduling、优先级队列等,并使用工作流或数据流的方式串联起整个任务流水线。

同时,需兼容Tensorflow,Pytorch,Horovod,ONNX,Spark,Flink等各种计算引擎和运行时,统一运行各类异构工作负载流程,统一管理作业生命周期,统一调度任务工作流,保证任务规模和性能。

一方面不断提升运行任务的性价比,另一方面持续改善开发运维体验和工程效率。

此外,在计算框架与算法层面适配资源弹性能力,提供弹性训练和弹性推理服务,优化任务整体运行成本。

除了计算任务优化,还应关注数据使用效率的优化。为此,需要统一的数据集管理、模型管理和访问性能优化等功能,并通过标准API和开放式架构使其易于被业务应用程序集成。

对于大模型还有一个主要能力,就是能够在分钟级内准备好开发环境和集群测试环境,帮助算法工程师开始执行深度学习任务。

把端到端的 AI 生产过程通过相同的编程模型、运维方式进行交付。

结语

随着大模型等AI技术的不断发展,云原生技术将面临一些新的挑战和需求。例如,如何快速适应新的开源大模型训练方法,以及如何提高大模型推理性能并确保其质量和稳定性。

同时,也需要关注一些前沿技术和创新能力,通过标准化和可编程的方式来集成,不断迭代业务应用,形成 AI+ 或 LLM+ 的新应用开发模式和编程模型。

但无论技术如何发展,为大模型提供快速、准确、稳定且成本可控的服务,保证大模型训练和推理的成本、性能和效率,都将成为企业为其价值买单的根本。

【关于科技云报道】

专注于原创的企业级内容行家——科技云报道。成立于2015年,是前沿企业级IT领域Top10媒体。获工信部权威认可,可信云、全球云计算大会官方指定传播媒体之一。深入原创报道云计算、大数据、人工智能、区块链等领域。

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

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

相关文章

【鸿蒙系统学习笔记】ArkTS开发语言

一、背景 ArkTS是HarmonyOS优选的主力应用开发语言。ArkTS围绕应用开发在TypeScript(简称TS)生态基础上做了进一步扩展,继承了TS的所有特性,是TS的超集。 二、基本语法 2.1、基本语法介绍 ArkTS的基本组成,资料来自…

AI专题:AI浪潮,海外日新月异,国内奋力追赶

今天分享的是AI系列深度研究报告:《AI专题:AI浪潮,海外日新月异,国内奋力追赶》。 (报告出品方:方正证券) 报告共计:24页 来源:人工智能学派 智算三方面奠基生产力革…

STM32学习笔记(七) —— DMA传输(MTM)

DMA,全称是Direct Memory Access(直接内存访问)。可以在存储器和存储器之间或者外设和存储器之间传输数据,而不需要CPU的干预,这样可以节省CPU的资源,提高工作效率。 1.功能框图 STM32F103RCT6有两个DMA控…

力扣773. 滑动谜题(BFS)

Problem: 773. 滑动谜题 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 由于题目提到最小步数,则可以使用BFS来穷举出最小的结果 1.转换为BFS问题:由于0代表空着的可以移动的位置,所以我们只需要从当前位置和0的相邻位置移动从而转…

代码随想录刷题笔记-Day20

1. 二叉树的最近公共祖先 236. 二叉树的最近公共祖先https://leetcode.cn/problems/lowest-common-ancestor-of-a-binary-tree/ 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q&#x…

ARM体系在linux中的中断抢占

上一篇说到系统调用等异常通过向量el1_sync做处理,中断通过向量el1_irq做处理,然后gic的工作都是为中断处理服务,在rtos中,我们一般都会有中断嵌套和优先级反转的概念,但是在linux中,中断是否会被其他中断抢…

Cannot invoke “java.sql.Connection.prepareStatement(String)“ because “conn“

下载sqlite-jdbc,放在目录下,然后IDEA右键jar文件选择“加入库”即可解决 Central Repository: org/xerial/sqlite-jdbc/3.36.0.1

JavaScript 的location 对象API 介绍

JavaScript 中,location 对象提供了访问当前页面 URL 相关信息的属性和方法。通过 location 对象,我们可以获取当前页面的 URL、查询参数、锚点等信息,并且可以使用 JavaScript 来修改当前页面的 URL。 以下是一些 location 对象的常用属性和…

设计模式二:代理模式

1、什么是动态代理 可能很多小伙伴首次接触动态代理这个名词的时候,或者是在面试过程中被问到动态代理的时候,不能很好的描述出来,动态代理到底是个什么高大上的技术。不方,其实动态代理的使用非常广泛,例如我们平常使…

学习求余

题目描述 白浅妹妹今天学习了求余运算,她很好奇求余运算和乘法运算结合起来会是什么样子,于是她设计了这样一道题目。 给定数字 n,你可以任选一个数字 k(1 ≤ k ≤ n),然后计算出 n%k 的值(其中% 为求余运算),记为 q…

php伪协议之phar

一.phar协议 用于将多个 PHP 文件、类、库、资源(如图像、样式表)等打包成一个单独的文件。这个归档文件可以像其他 PHP 文件一样被包含(include)或执行。PHAR 归档提供了一种方便的方式来分发和安装 PHP 应用程序和库&#xff0c…

【RT-DETR有效改进】可变形大核注意力 | Deformable-LKA适用于复杂背景或不同光照场景

👑欢迎大家订阅本专栏,一起学习RT-DETR👑 一、本文介绍 本文给大家带来的改进内容是Deformable-LKA(可变形大核注意力)。Deformable-LKA结合了大卷积核的广阔感受野和可变形卷积的灵活性,有效地处理复杂的视觉信息。这一机制通过动态调整卷积核的形状和大小来适…