华为云AI开发平台ModelArts推理业务迁移评估表_云淘科技

通用的推理业务及LLM推理可提供下表进行业务迁移评估:

收集项

说明

实际情况(请填写)

项目名称

项目名称,例如:XXX项目。

使用场景

例如:

使用YOLOv5算法对工地的视频流裁帧后进行安全帽检测。
使用BertBase算法对用户在app上购买商品后的评论进行理解。

CPU架构

X86/ARM,自有软件是否支持ARM。

例如:4个推理模型在ARM上运行,6个推理模型在X86上运行。

当前使用的操作系统及版本

当前推理业务的操作系统及版本,如:Ubuntu 22.04。

是否使用容器化运行业务,以及容器中OS版本,HostOS中是否有业务软件以及HostOS的类型和版本。

需要评估是否愿意迁移到华为云的通用OS。

AI引擎及版本

当前引擎(TF/PT/LibTorch),是否接受切换MindSpore。

例如:当前使用TF 2.6,Pytorch 1.10,可以接受切换MindSpore。

业务编程语言、框架、版本。

C++/Python/JAVA等。

例如:业务逻辑使用JAVA,推理服务模块使用C++自定义实现推理框架,Python 3.7等。

CPU使用率

业务中是否有大量使用CPU的的代码,以及日常运行过程中CPU的占用率(占用多少个核心),以及使用CPU计算的业务功能说明和并发机制。

是否有Linux内核驱动

是否有业务相关的Linux内核驱动代码。

依赖第三方组件列表

当前业务依赖的第三方软件列表(自行编译的第三方软件列表)。

例如:Faiss等。

推理框架

TensorRT/Triton/MSLite等。

例如:

2个推理模型使用TensorRT框架,5个使用Triton框架。
通过stable-diffusion的WebUI提供AIGC推理服务。

GPU卡的类型

V100/Ant1/A30/T4/3090/2080等。

例如:

20卡Ant1,运行Bert Large推理。

10卡T4运行YOLOv5。

Backbone类型

ResNet/DarkNet/Transformer等。

例如:

5个模型使用ResNet Backbone,应用与监控。
3个模型使用Transformer,应用于自然语言处理xxx。
使用stable-diffusion的典型模型:TextEncoder、VaeEncoder、unet、VaeDecoder、SafetyChecker,没有使用LoRA等动态加载的诉求。

模型训练方式

关于推理业务中使用的模型,填写该模型训练时使用的框架以及套件。

例如:模型使用Pytorch+Megatron+DeepSpeed进行训练。

自定义算子

是否有自定义算子,CPU还是CUDA,复杂程度。

例如:有5个CUDA自定义算子。1个高复杂度算子,基于C++开发2000行代码。4个中等复杂度算子,基于C++开发,平均每个自定义算子约500行代码。

动态shape

是否需要支持动态shape。

例如:需要动态Shape,需要动态Shape的模型有ResNet-50、YOLOv5。

参数类型(FP32/FP16)

FP32还是FP16混合,判断精度调优难度。

例如:ResNet-50、YOLOv5模型使用FP16。BertLarge使用FP32。

模型变更频率

模型变更场景如下:

数据增量,模型算子未变更。
数据增量,模型算子变化(包含:1)网络结构变化 2)AI框架版本升级,使用了新版本算子)。

例如:每半年对模型进行一次变更,变更的内容包含模型结构,并升级AI框架。

是否使用华为MDC产品

若使用华为MDC产品,请填写MDC版本号,若没有可以不填。

例如:使用了C83版本。

性能指标与预期

例1:

模型:YOLOv5

运行环境:V100 单卡

性能指标:QPS 100/s (两进程)

性能约束:单次请求最大可以接受时延需小于100ms

性能预期:QPS 130/s

例2:

模型:OCR

运行环境:6348(单核 48U 超线程)

性能指标:QPS 10/s (四进程)

性能约束:单次请求最大可以接受时延需小于1s

性能预期:QPS 20/s

业务访问方式

推理业务访问:“客户端 -> 云服务” 或 “云客户端 -> 云服务”。

推理业务时延要求,客户端到云服务端到端可接受时延。

例如:当前是“客户端 -> 云服务”模式,客户端请求应答可接受的最长时延为2秒。

模型参数规模,是否涉及分布式推理

10B/100B,单机多卡推理。

能否提供实际模型、网络验证的代码和数据等信息

提供实际模型、网络验证的代码和数据。

提供与业务类型类似的开源模型,例如GPT3 10B/13B。

提供测试模型以及对应的Demo代码路径(开源或共享)。

可以提前的完成POC评估,例如框架、算子支持度,以及可能的一些性能指标。

如果是AIGC场景的业务例如Stable Diffusion,请在上表的基础上,再提供以下信息:

收集项

说明

实际情况(请填写)

使用场景

例如:

业务是文生图,图生图等。
业务是否需要频繁更新模型,或者需要动态加载Lora。

stable-diffusion套件

使用differusers (https://github.com/huggingface/diffusers)。
stable-diffusion-webui (https://github.com/AUTOMATIC1111/stable-diffusion-webui)。
如果是基于其它开源,需要附带开源代码仓地址。

具体使用库

例如:

使用了哪个pipeline (例如lpw_stable_diffusion.py)。
使用了哪个huggingface的模型 (例如digiplay/majicMIX_realistic_v6)。
如果有预处理,后处理,对应的模型是什么(例如后处理的超分模型)。

Lora/TextInversion

是否有动态加载Lora的需求,可否接受把Lora固定到模型内。
是否使用了TextInversion,是否需要动态加载。

动态shape

是否可接受分档shape(固定n个挡位的shape)。

模型变更频率

模型变更场景如下:

数据增量,模型算子未变更。
数据增量,模型算子变化(包含:1)网络结构变化 2)AI框架版本升级,使用了新版本算子)。

例如:每半年对模型进行一次变更,变更的内容包含模型结构,并升级AI框架。

尺寸要求

超分前产生的图片尺寸要求:

512*512
720*720
1080 *1080
1920*1920 (shape过大可能导致性能下降)

父主题: 附录

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家