AciWebservice 类
表示部署为 Azure 容器实例上的 Web 服务终结点的机器学习模型。
部署的服务是从模型、脚本和关联的文件创建的。 生成的 Web 服务是具有 REST API 的负载均衡 HTTP 终结点。 可以将数据发送到此 API,并接收模型返回的预测。
有关详细信息,请参阅将模型部署到 Azure 容器实例。
初始化 Webservice 实例。
Webservice 构造函数检索与提供的工作区关联的 Webservice 对象的云表示形式。 它将返回与检索的 Webservice 对象的特定类型对应的子类的实例。
构造函数
AciWebservice(workspace, name)
参数
名称 | 说明 |
---|---|
workspace
必需
|
包含要检索的 Webservice 对象的工作区对象。 |
name
必需
|
要检索的 Webservice 对象的名称。 |
注解
建议的部署模式是使用deploy_configuration
该方法创建部署配置对象,然后将其与类的方法deploy
一起使用Model,如下所示。
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)
可通过多种方式将模型部署为 Web 服务,包括:
deploy
Model工作区中已注册的模型的方法。deploy_from_image
方法的 Webservice.deploy_from_model
Webservice已在工作区中注册的模型的方法。 此方法将创建映像。deploy
Webservice方法,该方法将注册模型并创建映像。
有关使用 Web 服务的信息,请参阅
“ 变量 ”部分列出了云 AciWebservice 对象的本地表示形式的属性。 这些变量应视为只读。 更改其值不会反映在相应的云对象中。
变量
名称 | 说明 |
---|---|
enable_app_insights
|
是否为 Web 服务启用了 AppInsights 日志记录。 |
cname
|
Webservice 的 cname。 |
container_resource_requirements
|
Web 服务的容器资源要求。 |
encryption_properties
|
Web 服务的加密属性。 |
vnet_configuration
|
Webservice 的虚拟网络属性,应由用户创建和提供配置。 |
azureml.core.webservice.AciWebservice.___location
|
Web 服务部署到的位置。 |
public_ip
|
Web 服务的公共 IP 地址。 |
azureml.core.webservice.AciWebservice.scoring_uri
|
Web 服务的评分终结点 |
ssl_enabled
|
是否为 Web 服务启用 SSL |
public_fqdn
|
Web 服务的公共 FQDN |
environment
|
用于创建 Web 服务的环境对象 |
azureml.core.webservice.AciWebservice.models
|
部署到 Web 服务的模型列表 |
azureml.core.webservice.AciWebservice.swagger_uri
|
Web 服务的 swagger 终结点 |
方法
add_properties |
向此 Web 服务的属性字典添加键值对。 |
add_tags |
将键值对添加到此 Webservice 的标记字典。 |
deploy_configuration |
创建用于部署 AciWebservice 的配置对象。 |
get_token |
检索此 Web 服务的身份验证令牌,范围限定为当前用户。 注释 未实现。 |
remove_tags |
从此 Webservice 标记字典中删除指定的键。 |
run |
使用提供的输入调用此 Web 服务。 |
serialize |
将此 Web 服务转换为 JSON 序列化字典。 |
update |
使用提供的属性更新 Web 服务。 保留为 None 的值将在此 Web 服务中保持不变。 |
add_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
|
要为此 Web 服务分配的 CPU 核心数。 可以是小数。 默认值为 0.1 默认值: None
|
memory_gb
|
要为此 Web 服务分配的内存量(以 GB 为单位)。 可以是小数。 默认值为 0.5 默认值: None
|
tags
|
要为此 Web 服务提供键值标记的字典。 默认值: None
|
properties
|
要为此 Web 服务提供键值属性的字典。 部署后无法更改这些属性,但可以添加新的键值对。 默认值: None
|
description
|
提供此 Web 服务的说明。 默认值: None
|
___location
|
要将此 Webservice 部署到的 Azure 区域。 如果未指定,将使用工作区位置。 有关可用区域的更多详细信息,请参阅 “按区域排序的产品”。 默认值: None
|
auth_enabled
|
是否为此 Web 服务启用身份验证。 默认为 False。 默认值: None
|
ssl_enabled
|
是否为此 Web 服务启用 SSL。 默认为 False。 默认值: None
|
enable_app_insights
|
是否为此 Web 服务启用 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
|
用于此 Web 服务的主身份验证密钥。 默认值: None
|
secondary_key
|
用于此 Web 服务的辅助身份验证密钥。 默认值: None
|
collect_model_data
|
是否为 Web 服务启用模型数据收集。 默认值: None
|
cmk_vault_base_url
|
客户管理的密钥保管库基 URL 默认值: None
|
cmk_key_name
|
客户管理的密钥名称。 默认值: None
|
cmk_key_version
|
客户管理的密钥版本。 默认值: None
|
vnet_name
|
虚拟网络名称。 默认值: None
|
subnet_name
|
虚拟网络中的子网名称。 默认值: None
|
返回
类型 | 说明 |
---|---|
部署 Webservice 对象时要使用的配置对象。 |
例外
类型 | 说明 |
---|---|
get_token
run
使用提供的输入调用此 Web 服务。
run(input_data)
参数
名称 | 说明 |
---|---|
input_data
必需
|
<xref:varies>
要调用 Web 服务的输入。 |
返回
类型 | 说明 |
---|---|
调用 Web 服务的结果。 |
例外
类型 | 说明 |
---|---|
serialize
update
使用提供的属性更新 Web 服务。
保留为 None 的值将在此 Web 服务中保持不变。
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
|
要部署到 Web 服务的新映像。 默认值: None
|
tags
|
要为此 Web 服务提供键值标记的字典。 将替换现有标记。 默认值: None
|
properties
|
要添加到现有属性字典的键值属性字典。 默认值: None
|
description
|
提供此 Web 服务的说明。 默认值: None
|
auth_enabled
|
为此 Web 服务启用或禁用身份验证。 默认值: None
|
ssl_enabled
|
是否为此 Web 服务启用 SSL。 默认值: None
|
ssl_cert_pem_file
|
启用 SSL 时所需的证书文件。 默认值: None
|
ssl_key_pem_file
|
启用 SSL 时所需的密钥文件。 默认值: None
|
ssl_cname
|
如果启用了 SSL,则为 cname。 默认值: None
|
enable_app_insights
|
是否为此 Web 服务启用 AppInsights。 默认值: None
|
models
|
要打包到更新的服务中的 Model 对象列表。 默认值: None
|
inference_config
|
用于提供所需模型部署属性的 InferenceConfig 对象。 默认值: None
|
返回
类型 | 说明 |
---|---|