LocalWebservice 类

表示部署为本地 Web 服务终结点的机器学习模型。

在本地部署 Web 服务对于调试和测试方案非常有用。

本地 Web 服务构造函数。

LocalWebservice 构造函数用于检索与提供的工作区关联的 LocalWebservice 对象的本地表示形式。

构造函数

LocalWebservice(*args, **kwargs)

参数

名称 说明
workspace
必需

包含要检索的任何 Model 对象的工作区对象。

name
必需
str

要检索的 Webservice 对象的名称。

must_exist
必需

创建内存中对象时,Web 服务是否必须已存在。

workspace
必需

包含要检索的任何 Model 对象的工作区对象。

name
必需
str

要检索的 LocalWebservice 对象的名称。

must_exist
必需

创建内存中对象时,Web 服务是否必须已存在。

注解

以下代码示例演示如何创建本地 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

创建用于部署本地 Web 服务的配置对象。

deploy_to_cloud

基于 LocalWebservice 的配置部署 Web 服务。

deserialize

将模型管理服务响应 JSON 对象转换为 Webservice 对象。

注释

LocalWebservice 不支持。

get_keys

检索此 Web 服务的身份验证密钥。

注释

LocalWebservice 不支持。

get_logs

检索此 LocalWebservice 的日志。

get_token

检索此 Web 服务的身份验证令牌,范围限定为当前用户。

注释

LocalWebservice 不支持。

list

列出与相应工作区关联的 LocalWebservices。

可以使用参数筛选返回的结果。

regen_key

重新生成 Web 服务密钥之一。

注释

LocalWebservice 不支持。

reload

重新加载 LocalWebservice 的执行脚本和依赖项。

这会重启服务的容器,其中包含更新的资产副本,包括执行脚本和本地依赖项,但它不会重新生成基础映像。 因此,重新加载的 LocalWebservice 中不会反映对 Conda/pip 依赖项或自定义 Docker 步骤所做的更改。 若要处理这些更改,请改为调用该方法 update

run

使用提供的输入调用此 LocalWebservice。

serialize

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

update

使用提供的属性更新 LocalWebservice。

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

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

创建用于部署本地 Web 服务的配置对象。

static deploy_configuration(port=None)

参数

名称 说明
port
int

用于公开服务的 HTTP 终结点的本地端口。

默认值: None

返回

类型 说明

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

例外

类型 说明

deploy_to_cloud

基于 LocalWebservice 的配置部署 Web 服务。

deploy_to_cloud(name=None, deployment_config=None, deployment_target=None)

参数

名称 说明
name
str

要为已部署的服务提供的名称。 工作区必须是唯一的。

默认值: None
deployment_config

用于配置 Web 服务的 WebserviceDeploymentConfiguration。 如果未提供空配置对象,将基于所需的目标使用空配置对象。

默认值: None
deployment_target

要在其中部署 Web 服务的 A ComputeTarget 。 由于 ACI 没有关联 ComputeTarget,请将此参数保留为 None 以部署到 ACI。

默认值: None

返回

类型 说明

对应于已部署 Web 服务的 Webservice 对象。

例外

类型 说明

deserialize

将模型管理服务响应 JSON 对象转换为 Webservice 对象。

注释

LocalWebservice 不支持。

deserialize(workspace, webservice_payload)

参数

名称 说明
cls
必需
workspace
必需

Webservice 所注册的工作区对象。

webservice_payload
必需

要转换为 Webservice 对象的 JSON 对象。

例外

类型 说明
azureml.exceptions.NotImplementedError

get_keys

检索此 Web 服务的身份验证密钥。

注释

LocalWebservice 不支持。

get_keys()

返回

类型 说明

此 Web 服务的身份验证密钥。

例外

类型 说明
azureml.exceptions.NotImplementedError

get_logs

检索此 LocalWebservice 的日志。

get_logs(num_lines=5000, raw=False)

参数

名称 说明
num_lines
必需
int

要检索的最大日志行数。 (默认值:5000)

raw
必需

返回原始 Docker 容器输出,而不尝试设置其格式。 (默认值:False)

返回

类型 说明
str

此 LocalWebservice 的日志。

例外

类型 说明

get_token

检索此 Web 服务的身份验证令牌,范围限定为当前用户。

注释

LocalWebservice 不支持。

get_token()

返回

类型 说明

此 Web 服务的身份验证令牌以及应在之后刷新时。

例外

类型 说明
azureml.exceptions.NotImplementedError

list

列出与相应工作区关联的 LocalWebservices。

可以使用参数筛选返回的结果。

static list(workspace, model_name=None, model_id=None, all=None)

参数

名称 说明
workspace
必需

与 LocalWebservices 关联的 Workspace 对象。

model_name
str

筛选列表以仅包含使用特定模型名称部署的 LocalWebservices。

默认值: None
model_id
str

筛选列表以仅包含使用特定模型 ID 部署的 LocalWebservices。

默认值: None
all

显示所有服务。 默认情况下,仅显示正在运行的服务。

默认值: None

返回

类型 说明

与提供的工作区关联的 LocalWebservices 筛选列表。

例外

类型 说明

regen_key

重新生成 Web 服务密钥之一。

注释

LocalWebservice 不支持。

regen_key(key)

参数

名称 说明
key
必需
str

要重新生成哪个密钥。 选项为“主要”或“辅助”

例外

类型 说明

reload

重新加载 LocalWebservice 的执行脚本和依赖项。

这会重启服务的容器,其中包含更新的资产副本,包括执行脚本和本地依赖项,但它不会重新生成基础映像。 因此,重新加载的 LocalWebservice 中不会反映对 Conda/pip 依赖项或自定义 Docker 步骤所做的更改。 若要处理这些更改,请改为调用该方法 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。

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

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

创建内存中对象时,Web 服务是否必须已存在。

默认值: False

wait_for_deployment

轮询正在运行的 LocalWebservice 部署。

wait_for_deployment(show_output=False)

参数

名称 说明
show_output
必需

用于打印更详细输出的选项。 (默认值:False)

例外

类型 说明

属性

port

获取本地 Web 服务端口。

返回

类型 说明
int

端口号。

scoring_uri

获取本地 Web 服务评分 URI。

返回

类型 说明
str

评分 URI。

swagger_uri

获取本地 Web 服务 Swagger URI。

返回

类型 说明
str

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'