AciWebservice 类
表示部署为 Azure 容器实例上 Web 服务终结点的机器学习模型。
从模型、脚本和关联的文件创建已部署的服务。 生成的 Web 服务是一个负载均衡、具有 REST API 的 HTTP 终结点。 可将数据发送到此 API,并接收模型返回的预测。
有关详细信息,请参阅将模型部署到 Azure 容器实例。
初始化 Webservice 实例。
Webservice 构造函数检索与提供的工作区关联的 Webservice 对象的云表示形式。 它将返回与检索到的 Webservice 对象的特定类型对应的子类的实例。
- 继承
-
AciWebservice
构造函数
AciWebservice(workspace, name)
参数
名称 | 说明 |
---|---|
workspace
必需
|
包含要检索的 Webservice 对象的工作区对象。 |
name
必需
|
要检索的 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,包括:
已在工作区中注册的模型的 Model 的
deploy
方法。Webservice 的
deploy_from_image
方法。已在工作区中注册的模型的 Webservice 的
deploy_from_model
方法。 此方法将创建映像。Webservice 的
deploy
方法,它将注册模型并创建映像。
有关使用 webservice 的信息,请参阅
“变量”部分列出了云 AciWebservice 对象的本地表示形式的属性。 应将这些变量视为只读。 更改其值不会反映在对应的云对象中。
变量
名称 | 说明 |
---|---|
enable_app_insights
|
是否为 Webservice 启用了 AppInsights 日志记录。 |
cname
|
Webservice 的 cname。 |
container_resource_requirements
|
Webservice 的容器资源要求。 |
encryption_properties
|
Webservice 的加密属性。 |
vnet_configuration
|
Webservice 的虚拟网络属性,应由用户创建和提供配置。 |
azureml.core.webservice.AciWebservice.location
|
将 Webservice 部署到的位置。 |
public_ip
|
Webservice 的 公共 IP 地址。 |
azureml.core.webservice.AciWebservice.scoring_uri
|
Webservice 的评分终结点 |
ssl_enabled
|
是否为 Webservice 启用 SSL |
public_fqdn
|
Webservice 的公共 FQDN |
environment
|
用于创建 Webservice 的环境对象 |
azureml.core.webservice.AciWebservice.models
|
部署到 Webservice 的模型的列表 |
azureml.core.webservice.AciWebservice.swagger_uri
|
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
|
提供此 Webservice 的说明。 默认值: None
|
location
|
要将此 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
|
如果启用 SSL,则需要证书文件。 默认值: None
|
ssl_key_pem_file
|
如果启用 SSL,则需要密钥文件。 默认值: None
|
ssl_cname
|
启用 SSL 时的 cname。 默认值: None
|
dns_name_label
|
评分终结点的 DNS 名称标签。 如果未指定,则将为评分终结点生成唯一的 DNS 名称标签。 默认值: None
|
primary_key
|
要用于此 Webservice 的主要身份验证密钥。 默认值: None
|
secondary_key
|
要用于此 Webservice 的辅助身份验证密钥。 默认值: None
|
collect_model_data
|
是否为 Webservice 启用模型数据收集。 默认值: None
|
cmk_vault_base_url
|
客户管理的密钥保管库基 URL 默认值: None
|
cmk_key_name
|
客户管理的密钥名称。 默认值: None
|
cmk_key_version
|
客户管理的密钥版本。 默认值: None
|
vnet_name
|
虚拟网络名称。 默认值: None
|
subnet_name
|
虚拟网络中的子网名称。 默认值: None
|
返回
类型 | 说明 |
---|---|
部署 Webservice 对象时要使用的配置对象。 |
例外
类型 | 说明 |
---|---|
get_token
检索此 Webservice 的身份验证令牌,范围为当前用户。
注意
未实现。
get_token()
返回
类型 | 说明 |
---|---|
此 Webservice 的身份验证令牌,以及应该刷新此令牌的时间。 |
例外
类型 | 说明 |
---|---|
azureml.exceptions.NotImplementedError
|
remove_tags
run
使用提供的输入调用此 Web 服务。
run(input_data)
参数
名称 | 说明 |
---|---|
input_data
必需
|
<xref:varies>
用于调用 Web 服务的输入。 |
返回
类型 | 说明 |
---|---|
调用 Web 服务的结果。 |
例外
类型 | 说明 |
---|---|
serialize
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
|
提供此 Webservice 的说明。 默认值: None
|
auth_enabled
|
是否为此 Webservice 启用身份验证。 默认值: None
|
ssl_enabled
|
是否为此 Webservice 启用 SSL。 默认值: None
|
ssl_cert_pem_file
|
如果启用 SSL,则需要证书文件。 默认值: None
|
ssl_key_pem_file
|
如果启用 SSL,则需要密钥文件。 默认值: None
|
ssl_cname
|
启用 SSL 时的 cname。 默认值: None
|
enable_app_insights
|
是否为此 Webservice 启用 AppInsights。 默认值: None
|
models
|
要打包到已更新服务中的模型对象的列表。 默认值: None
|
inference_config
|
用于提供所需模型部署属性的 InferenceConfig 对象。 默认值: None
|
返回
类型 | 说明 |
---|---|