BpFile(id=256, bpId=61, name=基于弹性计算的AI推理, author=null, keyword=推理,容器,Perseus, description=使用ACK容器+Arena工具+Perseus框架进行AI推理加速, position=null, ossUrl=bp-NHVKE8Y6GMEEQW1V.pdf, tags=null, level=null, tagList=null, products=null, productList=null, hotspot=null, oneClick=0, createTime=null, modifiedTime=null, timeConsuming=null, status=1, pdfDescription=
场景描述
本方案适用于使用GPU进行AI在线推理的场
景。在推理之前,模型已经训练完成。例如,刷脸
支付中,我们在刷脸的时候,就是推理的一个过
程。再比如图像分类,目标检测,语音识别,语
义分析等返回结果的过程。
解决问题
使用GPU云服务器搭建推理环境
使用容器服务Kubernetes版构建推理
环境
使用NAS存储模型数据
使用飞天AI加速推理工具加速推理
产品列表
GPU云服务器
容器服务Kubernetes版
NAS共享存储
, templateId=null, freetry=null, visitTime=null, visitCount=null, video_url=null, buttonName=null, buttonUrl=null, targetId=null, partner=null, partnerUrl=null, partnerLogo=null, cooperation=, cooperationList=null)
1
基于弹性计算的 AI推理 最佳实践
部署架构图:
场景描述
本方案适用于使用 GPU进行 AI在线推理的场
景。在推理之前,模型已经训练完成。例如,刷脸
支付中,我们在刷脸的时候,就是推理的一个过
程。再比如图像分类,目标检测,语音识别,语
义分析等返回结果的过程。
解决问题
使用 GPU云服务器搭建推理环境
使用容器服务 Kubernetes版构建推理
环境
使用 NAS存储模型数据
使用飞天 AI加速推理工具加速推理
产品列表
GPU云服务器
容器服务 Kubernetes版
NAS共享存储
文档版本:20191209
2文档模板(手册名称)/Error! Use the Home tab to apply
云服务器 ECS(产品名称) 标题 to the text that you want to appear here.
阿里云
企业上云实践
基于弹性计算的 AI推理最佳实践
3企业上云实践 基于弹性计算的 AI推理最佳实践 | 文档版本信息
文档版本信息
文本信息
属性 内容
文档名称 基于弹性计算的 AI推理最佳实践
文档编号 061
文档版本 v1.9
版本日期 2020-03-20
文档状态 外部发布
制作人 敬海
审阅人
文档变更记录
版本编号 日期 作者 审核人 说明
V1.0 2019-06-21 敬海 创建
V1.2 2019-07-15 敬海 增加 perseus部分内容
v1.3 2019-07-26 筱晖 - 文档优化
v1.4 2019-07-30 敬海 - 增加 ecs部分和 arena部分
v1.5 2019-07-30 敬海 修复 bug,v24改到 v24
v1.6 2019-07-30 敬海 删减部分内容
V1.7 2019-08-13 敬海 增加最佳实践概述
V1.8 2019-12-11 敬海 增加首页
V1.9 2020-03-20
敬海 更新镜像和 arena安装步骤
4企业上云实践 基于弹性计算的 AI推理最佳实践| 前言
前言
概述
本文介绍了使用阿里云的 Kubernetes容器服务搭建 AI推理环境的最佳实践。
应用范围
使用阿里云的 Kubernetes容器服务在云上搭建 AI推理环境。
名词解释
容器服务 Kubernetes版:容器服务 Kubernetes版提供高性能可伸缩的容器应用
管理服务,支持企业级 Kubernetes(K8S)容器化应用的生命周期管理。容器服务
Kubernetes版简化集群的搭建和扩容等运维工作,整合阿里云虚拟化、存储、网络和
安全能力,打造云端最佳的 Kubernetes容器化应用运行环境。阿里云容器服务是全球
首批通过 Kubernetes一致性认证的云平台服务,也是 Kubernetes认证服务供应商,
可以为您提供专业的容器支持和服务。更多信息,请参见
https://help.aliyun.com/document_detail/86737.html。
Notebook:Jupyter Notebook是一款基于网页的交互计算应用程序,适用于全过
程计算,包括开发、文档编写、运行代码和展示结果。Jupyter Notebook通过网页启
动,用户可以在网页中直接编写代码和运行代码,代码的运行结果直接在代码块下显
示; Notebook 同时支持在编码页面直接编写说明文档。更多信息,请参见
https://jupyter-notebook.readthedocs.io/en/stable/notebook.html。
Mobilenet:运行在 TensorFlow上的一系列高效、小尺寸的移动优先型视觉模型,
旨在充分利用移动设备和嵌入式应用的有限资源,有效地最大化模型的准确性。
MobileNet是小型、低延迟、低功耗的参数化模型,可以满足有限资源下的各种应用案
例。它们可以像其他流行的大规模模型(如 Inception)一样用于分类、检测、嵌入和
分割任务等。更多信息,请参见
https://github.com/tensorflow/models/tree/master/research/slim/nets/mobilenet。
训练是一个利用大量数据不断进行模型修正和寻找最优解的过程。
推理是利用已经训练完成的模型,进行推断或者预测的过程,例如识别一张图片中
的内容。
Arena是阿里云容器服务团队为 AI任务运行在 Kubernetes集群中提供的效率工
具,大大简化机器学习技术栈的部署、使用中的复杂性,把异构计算和云原生技术的
II
5企业上云实践 基于弹性计算的 AI推理最佳实践| 前言
最佳实践通过友好的用户体验交付出来。Arena通过命令行工具,支持深度学习工作
流中模型开发,训练,推理服务等,并提供了 Kubernetes GPU集群管理运维能力。
Kubernetes生态中关注机器学习的重要项目 Kubeflow社区已接受 Arena项目。 详
见 https://github.com/kubeflow/arena
III
6企业上云实践 基于弹性计算的 AI推理最佳实践| 目录
目录
文档版本信息 ........................................................................................................................................................ I
法律声明 ................................................................................................................................................................ I
前言 ...................................................................................................................................................................... II
目录 ..................................................................................................................................................................... IV
最佳实践概述 ....................................................................................................................................................... 1
前置条件 ............................................................................................................................................................... 4
演示环境说明 ....................................................................................................................................................... 5
1. 创建专有网络 ............................................................................................................................................... 2
2. 创建 Kubernetes集群 ................................................................................................................................... 5
3. 部署 Mobilenet推理 demo ......................................................................................................................... 11
3.1. 创建 NAS文件系统 ...................................................................................................................... 11
3.2. 创建存储卷和存储声明 ............................................................................................................... 14
3.3. 部署 Arena工具 ........................................................................................................................... 18
3.4. 部署 Notebook ............................................................................................................................. 20
3.5. 登录 Notebook ............................................................................................................................. 25
3.6. 部署 Mobilenet推理 demo .......................................................................................................... 27
4. 部署飞天 AI加速推理工具的 demo ........................................................................................................... 33
4.1. 创建 NAS文件系统 ...................................................................................................................... 33
4.2. 创建存储卷和存储声明 ............................................................................................................... 37
4.3. 准备推理 demo环境 ................................................................................................................... 40
4.4. 使用 arena 部署 model server ..................................................................................................... 42
4.4.1. 安装最新版本的 arena ......................................................................................................... 42
4.4.2. 使用存储卷 .......................................................................................................................... 44
4.4.3. 创建自定义 serving .............................................................................................................. 44
4.5. 在容器环境部署推理客户端 ....................................................................................................... 46
4.5.1. 部署客户端 .......................................................................................................................... 46
4.5.2. 根据 endpoint和 restful端口测试客户端 ........................................................................... 47
4.6. 在 ECS环境部署推理 client ......................................................................................................... 47
4.6.1. 查看集群所有节点列表 ....................................................................................................... 48
4.6.2. 获取 server的 cluterip .......................................................................................................... 48
4.6.3. 这里我们用 worker节点来演示 .......................................................................................... 48
4.7. 性能测试 ...................................................................................................................................... 50
4.8. 飞天 AI加速推理工具使用说明 .................................................................................................. 52
4.8.1. 单独启动 perseus_inference容器镜像................................................................................. 52
4.8.2. 启动 server端 ...................................................................................................................... 52
4.8.3. Perseus Inference的模型配置 .............................................................................................. 56
4.8.4. 部署用户模型....................................................................................................................... 58
IV
7企业上云实践 基于弹性计算的 AI推理最佳实践| 演示环境说明
最佳实践概述
AI数据处理流程
场景描述
通常 AI数据处理分为,数据采集,数据清洗,数据标注,模型训练,模型部署,推理等场景。本方案
适用于 AI推理场景,在推理之前,模型已经训练完成。例如,刷脸支付中,我们在刷脸的时候,就是推理
的一个过程。再比如图像分类,目标检测,语音识别,语义分析等返回结果的过程。
本实践采用了如下产品:
• GPU云服务器GN5I
• 共享存储NAS
• 阿里云容器服务Kubernetets版
阿里云飞天 AI加速解决方案
基于阿里云弹性基础资源,为用户提供性能极致优化、轻量便捷、开源开放的人工智能最佳实践。
I
8企业上云实践 基于弹性计算的 AI推理最佳实践| 演示环境说明
方案架构
用户通过域名访问推理服务,如 demo中通过 notebook提供网页式的运行环境,推理服务器部署在容
器中模型和文件都存放在共享存储 NAS上。
II