ContainerImage 类
表示一个容器映像,目前仅适用于 Docker 映像。
此类已弃用。 请改用 Environment 类。
该映像包含运行模型所需的依赖项,包括:
运行时
在 Conda 文件中指定的 Python 环境定义
启用 GPU 支持的能力
用于特定运行命令的自定义 Docker 文件
图像构造函数。
此类已弃用。 请改用 Environment 类。
图像构造函数用于检索与提供的工作区关联的 Image 对象的云表示形式。 将返回与检索的图像对象的特定类型对应的子类的实例。
- 继承
-
ContainerImage
构造函数
ContainerImage(workspace, name=None, id=None, tags=None, properties=None, version=None)
参数
名称 | 说明 |
---|---|
workspace
必需
|
包含要检索的图像的工作区对象 |
name
|
要检索的映像的名称。 将返回最新版本(如果存在) 默认值: None
|
id
|
要检索的映像的特定 ID。 (ID 为“:”) 默认值: None
|
tags
|
将基于提供的列表按“key”或“[key, value]”筛选映像结果。 例如: ['key', ['key2', 'key2 value']] 默认值: None
|
properties
|
将基于提供的列表按“key”或“[key, value]”筛选映像结果。 例如: ['key', ['key2', 'key2 value']] 默认值: None
|
version
|
如果同时指定了版本和名称,则返回映像的特定版本。 默认值: 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
必需
|
包含要为映像运行的代码的本地 Python 文件路径。 必须同时包含定义 Web 服务的模型执行步骤的 init() 和 run(input_data) 函数。 |
runtime
必需
|
用于映像的运行时。 目前支持的运行时为“spark-py”和“python”。 |
conda_file
|
包含要用于映像的 Conda 环境定义的本地 .yml 文件路径。 默认值: None
|
docker_file
|
包含设置映像时要运行的附加 Docker 步骤的本地文件路径。 默认值: None
|
schema_file
|
包含部署映像时要使用的 Web 服务架构的本地文件路径。 用于为模型部署生成 Swagger 规范。 默认值: None
|
dependencies
|
映像需要运行的其他文件/文件夹的路径列表。 默认值: None
|
enable_gpu
|
是否在映像中启用 GPU 支持。 GPU 映像必须用于 Azure 容器实例、Azure 机器学习计算、Azure 虚拟机和 Azure Kubernetes 服务等 Microsoft Azure 服务。 默认为 False 默认值: None
|
tags
|
提供此映像的键值标签字典。 默认值: None
|
properties
|
提供此映像的键值属性字典。 这些属性在部署后无法更改,但是可以添加新的键值对。 默认值: None
|
description
|
为此映像指定的文本说明。 默认值: None
|
base_image
|
用作基础映像的自定义映像。 如果未提供基础映像,则基于给定的运行时参数使用基础映像。 默认值: None
|
base_image_registry
|
包含基础映像的映像注册表。 默认值: None
|
cuda_version
|
要为需要 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 表示形式。 |
例外
类型 | 说明 |
---|---|