文档首页 > > 常见问题> 部署上线>

导入模型时安装包存在前后依赖关系,模型配置文件应该如何说明?

导入模型时安装包存在前后依赖关系,模型配置文件应该如何说明?

分享
更新时间:2020/12/29 GMT+08:00

问题描述

从OBS中或者从容器镜像中导入模型时,开发者需要编写模型配置文件。模型配置文件描述模型用途、模型计算框架、模型精度、推理代码依赖包以及模型对外API接口。配置文件为JSON格式。配置文件中的“dependencies”表示模型推理代码需要依赖的包。模型开发者需要提供包名、安装方式、版本约束,详细参数见参数说明表。“dependencies”参数填入“dependency”结构数组。当导入模型时安装包存在前后依赖关系,模型配置文件中的“dependencies”参数应该如何说明?

解决方案

当安装包存在前后依赖关系时,模型配置文件的“dependencies”支持多个“dependency”结构数组以list形式填入。

list形式的“dependencies”有顺序要求,例如您想安装“mmcv-full”“mmcv-full”安装之前需要完成“Cython”“pytest-runner”“pytest”的安装。在配置文件中,采用list形式填入安装包时,您需要把“Cython”“pytest-runner”“pytest”写在“mmcv-full”结构数组的前面。

示例如下:

"dependencies": [
    {
    "installer": "pip",
    "packages": [
        {
            "package_name": "Cython"
        },
        {
            "package_name": "pytest-runner"
        },
        {
            "package_name": "pytest"
        }]
    },

    {
    "installer": "pip",
    "packages": [
        {
            "restraint": "ATLEAST",
            "package_version": "5.0.0",
            "package_name": "Pillow"
        },
        {
            "restraint": "ATLEAST",
            "package_version": "1.4.0",
            "package_name": "torch"
        },
        {
            "restraint": "ATLEAST",
            "package_version": "1.19.1",
            "package_name": "numpy"
        },
        {
            "restraint": "ATLEAST",
            "package_version": "1.2.0",
            "package_name": "mmcv-full"
        }]
    }
]

分享:

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问
{{site}}{{lan}}
{{site}}{{language}}