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
必須
str

取得する 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 としてモデルをデプロイするには、次のようなさまざまな方法があります。

  • ワークスペースに既に登録されているモデルの Modeldeploy メソッド。

  • Webservicedeploy_from_image メソッド。

  • ワークスペースに既に登録されているモデルの Webservicedeploy_from_model メソッド。 このメソッドは、イメージを作成します。

  • モデルを登録し、イメージを作成する Webservicedeploy メソッド。

Webservice の使用方法の詳細については、次を参照してください

"変数" セクションには、クラウド AksWebservice オブジェクトのローカル表現の属性が一覧表示されます。 これらの変数は読み取り専用と見なされます。 値を変更しても、対応するクラウド オブジェクトには反映されません。

変数

名前 説明
enable_app_insights

Webservice に対して AppInsights のログが有効になっているかどうか。

autoscaler

Webservice の自動スケーラー オブジェクト。

compute_name
str

Webservice がデプロイされる ComputeTarget の名前。

container_resource_requirements

Webservice のコンテナー リソース要件。

liveness_probe_requirements

Webservice の liveness probe 要件。

data_collection

Webservice の DataCollection オブジェクト。

max_concurrent_requests_per_container
int

Webservice のコンテナーあたりの最大同時要求数。

max_request_wait_time
int

Webservice の最大要求待機時間 (ミリ秒単位)。

num_replicas
int

Webservice のレプリカ数。 各レプリカは AKS ポッドに対応します。

scoring_timeout_ms
int

Webservice のスコアリング タイムアウト (ミリ秒単位)。

azureml.core.webservice.AksWebservice.scoring_uri
str

Webservice のスコアリング エンドポイント

is_default

Webservice が親 AksEndpoint の既定のバージョンであるかどうか。

traffic_percentile
int

親 AksEndpoint の Webservice にルーティングするトラフィックの割合。

version_type

親 AksEndpoint の Webservice のバージョンの種類。

token_auth_enabled

Webservice に対してトークン認証が有効になっているかどうか。

environment

Webservice の作成に使用された環境オブジェクト。

azureml.core.webservice.AksWebservice.models

Webservice にデプロイされたモデルの一覧。

deployment_status
str

Webservice のデプロイ状態。

namespace
str

Webservice の AKS 名前空間。

azureml.core.webservice.AksWebservice.swagger_uri
str

Webservice の swagger エンドポイント。

メソッド

add_properties

この Webservice のプロパティ辞書にキーと値のペアを追加します。

add_tags

この Webservice のタグ辞書にキーと値のペアを追加します。

WebserviceException を発生させます。

deploy_configuration

AKS コンピューティング先にデプロイするための構成オブジェクトを作成します。

get_access_token

この Webservice の認証トークンを取得します。

get_token

非推奨。 get_access_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
int

この Webservice を自動スケールするときに使用するコンテナーの最小数。 既定値は 1 です。

規定値: None
autoscale_max_replicas
int

この Web サービスを自動スケーリングするときに使用するコンテナーの最大数。 既定値は 10 です。

規定値: None
autoscale_refresh_seconds
int

自動スケーラーがこの Web サービスのスケーリングを試行する頻度。 既定値は 1 です。

規定値: None
autoscale_target_utilization
int

自動スケーラーがこの 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
int

この Web サービスに対するスコアリング呼び出しに適用するタイムアウト。 既定値は 60000 です。

規定値: None
replica_max_concurrent_requests
int

この Web サービスに対して許可するレプリカあたりの同時要求の最大数。 既定値は 1 です。 この設定は、マイクロソフト テクニカル サポートまたはマイクロソフトの Azure Machine Learning チームのメンバーの指示がない限り、既定値の 1 してください。

規定値: None
max_request_wait_time
int

503 エラーを返すまでに、要求がキューに置かれる最大時間 (ミリ秒単位)。 既定値は 500 です。

規定値: None
num_replicas
int

この Web サービスに割り当てるコンテナーの数。 既定値はありません。このパラメーターが設定されない場合、自動スケーラーは既定で有効になります。

規定値: None
primary_key
str

この Webservice に使用するプライマリ認証キー。

規定値: None
secondary_key
str

この Webservice に使用するセカンダリ認証キー。

規定値: None
tags

この Webservice に提供するキー値タグのディクショナリ。

規定値: None
properties

この Web サービスに提供するキー値プロパティの辞書。 これらのプロパティはデプロイ後は変更できません。ただし、新しいキー値のペアを追加することはできます。

規定値: None
description
str

この Web サービスに提供する説明。

規定値: None
gpu_cores
int

この Web サービスに割り当てる GPU コアの数。 既定値は 0 です。

規定値: None
period_seconds
int

liveness probe を実行する頻度 (秒単位)。 既定値は 10 秒です。 最大値は 1 です。

規定値: None
initial_delay_seconds
int

コンテナーの起動後、liveness probe が開始するまでの秒数。 既定値は 310 です。

規定値: None
timeout_seconds
int

liveness probe がタイムアウトするまでの秒数。既定値は 2 秒です。 最大値は 1 です。

規定値: None
success_threshold
int

失敗した後、liveness probe が成功と見なされるための最小連続成功数。 既定値は 1 です。 最大値は 1 です。

規定値: None
failure_threshold
int

Pod が起動し、liveness probe が失敗したとき、Kubernetes では、failureThreshold 回数だけ試し、それからあきらめます。 既定値は 3 です。 最大値は 1 です。

規定値: None
namespace
str

この Web サービスをデプロイする Kubernetes 名前空間: 最大 63 文字の小文字の英数字 ('a'-'z'、'0'-'9') とハイフン ('-')。 先頭と末尾の文字をハイフンにすることはできません。

規定値: None
token_auth_enabled

この Webservice に対してトークン認証を有効にするかどうか。 これが有効になっている場合、ユーザーは Azure Active Directory の資格情報を使用してアクセス トークンを取得することで、この Webservice にアクセスできます。 既定値は False です。

規定値: None
compute_target_name
str

デプロイするコンピューティング先の名前

規定値: 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

この Webservice のタグの辞書から、指定されたキーを削除します。

remove_tags(tags)

パラメーター

名前 説明
tags
必須

削除するキーのリスト

run

指定された入力でこの Webservice を呼び出します。

run(input_data)

パラメーター

名前 説明
input_data
必須
<xref:varies>

Webservice を呼び出す入力

戻り値

説明

Webservice を呼び出した結果

例外

説明

serialize

この Webservice を JSON シリアル化された辞書に変換します。

serialize()

戻り値

説明

この Webservice の JSON 表現。

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
int

この Webservice を自動スケールするときに使用するコンテナーの最小数

規定値: None
autoscale_max_replicas
int

この Webservice を自動スケールするときに使用するコンテナーの最大数

規定値: None
autoscale_refresh_seconds
int

自動スケーラーがこの Webservice のスケーリングを試行する頻度

規定値: None
autoscale_target_utilization
int

自動スケーラーがこの 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
int

この Webservice に対するスコアリング呼び出しに適用するタイムアウト

規定値: None
replica_max_concurrent_requests
int

この Webservice で許可するレプリカあたりの同時要求の最大数。

規定値: None
max_request_wait_time
int

503 エラーを返すまでに、要求がキューにとどまる最大時間 (ミリ秒単位)

規定値: None
num_replicas
int

この Webservice に割り当てるコンテナーの数

規定値: None
tags

この Webservice に提供するキー値タグのディクショナリ。 既存のタグを置き換えます。

規定値: None
properties

既存のプロパティ ディクショナリに追加するキー値プロパティのディクショナリ

規定値: None
description
str

この Webservice に提供する説明

規定値: None
models

更新されたサービスを使用してパッケージ化するモデル オブジェクトのリスト

規定値: None
inference_config

必要なモデル デプロイ プロパティを提供するために使用される InferenceConfig オブジェクト。

規定値: None
gpu_cores
int

この Webservice に割り当てる GPU コアの数

規定値: None
period_seconds
int

liveness probe を実行する頻度 (秒単位)。 既定値は 10 秒です。 最大値は 1 です。

規定値: None
initial_delay_seconds
int

コンテナーの起動後、liveness probe が開始するまでの秒数。

規定値: None
timeout_seconds
int

liveness probe がタイムアウトするまでの秒数。既定値は 1 秒です。 最大値は 1 です。

規定値: None
success_threshold
int

失敗後、liveness probe が成功と見なされるための最小連続成功数。 既定値は 1 です。 最大値は 1 です。

規定値: None
failure_threshold
int

Pod が起動し、liveness probe が失敗したとき、Kubernetes では、failureThreshold 回数だけ試し、それからあきらめます。 既定値は 3 です。 最大値は 1 です。

規定値: None
namespace
str

この 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=。

例外

説明