部署算法包组件
运行算法包组件依赖于CPU、NPU这类计算资源。如果应用中有使用算法包组件,需要先执行部署操作。部署后算法包就能在一个独立、隔离的环境中运行,同时也能被其他组件访问。
- 登录ModelArts Studio平台,进入所需空间。
- 在左侧导航栏中选择“垂域应用开发 > 应用组件 > 组件管理 > 自定义”,进入“算法包”页签。
图1 算法包列表
- 选择“已生效”的算法包,单击操作栏的“部署”,或者进入算法包组件详情页面,单击右上角“部署”,部署算法。“未生效”的算法包组件单击列表其所在行的“是否生效”开关进行组件生效。
图2 部署组件
表1 部署参数说明 参数名称
说明
部署方式
服务的部署类型,支持边缘部署。
服务名称
部署服务的名称。
架构类型
部署的资源池架构类型,与实际算法的架构相关。
资源池
选择部署的边缘资源池。若需要使用Ascend卡,当前支持推理卡类型为Snt3p。
负载均衡
边缘部署使用的负载均衡,支持HTTPS和HTTP两种协议的负载均衡,用于后续通过负载均衡调用的部署的服务。
CPU
部署需要使用的最小CPU值(物理核),默认1Core。越复杂的模型通常需要更多的计算资源,可以考虑增加CPU的数量;如果服务需要处理大量的并发请求,建议增加CPU数量。但不能超过资源池中的可用CPU数。
内存
部署需要使用的最小内存值,默认1024MB。模型越大、处理数据越多,需要的内存也就越大。可以依据实际模型情况和待处理的数据量情况进行调整。
Ascend
部署使用的npu卡数量。Ascend设备通常用于深度学习模型的加速,当模型支持在Ascend上运行,且资源池中包含Ascend资源时,才可以进行配置,确保分配的Ascend数量在资源池范围内。当前支持推理卡类型为Snt3p,单卡算力为70T FLOPS@fp16,加载不同推理模型所消耗的算力资源不同,需要卡数的计算公式为:卡数量≈总算力/卡算力。计算得到的卡数量可以向上取整后作为参数取值。
若资源池进行过算力切分,此处的卡数量表示的是逻辑卡数。若资源池没有经过算力切分,则表示为物理卡数。例如,物理卡切分成了7份,那一个逻辑卡的算力就是10T FLOPS@fp16。
环境变量
用户在组件代码中定义的外部环境变量。
如果使用视频解码、视频抽帧类算法,CPU和内容推荐设置为4CPU,8092M内存,若算法需要使用Ascend设备运行,可将数量设置为1。CPU、内存、Ascend取值大小与用户所使用的算法相关、处理的数据量相关,请按算法实际运行所依赖的资源要求进行设置。
- 部署完成后,单击算法包名称,进入详情页后,可以在最下方的服务管理处看到服务列表信息。
图3 服务管理
- 服务部署完成后,可以根据服务列表中的访问地址完成服务的调用请求,请求体结构按照创建算法包组件时设置的结构进行填写。
边缘部署服务的访问URL格式为:<所使用负载均衡的协议>://<负载均衡的IP(通常为资源池主节点IP)>:<负载均衡的端口>/<服务的访问地址>
例如:部署使用的负载均衡为HTTPS的 ,负载均衡的IP为127.0.0.1,负载均衡的端口为:8080,服务的访问地址为:05806e52-6423-43bc-b1be-82d4fa1a158a,
则最终的访问地址为:https://127.0.0.1:8080/05806e52-6423-43bc-b1be-82d4fa1a158a
调用访问地址时需要填写请求Header参数:
Content-Type:填写application/json。图4 服务调用 - 单击服务名称可以跳转到当前服务详情页面。
图5 服务详情
- 服务部署失败或者不需要的时候,可以在服务列表中进行服务删除操作。
图6 删除服务