AciWebservice 类

表示部署为 Azure 容器实例上 Web 服务终结点的机器学习模型。

从模型、脚本和关联的文件创建已部署的服务。 生成的 Web 服务是一个负载均衡、具有 REST API 的 HTTP 终结点。 可将数据发送到此 API,并接收模型返回的预测。

有关详细信息,请参阅将模型部署到 Azure 容器实例

初始化 Webservice 实例。

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

继承
AciWebservice

构造函数

AciWebservice(workspace, name)

参数

名称 说明
workspace
必需

包含要检索的 Webservice 对象的工作区对象。

name
必需
str

要检索的 Webservice 对象的名称。

注解

建议的部署模式是使用 deploy_configuration 方法创建部署配置对象,然后将该对象与 Model 类的 deploy 方法一起使用,如下所示。


   from azureml.core.model import InferenceConfig
   from azureml.core.webservice import AciWebservice


   service_name = 'my-custom-env-service'

   inference_config = InferenceConfig(entry_script='score.py', environment=environment)
   aci_config = AciWebservice.deploy_configuration(cpu_cores=1, memory_gb=1)

   service = Model.deploy(workspace=ws,
                          name=service_name,
                          models=[model],
                          inference_config=inference_config,
                          deployment_config=aci_config,
                          overwrite=True)
   service.wait_for_deployment(show_output=True)

有多种方法可以将模型部署为 webservice,包括:

  • 已在工作区中注册的模型的 Modeldeploy 方法。

  • Webservicedeploy_from_image 方法。

  • 已在工作区中注册的模型的 Webservicedeploy_from_model 方法。 此方法将创建映像。

  • Webservicedeploy 方法,它将注册模型并创建映像。

有关使用 webservice 的信息,请参阅

“变量”部分列出了云 AciWebservice 对象的本地表示形式的属性。 应将这些变量视为只读。 更改其值不会反映在对应的云对象中。

变量

名称 说明
enable_app_insights

是否为 Webservice 启用了 AppInsights 日志记录。

cname
str

Webservice 的 cname。

container_resource_requirements

Webservice 的容器资源要求。

encryption_properties

Webservice 的加密属性。

vnet_configuration

Webservice 的虚拟网络属性,应由用户创建和提供配置。

azureml.core.webservice.AciWebservice.location
str

将 Webservice 部署到的位置。

public_ip
str

Webservice 的 公共 IP 地址。

azureml.core.webservice.AciWebservice.scoring_uri
str

Webservice 的评分终结点

ssl_enabled

是否为 Webservice 启用 SSL

public_fqdn
str

Webservice 的公共 FQDN

environment

用于创建 Webservice 的环境对象

azureml.core.webservice.AciWebservice.models

部署到 Webservice 的模型的列表

azureml.core.webservice.AciWebservice.swagger_uri
str

Webservice 的 swagger 终结点

方法

add_properties

将键值对添加到此 Webservice 的属性字典。

add_tags

将键值对添加到此 Webservice 的属性字典。

deploy_configuration

创建用于部署 AciWebservice 的配置对象。

get_token

检索此 Webservice 的身份验证令牌,范围为当前用户。

注意

未实现。

remove_tags

从此 Webservice 的标记字典中删除指定的键。

run

使用提供的输入调用此 Web 服务。

serialize

将此 Webservice 转换为 JSON 序列化字典。

update

使用提供的属性更新 Webservice。

在此 Webservice 中,保留为 None 的值将保持不变。

add_properties

将键值对添加到此 Webservice 的属性字典。

add_properties(properties)

参数

名称 说明
properties
必需

要添加的属性字典。

add_tags

将键值对添加到此 Webservice 的属性字典。

add_tags(tags)

参数

名称 说明
tags
必需

要添加的标记字典。

例外

类型 说明

deploy_configuration

创建用于部署 AciWebservice 的配置对象。

static deploy_configuration(cpu_cores=None, memory_gb=None, tags=None, properties=None, description=None, location=None, auth_enabled=None, ssl_enabled=None, enable_app_insights=None, ssl_cert_pem_file=None, ssl_key_pem_file=None, ssl_cname=None, dns_name_label=None, primary_key=None, secondary_key=None, collect_model_data=None, cmk_vault_base_url=None, cmk_key_name=None, cmk_key_version=None, vnet_name=None, subnet_name=None)

参数

名称 说明
cpu_cores

要分配给此 Webservice 的 CPU 核心数。 可以是小数。 默认值为 0.1

默认值: None
memory_gb

为此 Webservice 分配的内存量 (GB)。 可以是小数。 默认值为 0.5

默认值: None
tags

提供此 Webservice 的键值标签字典。

默认值: None
properties

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

默认值: None
description
str

提供此 Webservice 的说明。

默认值: None
location
str

要将此 Webservice 部署到的 Azure 区域。 如果未指定,将使用工作区位置。 有关可用区域的更多详细信息,请参阅产品(按区域)

默认值: None
auth_enabled

是否为此 Webservice 启用身份验证。 默认为 False。

默认值: None
ssl_enabled

是否为此 Webservice 启用 SSL。 默认为 False。

默认值: None
enable_app_insights

是否为此 Webservice 启用 AppInsights。 默认为 False。

默认值: None
ssl_cert_pem_file
str

如果启用 SSL,则需要证书文件。

默认值: None
ssl_key_pem_file
str

如果启用 SSL,则需要密钥文件。

默认值: None
ssl_cname
str

启用 SSL 时的 cname。

默认值: None
dns_name_label
str

评分终结点的 DNS 名称标签。 如果未指定,则将为评分终结点生成唯一的 DNS 名称标签。

默认值: None
primary_key
str

要用于此 Webservice 的主要身份验证密钥。

默认值: None
secondary_key
str

要用于此 Webservice 的辅助身份验证密钥。

默认值: None
collect_model_data

是否为 Webservice 启用模型数据收集。

默认值: None
cmk_vault_base_url
str

客户管理的密钥保管库基 URL

默认值: None
cmk_key_name
str

客户管理的密钥名称。

默认值: None
cmk_key_version
str

客户管理的密钥版本。

默认值: None
vnet_name
str

虚拟网络名称。

默认值: None
subnet_name
str

虚拟网络中的子网名称。

默认值: None

返回

类型 说明

部署 Webservice 对象时要使用的配置对象。

例外

类型 说明

get_token

检索此 Webservice 的身份验证令牌,范围为当前用户。

注意

未实现。

get_token()

返回

类型 说明

此 Webservice 的身份验证令牌,以及应该刷新此令牌的时间。

例外

类型 说明
azureml.exceptions.NotImplementedError

remove_tags

从此 Webservice 的标记字典中删除指定的键。

remove_tags(tags)

参数

名称 说明
tags
必需

要删除的键的列表。

run

使用提供的输入调用此 Web 服务。

run(input_data)

参数

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

用于调用 Web 服务的输入。

返回

类型 说明

调用 Web 服务的结果。

例外

类型 说明

serialize

将此 Webservice 转换为 JSON 序列化字典。

serialize()

返回

类型 说明

此 Webservice 对象的 JSON 表示形式。

update

使用提供的属性更新 Webservice。

在此 Webservice 中,保留为 None 的值将保持不变。

update(image=None, tags=None, properties=None, description=None, auth_enabled=None, ssl_enabled=None, ssl_cert_pem_file=None, ssl_key_pem_file=None, ssl_cname=None, enable_app_insights=None, models=None, inference_config=None)

参数

名称 说明
image

要部署到 Webservice 的新映像。

默认值: None
tags

提供此 Webservice 的键值标签字典。 将替换现有标记。

默认值: None
properties

要添加到现有属性字典的键值属性字典。

默认值: None
description
str

提供此 Webservice 的说明。

默认值: None
auth_enabled

是否为此 Webservice 启用身份验证。

默认值: None
ssl_enabled

是否为此 Webservice 启用 SSL。

默认值: None
ssl_cert_pem_file
str

如果启用 SSL,则需要证书文件。

默认值: None
ssl_key_pem_file
str

如果启用 SSL,则需要密钥文件。

默认值: None
ssl_cname
str

启用 SSL 时的 cname。

默认值: None
enable_app_insights

是否为此 Webservice 启用 AppInsights。

默认值: None
models

要打包到已更新服务中的模型对象的列表。

默认值: None
inference_config

用于提供所需模型部署属性的 InferenceConfig 对象。

默认值: None

返回

类型 说明