当前位置: 首页 > news >正文

新华三通用大模型算力底座方案:为AI时代注入强大动力

在人工智能技术日新月异的今天,大模型作为推动AI进步的重要驱动力,是百行百业不断追逐的热点。大模型以其强大的泛化能力、卓越的模型效果和广泛的应用场景,正改变着人工智能的未来。作为国内领先的ICT解决方案提供商,新华三集团凭借其在算力服务器、无损网络、高性能存储和算力调度平台等领域的丰富经验和技术实力,推出了新华三通用大模型算力底座方案,旨在为AI时代注入强大动力。

大模型发展的机遇与挑战

大模型是指具有大量参数的机器学习模型,不同领域内,大模型的参数量级有所不同:自然语言(NLP)类模型,普遍认为超过50亿(5B)参数才算是大模型;而要达到与ChatGPT相仿的能力一般需千亿规模(100B)参数,例如我们常提到的GPT-3(175B)就属于生成式语言模型;而计算机视觉(CV)类模型,目前50亿(5B)参数的就属于大模型级别了。

大模型的优势在于其强大的泛化能力,通过在海量数据上进行预训练使得大模型能够学习到大量通用知识、捕捉到更多细节,这使得大模型在面临新的任务时,只需要进行微调就能迅速适应,从而在具体任务中取得更好的表现;同时,大模型还具有广泛的应用场景,从文本生成、机器翻译到图像识别、语音识别,大模型都能发挥重要作用。

大模型关键技术支撑

大模型业务分为预训练、微调、推理三个主要阶段,每个阶段具体内容如下图所示:
在这里插入图片描述

大模型训练技术简述:
一、并行策略选择:

大模型多机并行训练时,大部分会用到模型并行和数据并行策略,少部分会用到专家并行策略;模型并行又分为张量并行和流水线并行,以下仅对常用的三种并行策略进行简要说明:

1、张量并行:
在这里插入图片描述
将模型进行层内切分,每张GPU保存模型同一层的部分参数,所有GPU共享同一批数据;模型参数进行层内切分后部署不同的设备,在前向和反向过程中都需要接收其他设备产生的结果(点对点Send/Recv),同时每 个设备的梯度同样需要聚合后再分发给各个设备进行模型参数更新(AllReduce);通信量与模型规模正相关,单卡可达10GB+,一个Step一次通信。

2、流水线并行:
在这里插入图片描述
将模型进行层间切分,每张GPU保存模型的部分层,同时将Mini Batch划分为若干Micro Batch传入流水线;通过层间切分位置(边界层)点对点Send/Recv同步激活与梯度,正向传激活,反向传梯度;通信量与层间交互相关,一般在MB级别,一Step几十次通信。

3、数据并行:
在这里插入图片描述
相同的模型分布在不同的GPU/计算节点/计算集群上,对数据集进行切分后并行计算;训练时每台设备负责处理不同的mini-batch,由此会产生不同的梯度,系统会将不同设备产生的梯度聚合到一起,计算均值, 再分发给各个设备进行模型参数更新,通信开销主要来源于梯度的聚合和分发,Allreduce同步矩阵乘结果;通信量与batchsize有关,矩阵可达GB级别,一个Step几十次通信。

二、多机训练过程简述:

如下图所示,每个计算POD之间是数据并行,每个POD内部,单台机器内部是张量并行,多台机器之间是流水线并行,下面的示意图是进行一轮Epoch训练的过程。

在这里插入图片描述
第一步,数据并行:数据集按照POD数量拆分后作为样本输入,并行传入到多个模型副本当中。

第二步,张量并行:切分后的每份模型,在第一台机器内部,按照多张GPU执行顺序进行张量并行计算,期间进行多次数据集合运算。

第三步,流水线并行:第一台机器内部的GPU计算完成后通过流水线并行传输到第二台机器的GPU当中,传输的数据为上一台GPU计算的结果(实际会更复杂)。

第四步,重复进行张量并行和流水线并行,直到单一计算POD内的最后一台GPU服务器完成了数据集合运算。

第五步,权重同步:所有计算POD内的多个模型副本在完成一轮Epoch计算后,采用数据并行进行一次全量的权重同步,之后开始进行下一轮Epoch训练,直到收敛为止。

大模型推理技术简述:

在这里插入图片描述
如上图所示,推理服务经程序封装后可看作是需要GPU运行的应用程序,推理服务不持久化数据,所以服务可重入,若需要对推理结果进行沉淀,需要用大数据的手段在服务之外进行API分流监控;由于应用程序无状态,可进行应用程序的负载均衡,以提升推理的并发能力,此部分和普通应用相同;基础设施故障后,应用可以根据策略迁移到其他设备上,但GPU的类型和型号需要和原环境保持一致;若容器形式部署,可以像微服务应用程序一样进行业务层面的编排;若为虚拟机,则可以用基于云上的业务编排系统进行业务编排。

综上对训练和推理技术的分析,可以得出,大模型是一个复杂的系统工程,从数据采集开始,最后到提供相应的大模型服务,落地一个垂直领域的大模型不仅需要高效算法,更需要全面的业务规划和基础设施规划,才能保证大模型高效部署落地。

在这里插入图片描述

当今大模型的发展也面临着如下挑战:

算力层面:受限于部分GPU供应问题,替代方案性能无法延续原有技术方案;此外,众多的GPU卡型号导致测试标准不统一、主机厂商适配进度不一、交付周期不定等问题。

存力层面:需要大模型场景专用存储;提供更高的存储读、写带宽及IOPS;具备良好的扩展性;拥有灵活的数据保护策略。

运力层面:具备高带宽、低延时特性;支持RDMA或RoCE通信协议;可实现快速部署、便捷调优;达到可视化运维、快速定位问题所在。

管理平台:面向大模型业务的专业调度管理平台;多元算力可快速适配、全面纳管;具备大模型全生命周期服务能力;具有完善的运维功能。

总之,大模型是一个复杂的系统工程,从数据采集开始,最后到提供相应的大模型服务,落地一个垂直领域的大模型不仅需要高效算法,更需要全面的业务规划和算力底座规划,才能保证大模型高效部署落地。

新华三算力底座解决方案

面对上述挑战和需求,新华三集团凭借在做的丰富经验和技术实力,推出了新华三通用大模型算力底座方案。该方案可以帮助用户从无到有建设一个私域的大模型算力底座集群,助力垂直行业大模型加速落地。

新华三通用大模型算力底座方案架构图:
在这里插入图片描述

算力解决之道:

新华三秉承多元算力发展理念,采用与NVIDIA高端卡性能接近的国产化加速卡或满足合规要求的Intel或AMD GPU卡;并与多家GPU卡厂商深度合作,基于不同厂商优势特性,形成算力芯片评测标准,以客户不同算力需求为导向匹配最优选择,并自建适配标准、实现快速交付,形成多元高效的算力体系。
在这里插入图片描述
存力解决之道:

新华三针对大模型场景,推出专用CX系列存储;单节点20GB/s+带宽、30万IOPS;轻松扩展至PB级可用容量,性能线性增加;数据保护采用多副本或纠删码,供用户按需选择。
在这里插入图片描述
运力解决之道:

新华三SeerFabric或Infiniband满足高带宽、低延时要求;提供优化后的RoCE或原生RDMA通信协议;一键自动化部署、动态闭环调优;网络可视化、智能分析,让运维更高效。
在这里插入图片描述
管理解决之道:

新华三自研大模型场景专用管理平台,傲飞算力平台;自研GPU通用适配框架,适配周期缩短至2周以内;内置大模型全栈工作流,助力AI业务探究;监控、告警全面直观,让运维更轻松。
在这里插入图片描述
AI时代,“算力即生产力”,新华三集团依托“AI in ALL”技术战略,为AI时代的大模型应用提供了全方位的支持。未来,新华三集团将继续秉持“精耕务实,为时代赋智慧”的理念,持续升级产品及解决方案,充分发挥“算力×联接”的倍增效应,持续进化通用大模型算力底座方案,加速百行百业拥抱AI技术的美好未来。

相关文章:

  • 深层神经网络
  • 深入了解语音识别:Distil-Whisper
  • 大数据可视化实验(八):大数据可视化综合实训
  • Android应用安装过程
  • Spring Cloud Alibaba - 利用Nacos动态调整线程池参数
  • Postman接口测试工具的原理及应用详解(四)
  • VUE3+ AntV Select 选择器:mode=“multiple“和mode=“tags“的区别是什么
  • ISP IC/FPGA设计-第一部分-SC130GS摄像头分析(0)
  • crossover软件如何使用 crossover软件是干嘛的 crossover软件安装激活教程方法 兼容软件电脑是什么软件
  • 高级队列实现代理穿透及迁移
  • ELK日志实时监控
  • CXL:拯救NVMe SSD缓存不足设计难题-2
  • npm创建一个空的vue3项目的方法或者pnpm创建vue3项目
  • vue uniapp MEQX JWT认证
  • 如何在Vue3项目中使用Pinia进行状态管理
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • httpie使用详解
  • java2019面试题北京
  • JAVA多线程机制解析-volatilesynchronized
  • nginx 配置多 域名 + 多 https
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • Spring Boot MyBatis配置多种数据库
  • vue:响应原理
  • 当SetTimeout遇到了字符串
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 目录与文件属性:编写ls
  • 前端_面试
  • 前端相关框架总和
  • 前端性能优化——回流与重绘
  • 驱动程序原理
  • 如何在GitHub上创建个人博客
  • 深入浅出Node.js
  • 使用 5W1H 写出高可读的 Git Commit Message
  • 使用Swoole加速Laravel(正式环境中)
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • # C++之functional库用法整理
  • (0)Nginx 功能特性
  • (13)DroneCAN 适配器节点(一)
  • (3)选择元素——(14)接触DOM元素(Accessing DOM elements)
  • (Redis使用系列) SpirngBoot中关于Redis的值的各种方式的存储与取出 三
  • (笔记)M1使用hombrew安装qemu
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • (转)ORM
  • (转)PlayerPrefs在Windows下存到哪里去了?
  • .bat文件调用java类的main方法
  • .net core 3.0 linux,.NET Core 3.0 的新增功能
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .NetCore实践篇:分布式监控Zipkin持久化之殇
  • .Net高阶异常处理第二篇~~ dump进阶之MiniDumpWriter
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理
  • @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本...