Запуск скрипта обновления до пакета SDK версии 2
В пакете SDK версии 2 "эксперименты" и "запуски" объединяются в задания.
Каждое задание имеет тип. Большинство заданий command
являются заданиями команд, которые выполняют , например python main.py
. То, что выполняется в задании, не зависит от языка программирования, поэтому вы можете запускать скрипты bash
, вызывать интерпретаторы python
, выполнять набор команд curl
или что-либо еще.
Для обновления необходимо изменить код для отправки заданий в пакет SDK версии 2. То, что выполняется в задании, не требуется обновлять до пакета SDK версии 2. Тем не менее рекомендуется удалить любой код, характерный для Машинного обучения Azure, из скриптов обучения модели. Такое разделение позволяет легче переходить от локальной к облачной среде и считается лучшей практикой для развитого набора MLOps. На практике это означает удаление строк кода azureml.*
. Код ведения журнала и отслеживания моделей следует заменить MLflow. Дополнительные сведения см. статье об использовании MLflow в версии 2.
В этой статье приведено сравнение сценариев в пакетах SDK версии 1 и SDK версии 2.
Отправка выполнения скрипта
Пакет SDK версии 1
from azureml.core import Workspace, Experiment, Environment, ScriptRunConfig # connect to the workspace ws = Workspace.from_config() # define and configure the experiment experiment = Experiment(workspace=ws, name='day1-experiment-train') config = ScriptRunConfig(source_directory='./src', script='train.py', compute_target='cpu-cluster') # set up pytorch environment env = Environment.from_conda_specification( name='pytorch-env', file_path='pytorch-env.yml') config.run_config.environment = env run = experiment.submit(config) aml_url = run.get_portal_url() print(aml_url)
Пакет SDK версии 2
#import required libraries from azure.ai.ml import MLClient, command from azure.ai.ml.entities import Environment from azure.identity import DefaultAzureCredential #connect to the workspace ml_client = MLClient.from_config(DefaultAzureCredential()) # set up pytorch environment env = Environment( image="mcr.microsoft.com/azureml/openmpi3.1.2-ubuntu18.04", conda_file="pytorch-env.yml", name="pytorch-env" ) # define the command command_job = command( code="./src", command="train.py", environment=env, compute="cpu-cluster", ) returned_job = ml_client.jobs.create_or_update(command_job) returned_job
Сопоставление основных функциональных возможностей в версиях 1 и 2
Функциональные возможности пакета SDK версии 1 | Грубое сопоставление в пакете SDK версии 2 |
---|---|
experiment.submit | MLCLient.jobs.create_or_update |
ScriptRunConfig() | command() |
Дальнейшие действия
Дополнительные сведения см. в разделе:
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по