LocalWebservice 類別
表示部署為本機 Web 服務端點的機器學習模型。
在本機部署 Web 服務對於偵錯和測試案例很有用。
本機 Webservice 建構函式。
LocalWebservice 建構函式是用來擷取與所提供工作區相關聯的 LocalWebservice 物件的本機標記法。
- 繼承
-
LocalWebservice
建構函式
LocalWebservice(*args, **kwargs)
參數
名稱 | Description |
---|---|
workspace
必要
|
包含將擷取之任何 Model 物件的工作區物件。 |
name
必要
|
要擷取的 Webservice 物件名稱。 |
must_exist
必要
|
建立記憶體內建物件時,Webservice 是否必須已經存在。 |
workspace
必要
|
包含將擷取之任何 Model 物件的工作區物件。 |
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 的組態部署 Web 服務。 |
deserialize |
將模型管理服務回應 JSON 物件轉換成 Webservice 物件。 注意 LocalWebservice 不支援。 |
get_keys |
擷取此 Webservice 的驗證金鑰。 注意 LocalWebservice 不支援。 |
get_logs |
擷取此 LocalWebservice 的記錄。 |
get_token |
擷取此 Webservice 的驗證權杖,範圍限定為目前使用者。 注意 LocalWebservice 不支援。 |
list |
列出與對應工作區相關聯的 LocalWebservices。 傳回的結果可以使用參數進行篩選。 |
regen_key |
重新產生其中一個 Webservice 的金鑰。 注意 LocalWebservice 不支援。 |
reload |
重載 LocalWebservice 的執行腳本和相依性。 這會重新開機具有更新資產複本的服務容器,包括執行腳本和本機相依性,但不會重建基礎映射。 因此,Conda/pip 相依性或自訂 Docker 步驟的變更不會反映在重載的 LocalWebservice 中。 若要處理這些變更, 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)
參數
名稱 | Description |
---|---|
delete_cache
必要
|
是否要刪除針對服務快取的暫存檔。 (預設:True) |
delete_image
必要
|
是否要刪除服務的 Docker 映射。 (預設:False) |
delete_volume
必要
|
是否要刪除服務的 Docker 磁片區。 (預設:True) |
例外狀況
類型 | Description |
---|---|
deploy_configuration
建立用來部署本機 Webservice 的組態物件。
static deploy_configuration(port=None)
參數
名稱 | Description |
---|---|
port
|
本機連接埠上公開服務的 HTTP 端點。 預設值: None
|
傳回
類型 | Description |
---|---|
部署 Webservice 物件時要使用的組態物件。 |
例外狀況
類型 | Description |
---|---|
deploy_to_cloud
根據 LocalWebservice 的組態部署 Web 服務。
deploy_to_cloud(name=None, deployment_config=None, deployment_target=None)
參數
名稱 | Description |
---|---|
name
|
要提供已部署服務的名稱。 工作區必須是唯一的。 預設值: None
|
deployment_config
|
用來設定 Web 服務的 WebserviceDeploymentConfiguration。 如果未提供,則會根據所需的目標使用空的組態物件。 預設值: None
|
deployment_target
|
要 ComputeTarget 部署 Webservice 的 。 因為 ACI 沒有相關聯的 ComputeTarget ,請將此參數保留為 None 以部署到 ACI。 預設值: None
|
傳回
類型 | Description |
---|---|
對應至已部署 Webservice 的 Webservice 物件。 |
例外狀況
類型 | Description |
---|---|
deserialize
將模型管理服務回應 JSON 物件轉換成 Webservice 物件。
注意
LocalWebservice 不支援。
deserialize(workspace, webservice_payload)
參數
名稱 | Description |
---|---|
cls
必要
|
|
workspace
必要
|
Webservice 所登錄的工作區物件。 |
webservice_payload
必要
|
要轉換成 Webservice 物件的 JSON 物件。 |
例外狀況
類型 | Description |
---|---|
azureml.exceptions.NotImplementedError
|
get_keys
擷取此 Webservice 的驗證金鑰。
注意
LocalWebservice 不支援。
get_keys()
傳回
類型 | Description |
---|---|
此 Webservice 的驗證金鑰。 |
例外狀況
類型 | Description |
---|---|
azureml.exceptions.NotImplementedError
|
get_logs
擷取此 LocalWebservice 的記錄。
get_logs(num_lines=5000, raw=False)
參數
名稱 | Description |
---|---|
num_lines
必要
|
要擷取的記錄行數目上限。 (預設值:5000) |
raw
必要
|
傳回原始 Docker 容器輸出,而不嘗試格式化它。 (預設:False) |
傳回
類型 | Description |
---|---|
此 LocalWebservice 的記錄。 |
例外狀況
類型 | Description |
---|---|
get_token
擷取此 Webservice 的驗證權杖,範圍限定為目前使用者。
注意
LocalWebservice 不支援。
get_token()
傳回
類型 | Description |
---|---|
此 Webservice 的驗證權杖,以及何時應該重新整理。 |
例外狀況
類型 | Description |
---|---|
azureml.exceptions.NotImplementedError
|
list
列出與對應工作區相關聯的 LocalWebservices。
傳回的結果可以使用參數進行篩選。
static list(workspace, model_name=None, model_id=None, all=None)
參數
名稱 | Description |
---|---|
workspace
必要
|
與 LocalWebservices 相關聯的 Workspace 物件。 |
model_name
|
篩選清單,只包含以特定模型名稱部署的 LocalWebservices。 預設值: None
|
model_id
|
篩選清單,只包含以特定模型識別碼部署的 LocalWebservices。 預設值: None
|
all
|
顯示所有服務。 預設只會顯示執行中的服務。 預設值: None
|
傳回
類型 | Description |
---|---|
與所提供工作區相關聯的 LocalWebservices 篩選清單。 |
例外狀況
類型 | Description |
---|---|
regen_key
重新產生其中一個 Webservice 的金鑰。
注意
LocalWebservice 不支援。
regen_key(key)
參數
名稱 | Description |
---|---|
key
必要
|
要重新產生哪些金鑰。 選項為 'Primary' 或 'Secondary' |
例外狀況
類型 | Description |
---|---|
reload
重載 LocalWebservice 的執行腳本和相依性。
這會重新開機具有更新資產複本的服務容器,包括執行腳本和本機相依性,但不會重建基礎映射。 因此,Conda/pip 相依性或自訂 Docker 步驟的變更不會反映在重載的 LocalWebservice 中。 若要處理這些變更, update 請改為呼叫 方法。
reload(wait=False)
參數
名稱 | Description |
---|---|
wait
必要
|
等候服務的容器達到狀況良好的狀態。 (預設:False) |
例外狀況
類型 | Description |
---|---|
run
使用提供的輸入呼叫此 LocalWebservice。
run(input_data)
參數
名稱 | Description |
---|---|
input_data
必要
|
<xref:varies>
要呼叫 LocalWebservice 的輸入。 |
傳回
類型 | Description |
---|---|
<xref:varies>
|
呼叫 LocalWebservice 的結果。 |
例外狀況
類型 | Description |
---|---|
serialize
將此 Webservice 物件轉換成 JSON 序列化的字典。
serialize()
傳回
類型 | Description |
---|---|
Webservice 物件的序列化表示。 |
例外狀況
類型 | Description |
---|---|
update
使用所提供的屬性更新 LocalWebservice。
保留為 None 的值將會在此 LocalWebservice 中保持不變。
update(models=None, image_config=None, deployment_config=None, wait=False, inference_config=None)
參數
名稱 | Description |
---|---|
models
必要
|
LocalWebservice 中包含的模型新清單。 |
image_config
必要
|
要套用至 LocalWebservice 的映射組態選項。 |
deployment_config
必要
|
要套用至 LocalWebservice 的部署組態選項。 |
inference_config
必要
|
用來提供必要模型部署屬性的 InferenceConfig 物件。 |
wait
必要
|
等候服務的容器達到狀況良好的狀態。 (預設:False) |
傳回
類型 | Description |
---|---|
例外狀況
類型 | Description |
---|---|
update_deployment_state
重新整理記憶體內建物件的目前狀態。
根據對應本機 Docker 容器的目前狀態,執行物件的屬性就地更新。
update_deployment_state(must_exist=False)
參數
名稱 | Description |
---|---|
must_exist
|
建立記憶體內建物件時,Webservice 是否必須已經存在。 預設值: False
|
例外狀況
類型 | Description |
---|---|
wait_for_deployment
輪詢執行中的 LocalWebservice 部署。
wait_for_deployment(show_output=False)
參數
名稱 | Description |
---|---|
show_output
必要
|
列印更多詳細資訊輸出的選項。 (預設:False) |
例外狀況
類型 | Description |
---|---|
屬性
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'