ContainerImage 类

表示一个容器映像,目前仅适用于 Docker 映像。

此类已弃用。 请改用 Environment 类。

该映像包含运行模型所需的依赖项,包括:

  • 运行时

  • 在 Conda 文件中指定的 Python 环境定义

  • 启用 GPU 支持的能力

  • 用于特定运行命令的自定义 Docker 文件

图像构造函数。

此类已弃用。 请改用 Environment 类。

图像构造函数用于检索与提供的工作区关联的 Image 对象的云表示形式。 将返回与检索的图像对象的特定类型对应的子类的实例。

继承
ContainerImage

构造函数

ContainerImage(workspace, name=None, id=None, tags=None, properties=None, version=None)

参数

名称 说明
workspace
必需

包含要检索的图像的工作区对象

name
str

要检索的映像的名称。 将返回最新版本(如果存在)

默认值: None
id
str

要检索的映像的特定 ID。 (ID 为“:”)

默认值: None
tags

将基于提供的列表按“key”或“[key, value]”筛选映像结果。 例如: ['key', ['key2', 'key2 value']]

默认值: None
properties

将基于提供的列表按“key”或“[key, value]”筛选映像结果。 例如: ['key', ['key2', 'key2 value']]

默认值: None
version
str

如果同时指定了版本和名称,则返回映像的特定版本。

默认值: None

注解

使用 Image 类构造函数通过传递先前创建的 ContainerImage 的名称或 ID 来检索 ContainerImage。 以下代码示例演示了通过名称和 ID 从工作区检索映像。


   container_image_from_name = Image(workspace, name="image-name")
   container_image_from_id = Image(workspace, id="image-id")

要新建映像配置以在部署中使用,请生成一个 ContainerImageConfig 对象,如以下代码示例所示:


   from azureml.core.image import ContainerImage

   image_config = ContainerImage.image_configuration(execution_script="score.py",
                                                    runtime="python",
                                                    conda_file="myenv.yml",
                                                    description="image for model",
                                                    cuda_version="9.0"
                                                    )

方法

image_configuration

创建并返回一个 ContainerImageConfig 对象。

此函数接受参数来定义模型应如何在 Web 服务中运行,以及它运行需要的特定环境和依赖项。

run

使用给定的输入数据在本地运行映像。

必须安装并运行 Docker 才能工作。 此方法仅适用于 CPU,因为启用 GPU 的映像只能在 Microsoft Azure 服务上运行。

serialize

将此 ContainerImage 对象转换为 JSON 序列化字典。

image_configuration

创建并返回一个 ContainerImageConfig 对象。

此函数接受参数来定义模型应如何在 Web 服务中运行,以及它运行需要的特定环境和依赖项。

static image_configuration(execution_script, runtime, conda_file=None, docker_file=None, schema_file=None, dependencies=None, enable_gpu=None, tags=None, properties=None, description=None, base_image=None, base_image_registry=None, cuda_version=None)

参数

名称 说明
execution_script
必需
str

包含要为映像运行的代码的本地 Python 文件路径。 必须同时包含定义 Web 服务的模型执行步骤的 init() 和 run(input_data) 函数。

runtime
必需
str

用于映像的运行时。 目前支持的运行时为“spark-py”和“python”。

conda_file
str

包含要用于映像的 Conda 环境定义的本地 .yml 文件路径。

默认值: None
docker_file
str

包含设置映像时要运行的附加 Docker 步骤的本地文件路径。

默认值: None
schema_file
str

包含部署映像时要使用的 Web 服务架构的本地文件路径。 用于为模型部署生成 Swagger 规范。

默认值: None
dependencies

映像需要运行的其他文件/文件夹的路径列表。

默认值: None
enable_gpu

是否在映像中启用 GPU 支持。 GPU 映像必须用于 Azure 容器实例、Azure 机器学习计算、Azure 虚拟机和 Azure Kubernetes 服务等 Microsoft Azure 服务。 默认为 False

默认值: None
tags

提供此映像的键值标签字典。

默认值: None
properties

提供此映像的键值属性字典。 这些属性在部署后无法更改,但是可以添加新的键值对。

默认值: None
description
str

为此映像指定的文本说明。

默认值: None
base_image
str

用作基础映像的自定义映像。 如果未提供基础映像,则基于给定的运行时参数使用基础映像。

默认值: None
base_image_registry

包含基础映像的映像注册表。

默认值: None
cuda_version
str

要为需要 GPU 支持的映像安装 CUDA 版本。 GPU 映像必须用于 Azure 容器实例、Azure 机器学习计算、Azure 虚拟机和 Azure Kubernetes 服务等 Microsoft Azure 服务。 支持的版本为 9.0、9.1 和 10.0。 如果设置了“enable_gpu”,则默认值为“9.1”。

默认值: None

返回

类型 说明

创建映像时要使用的配置对象。

例外

类型 说明

run

使用给定的输入数据在本地运行映像。

必须安装并运行 Docker 才能工作。 此方法仅适用于 CPU,因为启用 GPU 的映像只能在 Microsoft Azure 服务上运行。

run(input_data)

参数

名称 说明
input_data
必需
<xref:varies>

运行时传递给映像的输入数据

返回

类型 说明
<xref:varies>

运行映像的结果。

例外

类型 说明

serialize

将此 ContainerImage 对象转换为 JSON 序列化字典。

serialize()

返回

类型 说明

此 ContainerImage 的 JSON 表示形式。

例外

类型 说明