AmlCompute クラス
Azure Machine Learning で Azure Machine Learning コンピューティングを管理します。
Azure Machine Learning コンピューティング (AmlCompute) は、単一または複数ノードのコンピューティングを簡単に作成できるマネージド コンピューティング インフラストラクチャです。 コンピューティングは、他のユーザーと共有できるリソースとしてワークスペース リージョン内に作成されます。 詳細については、「Azure Machine Learning のコンピューティング先とは」を参照してください。
Class ComputeTarget コンストラクター。
指定されたワークスペースに関連付けられている Compute オブジェクトのクラウド表現を取得します。 取得した Compute オブジェクトの特定の型に対応する子クラスのインスタンスを返します。
コンストラクター
AmlCompute(workspace, name)
パラメーター
注釈
次の例では、 AmlCompute によってプロビジョニングされた永続的なコンピューティング 先が作成されます。 この例の provisioning_configuration
パラメーターは、 AmlComputeProvisioningConfiguration 型であり、 ComputeTargetProvisioningConfigurationの子クラスです。
from azureml.core.compute import ComputeTarget, AmlCompute
from azureml.core.compute_target import ComputeTargetException
# Choose a name for your CPU cluster
cpu_cluster_name = "cpu-cluster"
# Verify that cluster does not exist already
try:
cpu_cluster = ComputeTarget(workspace=ws, name=cpu_cluster_name)
print('Found existing cluster, use it.')
except ComputeTargetException:
compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_D2_V2',
max_nodes=4)
cpu_cluster = ComputeTarget.create(ws, cpu_cluster_name, compute_config)
cpu_cluster.wait_for_completion(show_output=True)
完全なサンプルは次から入手できます https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/training/train-on-amlcompute/train-on-amlcompute.ipynb
add_identity |
この AmlCompute ターゲットの ID の種類または ID を追加します。 |
delete |
関連付けられているワークスペースから AmlCompute オブジェクトを削除します。 |
deserialize |
JSON オブジェクトを AmlCompute オブジェクトに変換します。 |
detach |
デタッチは、AmlCompute オブジェクトではサポートされていません。 delete を代わりに使用します。 |
get |
計算オブジェクトを返します。 |
get_active_runs |
このコンピューティングの実行のジェネレーターを返します。 |
get_status |
AmlCompute クラスターの現在の詳細な状態を取得します。 |
list_nodes |
コンピューティング ターゲット内のすべてのコンピューティング ノードの詳細 (IP アドレス、ポートなど) を取得します。 |
list_quotas |
特定のワークスペースとサブスクリプションの VMFamily に基づいて、現在割り当てられているワークスペース クォータを取得します。 |
list_usages |
現在の使用状況情報と、特定のワークスペースとサブスクリプションの AML リソースの制限を取得します。 |
provisioning_configuration |
AmlCompute ターゲットをプロビジョニングするための構成オブジェクトを作成します。 |
refresh_state |
オブジェクトのプロパティのインプレース更新を実行します。 このメソッドは、対応するクラウド オブジェクトの現在の状態に基づいてプロパティを更新します。 これは主に、コンピューティング状態の手動ポーリングに使用されます。 |
remove_identity |
コンピューティングで ID を削除します。 |
serialize |
この AmlCompute オブジェクトを JSON シリアル化ディクショナリに変換します。 |
supported_vmsizes |
リージョンでサポートされている VM サイズを一覧表示します。 |
update |
この AmlCompute ターゲットの ScaleSettings を更新します。 |
update_quotas |
ワークスペース内の VM ファミリのクォータを更新します。 |
wait_for_completion |
AmlCompute クラスターのプロビジョニングが完了するまで待ちます。 これは、ノードの最小数を待機し、一定の時間が経過した後にタイムアウトするように構成できます。 |
add_identity
この AmlCompute ターゲットの ID の種類または ID を追加します。
add_identity(identity_type, identity_id=None)
パラメーター
名前 | 説明 |
---|---|
identity_type
必須
|
使用可能な値は次のとおりです。
|
identity_id
|
ユーザー割り当て ID のリソース ID の一覧。 eg. ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity /userAssignedIdentities/'] 規定値: None
|
注釈
identity_idは、identity_type == UserAssigned の場合にのみ指定する必要があります
delete
関連付けられているワークスペースから AmlCompute オブジェクトを削除します。
delete()
例外
注釈
このオブジェクトが Azure Machine Learning を使用して作成された場合、対応するクラウドベースのオブジェクトも削除されます。 このオブジェクトが外部で作成され、ワークスペースにのみアタッチされている場合、このメソッドは ComputeTargetException を発生させ、何も変更されません。
deserialize
JSON オブジェクトを AmlCompute オブジェクトに変換します。
static deserialize(workspace, object_dict)
パラメーター
名前 | 説明 |
---|---|
workspace
必須
|
AmlCompute オブジェクトが関連付けられているワークスペース オブジェクト。 |
object_dict
必須
|
AmlCompute オブジェクトに変換する JSON オブジェクト。 |
戻り値
型 | 説明 |
---|---|
指定された JSON オブジェクトの AmlCompute 表現。 |
例外
注釈
指定されたワークスペースがコンピューティングが関連付けられているワークスペースでない場合は、 ComputeTargetException を発生させます。
detach
get
計算オブジェクトを返します。
get()
get_active_runs
このコンピューティングの実行のジェネレーターを返します。
get_active_runs(type=None, tags=None, properties=None, status=None)
パラメーター
名前 | 説明 |
---|---|
type
|
指定された型で実行の返されたジェネレーターをフィルター処理します。 実行の種類の作成については、 add_type_provider を参照してください。 規定値: None
|
tags
|
"tag" または {"tag": "value"} で実行をフィルター処理する 規定値: None
|
properties
|
"property" または {"property": "value"} で実行をフィルター処理する 規定値: None
|
status
|
実行状態 - "実行中" または "Queued" 規定値: None
|
戻り値
型 | 説明 |
---|---|
<xref:builtin.generator>
|
~_restclient.models.RunDto のジェネレーター |
get_status
list_nodes
コンピューティング ターゲット内のすべてのコンピューティング ノードの詳細 (IP アドレス、ポートなど) を取得します。
list_nodes()
戻り値
型 | 説明 |
---|---|
コンピューティング ターゲット内のすべてのコンピューティング ノードの詳細。 |
list_quotas
list_usages
現在の使用状況情報と、特定のワークスペースとサブスクリプションの AML リソースの制限を取得します。
static list_usages(workspace, show_all=False, location=None)
パラメーター
名前 | 説明 |
---|---|
workspace
必須
|
|
show_all
|
子リソースの詳細な使用方法が必要かどうかを指定します。 既定値は False です 規定値: False
|
location
|
リソースの場所。 指定しない場合は、既定でワークスペースの場所になります。 規定値: None
|
戻り値
型 | 説明 |
---|---|
AML リソースの現在の使用状況情報と制限の一覧 |
provisioning_configuration
AmlCompute ターゲットをプロビジョニングするための構成オブジェクトを作成します。
static provisioning_configuration(vm_size='', vm_priority='dedicated', min_nodes=0, max_nodes=None, idle_seconds_before_scaledown=1800, admin_username=None, admin_user_password=None, admin_user_ssh_key=None, vnet_resourcegroup_name=None, vnet_name=None, subnet_name=None, tags=None, description=None, remote_login_port_public_access='NotSpecified', identity_type=None, identity_id=None, location=None, enable_node_public_ip=True)
パラメーター
名前 | 説明 |
---|---|
vm_size
必須
|
エージェント VM のサイズ。 詳細については、以下を参照してください: https://aka.ms/azureml-vm-details. 前のリンクで詳しく説明したように、すべてのリージョンですべてのサイズを使用できるわけではないことに注意してください。 指定しない場合、既定値はStandard_NC6。 |
vm_priority
|
VM の優先度( 専用 または 低優先度)。 規定値: dedicated
|
min_nodes
|
クラスターで使用するノードの最小数。 指定しない場合、既定値は 0 です。 規定値: 0
|
max_nodes
|
クラスターで使用するノードの最大数。 指定しない場合、既定値は 4 です。 規定値: None
|
idle_seconds_before_scaledown
|
クラスターをスケールダウンするまでのノードのアイドル時間 (秒単位)。 指定しない場合、既定値は 1800 です。 規定値: 1800
|
admin_username
|
ノードへの SSH 接続に使用できる管理者ユーザー アカウントの名前。 規定値: None
|
admin_user_password
|
管理者のユーザー アカウントのパスワード。 規定値: None
|
admin_user_ssh_key
|
管理者ユーザー アカウントの SSH 公開キー。 規定値: None
|
vnet_resourcegroup_name
|
仮想ネットワークが配置されているリソース グループの名前。 規定値: None
|
vnet_name
|
仮想ネットワークの名前。 規定値: None
|
subnet_name
|
VNet 内のサブネットの名前。 規定値: None
|
tags
|
コンピューティング オブジェクトに提供するキー値タグのディクショナリ。 規定値: None
|
description
|
コンピューティング オブジェクトに提供する説明。 規定値: None
|
remote_login_port_public_access
|
パブリック SSH ポートの状態。 使用可能な値は次のとおりです。
規定値: NotSpecified
|
identity_type
|
使用可能な値は次のとおりです。
規定値: None
|
identity_id
|
ユーザー割り当て ID のリソース ID の一覧。 eg. ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/'] 規定値: None
|
location
|
クラスターをプロビジョニングする場所。 規定値: None
|
enable_node_public_ip
|
ノードのパブリック IP を有効にします。 使用可能な値は次のとおりです。
規定値: True
|
戻り値
型 | 説明 |
---|---|
Compute オブジェクトの作成時に使用する構成オブジェクト。 |
例外
refresh_state
オブジェクトのプロパティのインプレース更新を実行します。
このメソッドは、対応するクラウド オブジェクトの現在の状態に基づいてプロパティを更新します。 これは主に、コンピューティング状態の手動ポーリングに使用されます。
refresh_state()
remove_identity
serialize
この AmlCompute オブジェクトを JSON シリアル化ディクショナリに変換します。
serialize()
戻り値
型 | 説明 |
---|---|
この AmlCompute オブジェクトの JSON 表現。 |
supported_vmsizes
update
この AmlCompute ターゲットの ScaleSettings を更新します。
update(min_nodes=None, max_nodes=None, idle_seconds_before_scaledown=None)
パラメーター
update_quotas
wait_for_completion
AmlCompute クラスターのプロビジョニングが完了するまで待ちます。
これは、ノードの最小数を待機し、一定の時間が経過した後にタイムアウトするように構成できます。
wait_for_completion(show_output=False, min_node_count=None, timeout_in_minutes=25, is_delete_operation=False)
パラメーター
名前 | 説明 |
---|---|
show_output
|
より詳細な出力を提供するブール値。 規定値: False
|
min_node_count
|
プロビジョニングが完了することを検討する前に待機するノードの最小数。 これは、コンピューティングがプロビジョニングされたノードの最小数と等しい必要はありません。ただし、それより大きくすることはできません。 規定値: None
|
timeout_in_minutes
|
プロビジョニングが失敗したことを検討するまでの待ち時間 (分)。 規定値: 25
|
is_delete_operation
|
操作が削除対象かどうかを示します。 規定値: False
|