使用大模型在modelarts standard创建模型部署在线服务-九游平台
背景说明
目前大模型的参数量已经达到千亿甚至万亿,随之大模型的体积也越来越大。千亿参数大模型的体积超过200g,在版本管理、生产部署上对平台系统产生了新的要求。例如:导入模型时,需要支持动态调整租户存储配额;模型加载、启动慢,部署时需要灵活的超时配置;当负载异常重启,模型需要重新加载,服务恢复时间长的问题亟待解决。
为了应对如上诉求,modelarts推理平台针对性给出九游平台的解决方案,用于支持大模型场景下的模型管理和服务部署。
约束与限制
- 需要申请单个模型大小配额和添加使用节点本地存储缓存的白名单。
- 需要使用自定义引擎custom,配置动态加载。
- 需要使用专属资源池部署服务。
- 专属资源池磁盘空间需大于1t。
申请扩大模型的大小配额和使用节点本地存储缓存白名单
服务部署时,默认情况下,动态加载的模型包位于临时磁盘空间,服务停止时已加载的文件会被删除,再次启动时需要重新加载。为了避免反复加载,平台允许使用资源池节点的本地存储空间来加载模型包,并在服务停止和重启时仍有效(通过哈希值保证数据一致性)
使用大模型要求用户采用自定义引擎,并开启动态加载的模式导入模型。基于此,需要执行以下操作:
- 如果模型超过默认配额值,需要提工单申请扩大单个模型的大小配额。单个模型大小配额默认值为20gb。
- 需要提工单申请添加使用节点本地存储缓存的白名单。
上传模型数据并校验上传对象的一致性
为了动态加载时保证数据完整性,需要在上传模型数据至obs时,进行上传对象的一致性校验。obsutil、obs browser 以及obs sdk都支持在上传对象时进行一致性校验,您可以根据自己的业务选择任意一种方式进行校验。详见校验上传对象的一致性。
以obs browser 为例,如图1。使用obs browser 上传数据,开启md5校验,动态加载并使用节点本地的持久化存储时,检查数据一致性。

创建专属资源池
使用本地的持久化存储功能,需使用专属资源池,且专属资源池磁盘空间大小必须超过1t。您可以通过专属资源池详情页面,规格页签,查看专属资源池磁盘信息。当服务部署失败,提示磁盘空间不足时,请参考服务部署、启动、升级和修改时,资源不足如何处理?

创建模型
使用大模型创建模型,选择从对象存储服务(obs)中导入,需满足以下参数配置:
- 采用自定义引擎,开启动态加载
使用大模型要求用户使用自定义引擎,并开启动态加载的模式导入模型。用户可以制作自定义引擎,满足大模型场景下对镜像依赖包、推理框架等的特殊需求。自定义引擎的制作请参考使用自定义引擎在modelarts standard创建模型。
当用户使用自定义引擎时,默认开启动态加载,模型包与镜像分离,在服务部署时动态将模型加载到服务负载。
- 配置健康检查
大模型场景下导入的模型,要求配置健康检查,避免在部署时服务显示已启动但实际不可用。
图3 采用自定义引擎,开启动态加载并配置健康检查示例图
部署在线服务
部署服务时,需满足以下参数配置:
- 自定义部署超时时间
大模型加载启动的时间一般大于普通的模型创建的服务,请配置合理的“部署超时时间”,避免尚未启动完成被认为超时而导致部署失败。
- 添加环境变量
部署服务时,增加如下环境变量,会将负载均衡的请求亲和策略配置为集群亲和,避免未就绪的服务实例影响预测成功率。
modelarts_service_traffic_policy: cluster
图4 自定义部署超时时间和添加环境变量示例图
建议部署多实例,增加服务可靠性。
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨