AmlCompute 類別
在 Azure Machine Learning 中管理 Azure Machine Learning 計算。
Azure Machine Learning Compute (AmlCompute) 是受控計算基礎結構,可讓您輕鬆地建立單一或多節點計算。 計算會在工作區區域內建立為可以與其他用戶共享的資源。 如需詳細資訊,請參閱 什麼是 Azure Machine Learning 中的計算目標?
類別 ComputeTarget 建構函式。
擷取與所提供工作區相關聯的 Compute 物件的雲端表示法。 傳回對應至所擷取之 Compute 物件特定型別之子類別的實例。
建構函式
AmlCompute(workspace, name)
參數
名稱 | Description |
---|---|
workspace
必要
|
包含要擷取之 AmlCompute 物件的工作區物件。 |
name
必要
|
要擷取的 AmlCompute 物件名稱。 |
workspace
必要
|
包含要擷取之 Compute 物件的工作區物件。 |
name
必要
|
要擷取之 Compute 對象的 名稱。 |
備註
在下列範例中,會建立 所 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)
方法
add_identity |
為此 AmlCompute 目標新增身分識別類型和/或身分識別識別碼。 |
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 |
拿掉計算上的身分識別。 |
serialize |
將此 AmlCompute 物件轉換成 JSON 串行化字典。 |
supported_vmsizes |
列出區域中支援的 VM 大小。 |
update |
ScaleSettings更新此 AmlCompute 目標的 。 |
update_quotas |
在工作區中更新 VM 系列配額。 |
wait_for_completion |
等候 AmlCompute 叢集完成布建。 這可以設定為等候最少的節點數目,並在一段設定的時間過後逾時。 |
add_identity
為此 AmlCompute 目標新增身分識別類型和/或身分識別識別碼。
add_identity(identity_type, identity_id=None)
參數
名稱 | Description |
---|---|
identity_type
必要
|
可能的值為:
|
identity_id
|
使用者指派身分識別的資源標識符清單。 例如 ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity /userAssignedIdentities/'] 預設值: None
|
備註
只有當 identity_type == UserAssigned 時,才應指定identity_id
delete
從其相關聯的工作區中移除 AmlCompute 物件。
delete()
例外狀況
類型 | Description |
---|---|
備註
如果此對像是透過 Azure Machine Learning 建立的,也會刪除對應的雲端式物件。 如果這個物件是在外部建立,而且只附加至工作區,則這個方法會 ComputeTargetException 引發 ,而且不會變更任何專案。
deserialize
將 JSON 物件轉換成 AmlCompute 物件。
static deserialize(workspace, object_dict)
參數
名稱 | Description |
---|---|
workspace
必要
|
AmlCompute 對象相關聯的工作區物件。 |
object_dict
必要
|
要轉換成 AmlCompute 物件的 JSON 物件。 |
傳回
類型 | Description |
---|---|
所提供 JSON 物件的 AmlCompute 表示法。 |
例外狀況
類型 | Description |
---|---|
備註
ComputeTargetException如果提供的工作區不是計算相關聯的工作區,則引發 。
detach
get
傳回計算物件。
get()
get_active_runs
傳回這個計算的執行產生器。
get_active_runs(type=None, tags=None, properties=None, status=None)
參數
名稱 | Description |
---|---|
type
|
依提供的型別篩選所傳回的執行產生器。 如需建立執行類型,請參閱 add_type_provider 。 預設值: None
|
tags
|
篩選會依 “tag” 或 {“tag”: “value”} 執行 預設值: None
|
properties
|
篩選會依 “property” 或 {“property”: “value”} 執行 預設值: None
|
status
|
執行狀態 - 「執行中」或「已排入佇列」 預設值: None
|
傳回
類型 | Description |
---|---|
<xref:builtin.generator>
|
~_restclient.models.RunDto 的產生器 |
get_status
list_nodes
list_quotas
list_usages
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)
參數
名稱 | Description |
---|---|
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
|
使用者指派身分識別的資源標識符清單。 例如 ['/subscriptions//resourceGroups//providers/Microsoft.ManagedIdentity/userAssignedIdentities/'] 預設值: None
|
location
|
要布建叢集的位置。 預設值: None
|
enable_node_public_ip
|
啟用節點公用IP。 可能的值為:
預設值: True
|
傳回
類型 | Description |
---|---|
建立計算物件時要使用的組態物件。 |
例外狀況
類型 | Description |
---|---|
refresh_state
執行物件的屬性就地更新。
此方法會根據對應雲端物件的目前狀態來更新屬性。 這主要用於手動輪詢計算狀態。
refresh_state()
remove_identity
serialize
supported_vmsizes
update
ScaleSettings更新此 AmlCompute 目標的 。
update(min_nodes=None, max_nodes=None, idle_seconds_before_scaledown=None)
參數
名稱 | Description |
---|---|
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)
參數
名稱 | Description |
---|---|
show_output
|
布爾值以提供更詳細的輸出。 預設值: False
|
min_node_count
|
考慮布建完成之前,要等待的節點數目下限。 這不一定等於所布建計算的節點數目下限,但不應大於此數目。 預設值: None
|
timeout_in_minutes
|
在考慮布建失敗之前,等候幾分鐘的持續時間。 預設值: 25
|
is_delete_operation
|
指出作業是否要刪除。 預設值: False
|
例外狀況
類型 | Description |
---|---|