LocalWebservice 类
表示部署为本地 Web 服务终结点的机器学习模型。
在本地部署 Web 服务对于调试和测试方案非常有用。
本地 Webservice 构造函数。
LocalWebservice 构造函数用于检索与提供的工作区关联的 LocalWebservice 对象的本地表示形式。
- 继承
-
LocalWebservice
构造函数
LocalWebservice(*args, **kwargs)
参数
名称 | 说明 |
---|---|
workspace
必需
|
包含要检索的任何模型对象的工作区对象。 |
name
必需
|
要检索的 Webservice 对象的名称。 |
must_exist
必需
|
创建内存中对象时 webservice 是否必须已存在。 |
workspace
必需
|
包含要检索的任何模型对象的工作区对象。 |
name
必需
|
要检索的 LocalWebservice 对象的名称。 |
must_exist
必需
|
创建内存中对象时 webservice 是否必须已存在。 |
注解
以下代码示例演示如何创建本地 Docker Web 服务。 有关更多详细信息,请参阅笔记本链接。
from azureml.core.webservice import LocalWebservice
# This is optional, if not provided Docker will choose a random unused port.
deployment_config = LocalWebservice.deploy_configuration(port=6789)
local_service = Model.deploy(ws, "test", [model], inference_config, deployment_config)
local_service.wait_for_deployment()
方法
delete |
从本地计算机中删除此 LocalWebservice。 此函数调用不是异步的;它会运行到删除了服务为止。 |
deploy_configuration |
创建用于部署本地 Webservice 的配置对象。 |
deploy_to_cloud |
根据 LocalWebservice 的配置部署 Webservice。 |
deserialize |
将模型管理服务响应 JSON 对象转换为 Webservice 对象。 注意 不受 LocalWebservice 的支持。 |
get_keys |
检索此 Webservice 的身份验证密钥。 注意 不受 LocalWebservice 的支持。 |
get_logs |
检索此 LocalWebservice 的日志。 |
get_token |
检索此 Webservice 的身份验证令牌,范围为当前用户。 注意 不受 LocalWebservice 的支持。 |
list |
列出与相应工作区关联的 LocalWebservice。 可以使用参数筛选返回的结果。 |
regen_key |
重新生成 Webservice 的一个密钥。 注意 不受 LocalWebservice 的支持。 |
reload |
重新加载 LocalWebservice 的执行脚本和依赖项。 这将使用已更新资产的副本(包括执行脚本和本地依赖项)重启服务的容器,但不重新生成基础映像。 因此,对 Conda/pip 依赖项或自定义 Docker 步骤所做的更改不会反映在重新加载的 LocalWebservice 中。 若要处理这些更改,请改为调用 update 方法。 |
run |
使用提供的输入调用此 LocalWebservice。 |
serialize |
将此 Webservice 对象转换为 JSON 序列化字典。 |
update |
使用提供的属性更新 LocalWebservice。 在此 LocalWebservice 中,保留为 None 的值将保持不变。 |
update_deployment_state |
刷新内存中对象的当前状态。 根据相应本地 Docker 容器的当前状态,对对象的属性执行就地更新。 |
wait_for_deployment |
轮询正在运行的 LocalWebservice 部署。 |
delete
从本地计算机中删除此 LocalWebservice。
此函数调用不是异步的;它会运行到删除了服务为止。
delete(delete_cache=True, delete_image=False, delete_volume=True)
参数
名称 | 说明 |
---|---|
delete_cache
必需
|
是否删除为服务缓存的临时文件。 (默认值:True) |
delete_image
必需
|
是否删除服务的 Docker 映像。 (默认值:False) |
delete_volume
必需
|
是否删除服务的 Docker 卷。 (默认值:True) |
例外
类型 | 说明 |
---|---|
deploy_configuration
创建用于部署本地 Webservice 的配置对象。
static deploy_configuration(port=None)
参数
名称 | 说明 |
---|---|
port
|
用于公开服务的 HTTP 终结点的本地端口。 默认值: None
|
返回
类型 | 说明 |
---|---|
部署 Webservice 对象时要使用的配置对象。 |
例外
类型 | 说明 |
---|---|
deploy_to_cloud
根据 LocalWebservice 的配置部署 Webservice。
deploy_to_cloud(name=None, deployment_config=None, deployment_target=None)
参数
名称 | 说明 |
---|---|
name
|
为部署的服务指定的名称。 对工作区必须是唯一的。 默认值: None
|
deployment_config
|
用于配置 webservice 的 WebserviceDeploymentConfiguration。 如果未提供,将基于所需目标使用空配置对象。 默认值: None
|
deployment_target
|
要将 Webservice 部署到的 ComputeTarget。 由于 ACI 没有关联 ComputeTarget,因此将此参数保留为 None 以部署到 ACI。 默认值: None
|
返回
类型 | 说明 |
---|---|
对应于已部署的 webservice 的 webservice 对象。 |
例外
类型 | 说明 |
---|---|
deserialize
将模型管理服务响应 JSON 对象转换为 Webservice 对象。
注意
不受 LocalWebservice 的支持。
deserialize(workspace, webservice_payload)
参数
名称 | 说明 |
---|---|
cls
必需
|
|
workspace
必需
|
Webservice 注册到的工作区对象。 |
webservice_payload
必需
|
要转换为 Webservice 对象的 JSON 对象。 |
例外
类型 | 说明 |
---|---|
azureml.exceptions.NotImplementedError
|
get_keys
检索此 Webservice 的身份验证密钥。
注意
不受 LocalWebservice 的支持。
get_keys()
返回
类型 | 说明 |
---|---|
此 Webservice 的身份验证密钥。 |
例外
类型 | 说明 |
---|---|
azureml.exceptions.NotImplementedError
|
get_logs
检索此 LocalWebservice 的日志。
get_logs(num_lines=5000, raw=False)
参数
名称 | 说明 |
---|---|
num_lines
必需
|
要检索的最大日志行数。 (默认值:5000) |
raw
必需
|
返回原始 Docker 容器输出,但不尝试设置其格式。 (默认值:False) |
返回
类型 | 说明 |
---|---|
此 LocalWebservice 的日志。 |
例外
类型 | 说明 |
---|---|
get_token
检索此 Webservice 的身份验证令牌,范围为当前用户。
注意
不受 LocalWebservice 的支持。
get_token()
返回
类型 | 说明 |
---|---|
此 Webservice 的身份验证令牌,以及应该刷新此令牌的时间。 |
例外
类型 | 说明 |
---|---|
azureml.exceptions.NotImplementedError
|
list
列出与相应工作区关联的 LocalWebservice。
可以使用参数筛选返回的结果。
static list(workspace, model_name=None, model_id=None, all=None)
参数
名称 | 说明 |
---|---|
workspace
必需
|
与 LocalWebservice 关联的工作区对象。 |
model_name
|
筛选列表,仅包含使用特定模型名称部署的 LocalWebservice。 默认值: None
|
model_id
|
筛选列表,仅包含使用特定模型 ID 部署的 LocalWebservice。 默认值: None
|
all
|
显示所有服务。 默认情况下,仅显示运行中的服务。 默认值: None
|
返回
类型 | 说明 |
---|---|
筛选出的与提供的工作区关联的 LocalWebservice 的列表。 |
例外
类型 | 说明 |
---|---|
regen_key
重新生成 Webservice 的一个密钥。
注意
不受 LocalWebservice 的支持。
regen_key(key)
参数
名称 | 说明 |
---|---|
key
必需
|
要重新生成的密钥。 选项为“Primary”或“Secondary” |
例外
类型 | 说明 |
---|---|
reload
重新加载 LocalWebservice 的执行脚本和依赖项。
这将使用已更新资产的副本(包括执行脚本和本地依赖项)重启服务的容器,但不重新生成基础映像。 因此,对 Conda/pip 依赖项或自定义 Docker 步骤所做的更改不会反映在重新加载的 LocalWebservice 中。 若要处理这些更改,请改为调用 update 方法。
reload(wait=False)
参数
名称 | 说明 |
---|---|
wait
必需
|
等待服务的容器达到正常状态。 (默认值:False) |
例外
类型 | 说明 |
---|---|
run
使用提供的输入调用此 LocalWebservice。
run(input_data)
参数
名称 | 说明 |
---|---|
input_data
必需
|
<xref:varies>
用于调用 LocalWebservice 的输入。 |
返回
类型 | 说明 |
---|---|
<xref:varies>
|
调用 LocalWebservice 后的结果。 |
例外
类型 | 说明 |
---|---|
serialize
将此 Webservice 对象转换为 JSON 序列化字典。
serialize()
返回
类型 | 说明 |
---|---|
Webservice 对象的序列化表示形式。 |
例外
类型 | 说明 |
---|---|
update
使用提供的属性更新 LocalWebservice。
在此 LocalWebservice 中,保留为 None 的值将保持不变。
update(models=None, image_config=None, deployment_config=None, wait=False, inference_config=None)
参数
名称 | 说明 |
---|---|
models
必需
|
LocalWebservice 中包含的模型的新列表。 |
image_config
必需
|
应用于 LocalWebservice 的映像配置选项。 |
deployment_config
必需
|
应用于 LocalWebservice 的部署配置选项。 |
inference_config
必需
|
用于提供所需模型部署属性的 InferenceConfig 对象。 |
wait
必需
|
等待服务的容器达到正常状态。 (默认值:False) |
返回
类型 | 说明 |
---|---|
例外
类型 | 说明 |
---|---|
update_deployment_state
刷新内存中对象的当前状态。
根据相应本地 Docker 容器的当前状态,对对象的属性执行就地更新。
update_deployment_state(must_exist=False)
参数
名称 | 说明 |
---|---|
must_exist
|
创建内存中对象时 webservice 是否必须已存在。 默认值: False
|
例外
类型 | 说明 |
---|---|
wait_for_deployment
轮询正在运行的 LocalWebservice 部署。
wait_for_deployment(show_output=False)
参数
名称 | 说明 |
---|---|
show_output
必需
|
用于显示更详细输出的选项。 (默认值:False) |
例外
类型 | 说明 |
---|---|
属性
port
scoring_uri
swagger_uri
NETWORK_NAME
NETWORK_NAME = 'azureml-local'
STATE_DELETED
STATE_DELETED = 'deleted'
STATE_DEPLOYING
STATE_DEPLOYING = 'deploying'
STATE_FAILED
STATE_FAILED = 'failed'
STATE_RUNNING
STATE_RUNNING = 'running'
STATE_UNKNOWN
STATE_UNKNOWN = 'unknown'