将计算管理升级到 v2

v2 开发平台的计算管理功能保持不变。

本文比较了 SDK v1 和 SDK v2 中的方案。

创建计算实例

  • SDK v1

    import datetime
    import time
    
    from azureml.core.compute import ComputeTarget, ComputeInstance
    from azureml.core.compute_target import ComputeTargetException
    
    # Compute Instances need to have a unique name across the region.
    # Here, we create a unique name with current datetime
    ci_basic_name = "basic-ci" + datetime.datetime.now().strftime("%Y%m%d%H%M")
    
    compute_config = ComputeInstance.provisioning_configuration(
            vm_size='STANDARD_DS3_V2'
        )
        instance = ComputeInstance.create(ws, ci_basic_name , compute_config)
        instance.wait_for_completion(show_output=True)
    
  • SDK v2

    # Compute Instances need to have a unique name across the region.
    # Here, we create a unique name with current datetime
    from azure.ai.ml.entities import ComputeInstance, AmlCompute
    import datetime
    
    ci_basic_name = "basic-ci" + datetime.datetime.now().strftime("%Y%m%d%H%M")
    ci_basic = ComputeInstance(name=ci_basic_name, size="STANDARD_DS3_v2", idle_time_before_shutdown_minutes="30")
    ml_client.begin_create_or_update(ci_basic)
    

创建计算群集

  • SDK v1

    from azureml.core.compute import ComputeTarget, AmlCompute
    from azureml.core.compute_target import ComputeTargetException
    
    # Choose a name for your CPU cluster
    cpu_cluster_name = "cpucluster"
    compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_DS3_V2',
                                                               max_nodes=4)
    cpu_cluster = ComputeTarget.create(ws, cpu_cluster_name, compute_config)
    cpu_cluster.wait_for_completion(show_output=True)
    
  • SDK v2

    from azure.ai.ml.entities import AmlCompute
    cpu_cluster_name = "cpucluster"
    cluster_basic = AmlCompute(
        name=cpu_cluster_name,
        type="amlcompute",
        size="STANDARD_DS3_v2",
        max_instances=4
    )
    ml_client.begin_create_or_update(cluster_basic)
    

SDK v1 和 SDK v2 中关键功能的映射

SDK v1 中的功能 SDK v2 中的粗略映射
SDK v1 中的方法/API(使用指向参考文档的链接) SDK v2 中的方法/API(使用指向参考文档的链接)

后续步骤