AksWebservice クラス
Azure Kubernetes Service に Web サービス エンドポイントとしてデプロイされた機械学習モデルを表します。
デプロイされたサービスは、モデル、スクリプト、関連ファイルから作成されます。 結果として得られる Web サービスは、REST API を備えた、負荷分散された HTTP エンドポイントです。 この API にデータを送信し、モデルによって返される予測を受信できます。
AksWebservice は、1 つのサービスを 1 つのエンドポイントにデプロイします。 1 つのエンドポイントに複数のサービスをデプロイするには AksEndpoint クラスを使用します。
詳しくは、「Azure Kubernetes Service クラスターにモデルをデプロイする」をご覧ください。
Webservice インスタンスを初期化します。
Webservice コンストラクターは、指定されたワークスペースに関連付けられている Webservice オブジェクトのクラウド表現を取得します。 取得した Webservice オブジェクトの特定の型に対応する子クラスのインスタンスが返されます。
- 継承
-
AksWebservice
コンストラクター
AksWebservice(workspace, name)
パラメーター
名前 | 説明 |
---|---|
workspace
必須
|
取得する Webservice オブジェクトを含むワークスペース オブジェクト。 |
name
必須
|
取得する Webservice オブジェクトの名前。 |
注釈
推奨されるデプロイ パターンは、deploy_configuration
メソッドを使用してデプロイ構成オブジェクトを作成し、次に示すように Model クラスの deploy
メソッドと一緒にそれを使用します。
# Set the web service configuration (using default here)
aks_config = AksWebservice.deploy_configuration()
# # Enable token auth and disable (key) auth on the webservice
# aks_config = AksWebservice.deploy_configuration(token_auth_enabled=True, auth_enabled=False)
完全なサンプルは、https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb から入手できます
Webservice としてモデルをデプロイするには、次のようなさまざまな方法があります。
ワークスペースに既に登録されているモデルの Model の
deploy
メソッド。Webservice の
deploy_from_image
メソッド。ワークスペースに既に登録されているモデルの Webservice の
deploy_from_model
メソッド。 このメソッドは、イメージを作成します。モデルを登録し、イメージを作成する Webservice の
deploy
メソッド。
Webservice の使用方法の詳細については、次を参照してください
"変数" セクションには、クラウド AksWebservice オブジェクトのローカル表現の属性が一覧表示されます。 これらの変数は読み取り専用と見なされます。 値を変更しても、対応するクラウド オブジェクトには反映されません。
変数
名前 | 説明 |
---|---|
enable_app_insights
|
Webservice に対して AppInsights のログが有効になっているかどうか。 |
autoscaler
|
Webservice の自動スケーラー オブジェクト。 |
compute_name
|
Webservice がデプロイされる ComputeTarget の名前。 |
container_resource_requirements
|
Webservice のコンテナー リソース要件。 |
liveness_probe_requirements
|
Webservice の liveness probe 要件。 |
data_collection
|
Webservice の DataCollection オブジェクト。 |
max_concurrent_requests_per_container
|
Webservice のコンテナーあたりの最大同時要求数。 |
max_request_wait_time
|
Webservice の最大要求待機時間 (ミリ秒単位)。 |
num_replicas
|
Webservice のレプリカ数。 各レプリカは AKS ポッドに対応します。 |
scoring_timeout_ms
|
Webservice のスコアリング タイムアウト (ミリ秒単位)。 |
azureml.core.webservice.AksWebservice.scoring_uri
|
Webservice のスコアリング エンドポイント |
is_default
|
Webservice が親 AksEndpoint の既定のバージョンであるかどうか。 |
traffic_percentile
|
親 AksEndpoint の Webservice にルーティングするトラフィックの割合。 |
version_type
|
親 AksEndpoint の Webservice のバージョンの種類。 |
token_auth_enabled
|
Webservice に対してトークン認証が有効になっているかどうか。 |
environment
|
Webservice の作成に使用された環境オブジェクト。 |
azureml.core.webservice.AksWebservice.models
|
Webservice にデプロイされたモデルの一覧。 |
deployment_status
|
Webservice のデプロイ状態。 |
namespace
|
Webservice の AKS 名前空間。 |
azureml.core.webservice.AksWebservice.swagger_uri
|
Webservice の swagger エンドポイント。 |
メソッド
add_properties |
この Webservice のプロパティ辞書にキーと値のペアを追加します。 |
add_tags |
この Webservice のタグ辞書にキーと値のペアを追加します。 WebserviceException を発生させます。 |
deploy_configuration |
AKS コンピューティング先にデプロイするための構成オブジェクトを作成します。 |
get_access_token |
この Webservice の認証トークンを取得します。 |
get_token |
非推奨。
この Webservice の認証トークンを取得します。 |
remove_tags |
この Webservice のタグの辞書から、指定されたキーを削除します。 |
run |
指定された入力でこの Webservice を呼び出します。 |
serialize |
この Webservice を JSON シリアル化された辞書に変換します。 |
update |
指定されたプロパティで Webservice を更新します。 None のままの値は、この Webservice では変更されません。 |
add_properties
この Webservice のプロパティ辞書にキーと値のペアを追加します。
add_properties(properties)
パラメーター
名前 | 説明 |
---|---|
properties
必須
|
追加するプロパティの辞書。 |
add_tags
この Webservice のタグ辞書にキーと値のペアを追加します。
WebserviceException を発生させます。
add_tags(tags)
パラメーター
名前 | 説明 |
---|---|
tags
必須
|
追加するタグの辞書。 |
例外
型 | 説明 |
---|---|
deploy_configuration
AKS コンピューティング先にデプロイするための構成オブジェクトを作成します。
static deploy_configuration(autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, primary_key=None, secondary_key=None, tags=None, properties=None, description=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, compute_target_name=None, cpu_cores_limit=None, memory_gb_limit=None, blobfuse_enabled=None)
パラメーター
名前 | 説明 |
---|---|
autoscale_enabled
|
この Webservice に対して自動スケールを有効にするかどうか。 num_replicas が None の場合、既定値は True です。 規定値: None
|
autoscale_min_replicas
|
この Webservice を自動スケールするときに使用するコンテナーの最小数。 既定値は 1 です。 規定値: None
|
autoscale_max_replicas
|
この Web サービスを自動スケーリングするときに使用するコンテナーの最大数。 既定値は 10 です。 規定値: None
|
autoscale_refresh_seconds
|
自動スケーラーがこの Web サービスのスケーリングを試行する頻度。 既定値は 1 です。 規定値: None
|
autoscale_target_utilization
|
自動スケーラーがこの Web サービスに対してメンテナンスを試行するターゲット使用率 (最大 100%)。 既定値は 70 です。 規定値: None
|
collect_model_data
|
この Web サービスに対してモデル データ収集を有効にするかどうか。 既定値は False です。 規定値: None
|
auth_enabled
|
この Webservice に対してキー認証を有効にするかどうか。 既定値は True です。 規定値: None
|
cpu_cores
|
この Web サービスに割り当てる CPU コアの数。 10 進数を指定できます。 既定値は 0.1 です。 Azure Kubernetes Service での制限ではなく、ポッド コア要求に対応します。 規定値: None
|
memory_gb
|
この Webservice に割り当てるメモリ量 (GB 単位)。 10 進数を指定できます。 既定値は 0.5 です。 Azure Kubernetes Service の制限ではなくポッド メモリ要求に対応します。 規定値: None
|
enable_app_insights
|
この Webservice に対して Application Insights ログ記録を有効にするかどうか。 既定値は False です。 規定値: None
|
scoring_timeout_ms
|
この Web サービスに対するスコアリング呼び出しに適用するタイムアウト。 既定値は 60000 です。 規定値: None
|
replica_max_concurrent_requests
|
この Web サービスに対して許可するレプリカあたりの同時要求の最大数。 既定値は 1 です。 この設定は、マイクロソフト テクニカル サポートまたはマイクロソフトの Azure Machine Learning チームのメンバーの指示がない限り、既定値の 1 してください。 規定値: None
|
max_request_wait_time
|
503 エラーを返すまでに、要求がキューに置かれる最大時間 (ミリ秒単位)。 既定値は 500 です。 規定値: None
|
num_replicas
|
この Web サービスに割り当てるコンテナーの数。 既定値はありません。このパラメーターが設定されない場合、自動スケーラーは既定で有効になります。 規定値: None
|
primary_key
|
この Webservice に使用するプライマリ認証キー。 規定値: None
|
secondary_key
|
この Webservice に使用するセカンダリ認証キー。 規定値: None
|
tags
|
この Webservice に提供するキー値タグのディクショナリ。 規定値: None
|
properties
|
この Web サービスに提供するキー値プロパティの辞書。 これらのプロパティはデプロイ後は変更できません。ただし、新しいキー値のペアを追加することはできます。 規定値: None
|
description
|
この Web サービスに提供する説明。 規定値: None
|
gpu_cores
|
この Web サービスに割り当てる GPU コアの数。 既定値は 0 です。 規定値: None
|
period_seconds
|
liveness probe を実行する頻度 (秒単位)。 既定値は 10 秒です。 最大値は 1 です。 規定値: None
|
initial_delay_seconds
|
コンテナーの起動後、liveness probe が開始するまでの秒数。 既定値は 310 です。 規定値: None
|
timeout_seconds
|
liveness probe がタイムアウトするまでの秒数。既定値は 2 秒です。 最大値は 1 です。 規定値: None
|
success_threshold
|
失敗した後、liveness probe が成功と見なされるための最小連続成功数。 既定値は 1 です。 最大値は 1 です。 規定値: None
|
failure_threshold
|
Pod が起動し、liveness probe が失敗したとき、Kubernetes では、failureThreshold 回数だけ試し、それからあきらめます。 既定値は 3 です。 最大値は 1 です。 規定値: None
|
namespace
|
この Web サービスをデプロイする Kubernetes 名前空間: 最大 63 文字の小文字の英数字 ('a'-'z'、'0'-'9') とハイフン ('-')。 先頭と末尾の文字をハイフンにすることはできません。 規定値: None
|
token_auth_enabled
|
この Webservice に対してトークン認証を有効にするかどうか。 これが有効になっている場合、ユーザーは Azure Active Directory の資格情報を使用してアクセス トークンを取得することで、この Webservice にアクセスできます。 既定値は False です。 規定値: None
|
compute_target_name
|
デプロイするコンピューティング先の名前 規定値: None
|
cpu_cores_limit
|
この Webservice で使用できる CPU コアの最大数。 10 進数を指定できます。 規定値: None
|
memory_gb_limit
|
この Web サービスで使用できるメモリの最大量 (GB 単位)。 10 進数を指定できます。 規定値: None
|
blobfuse_enabled
|
この Webservice のモデルをダウンロードするために blobfuse を有効にするかどうかを指定します。 既定値は true です 規定値: None
|
戻り値
型 | 説明 |
---|---|
AksWebservice をデプロイするときに使用する構成オブジェクト。 |
例外
型 | 説明 |
---|---|
get_access_token
この Webservice の認証トークンを取得します。
get_access_token()
戻り値
型 | 説明 |
---|---|
この Webservice の認証トークンを記述するオブジェクト。 |
例外
型 | 説明 |
---|---|
get_token
非推奨。
get_access_token
メソッドを代わりに使用してください。
この Webservice の認証トークンを取得します。
get_token()
戻り値
型 | 説明 |
---|---|
この Webservice の認証トークンおよび更新するタイミング。 |
例外
型 | 説明 |
---|---|
remove_tags
run
指定された入力でこの Webservice を呼び出します。
run(input_data)
パラメーター
名前 | 説明 |
---|---|
input_data
必須
|
<xref:varies>
Webservice を呼び出す入力 |
戻り値
型 | 説明 |
---|---|
Webservice を呼び出した結果 |
例外
型 | 説明 |
---|---|
serialize
update
指定されたプロパティで Webservice を更新します。
None のままの値は、この Webservice では変更されません。
update(image=None, autoscale_enabled=None, autoscale_min_replicas=None, autoscale_max_replicas=None, autoscale_refresh_seconds=None, autoscale_target_utilization=None, collect_model_data=None, auth_enabled=None, cpu_cores=None, memory_gb=None, enable_app_insights=None, scoring_timeout_ms=None, replica_max_concurrent_requests=None, max_request_wait_time=None, num_replicas=None, tags=None, properties=None, description=None, models=None, inference_config=None, gpu_cores=None, period_seconds=None, initial_delay_seconds=None, timeout_seconds=None, success_threshold=None, failure_threshold=None, namespace=None, token_auth_enabled=None, cpu_cores_limit=None, memory_gb_limit=None, **kwargs)
パラメーター
名前 | 説明 |
---|---|
image
|
Webservice にデプロイする新しいイメージ 規定値: None
|
autoscale_enabled
|
この Webservice の自動スケールを有効または無効にします 規定値: None
|
autoscale_min_replicas
|
この Webservice を自動スケールするときに使用するコンテナーの最小数 規定値: None
|
autoscale_max_replicas
|
この Webservice を自動スケールするときに使用するコンテナーの最大数 規定値: None
|
autoscale_refresh_seconds
|
自動スケーラーがこの Webservice のスケーリングを試行する頻度 規定値: None
|
autoscale_target_utilization
|
自動スケーラーがこの Webservice に対してメンテナンスを試行する目標使用率 (最大 100%) 規定値: None
|
collect_model_data
|
この Webservice のモデル データ収集を有効または無効にする 規定値: None
|
auth_enabled
|
この Webservice に対して認証を有効にするかどうか 規定値: None
|
cpu_cores
|
この Web サービスに割り当てる CPU コアの数。 10 進数を指定できます 規定値: None
|
memory_gb
|
この Webservice に割り当てるメモリ量 (GB 単位)。 10 進数を指定できます 規定値: None
|
enable_app_insights
|
この Webservice に対して Application Insights ログ記録を有効にするかどうか 規定値: None
|
scoring_timeout_ms
|
この Webservice に対するスコアリング呼び出しに適用するタイムアウト 規定値: None
|
replica_max_concurrent_requests
|
この Webservice で許可するレプリカあたりの同時要求の最大数。 規定値: None
|
max_request_wait_time
|
503 エラーを返すまでに、要求がキューにとどまる最大時間 (ミリ秒単位) 規定値: None
|
num_replicas
|
この Webservice に割り当てるコンテナーの数 規定値: None
|
tags
|
この Webservice に提供するキー値タグのディクショナリ。 既存のタグを置き換えます。 規定値: None
|
properties
|
既存のプロパティ ディクショナリに追加するキー値プロパティのディクショナリ 規定値: None
|
description
|
この Webservice に提供する説明 規定値: None
|
models
|
更新されたサービスを使用してパッケージ化するモデル オブジェクトのリスト 規定値: None
|
inference_config
|
必要なモデル デプロイ プロパティを提供するために使用される InferenceConfig オブジェクト。 規定値: None
|
gpu_cores
|
この Webservice に割り当てる GPU コアの数 規定値: None
|
period_seconds
|
liveness probe を実行する頻度 (秒単位)。 既定値は 10 秒です。 最大値は 1 です。 規定値: None
|
initial_delay_seconds
|
コンテナーの起動後、liveness probe が開始するまでの秒数。 規定値: None
|
timeout_seconds
|
liveness probe がタイムアウトするまでの秒数。既定値は 1 秒です。 最大値は 1 です。 規定値: None
|
success_threshold
|
失敗後、liveness probe が成功と見なされるための最小連続成功数。 既定値は 1 です。 最大値は 1 です。 規定値: None
|
failure_threshold
|
Pod が起動し、liveness probe が失敗したとき、Kubernetes では、failureThreshold 回数だけ試し、それからあきらめます。 既定値は 3 です。 最大値は 1 です。 規定値: None
|
namespace
|
この Web サービスをデプロイする Kubernetes 名前空間: 最大 63 文字の小文字の英数字 ('a'-'z'、'0'-'9') とハイフン ('-')。 先頭と末尾の文字をハイフンにすることはできません。 規定値: None
|
token_auth_enabled
|
この Webservice に対してトークン認証を有効にするかどうか。 これが有効になっている場合、ユーザーは Azure Active Directory の資格情報を使用してアクセス トークンを取得することで、この Webservice にアクセスできます。 既定値は False です 規定値: None
|
cpu_cores_limit
|
この Webservice で使用できる CPU コアの最大数。 10 進数を指定できます。 規定値: None
|
memory_gb_limit
|
この Web サービスで使用できるメモリの最大量 (GB 単位)。 10 進数を指定できます。 規定値: None
|
kwargs
必須
|
<xref:varies>
AKS Web サービスの Kubernetes オンライン エンドポイントへの移行とデプロイをサポートするパラメーターが含まれます。 is_migration=True|False、compute_target=。 |
例外
型 | 説明 |
---|---|