Поделиться через


Схема расписания заданий CLI (версия 2) YAML

ОБЛАСТЬ ПРИМЕНЕНИЯ: расширение машинного обучения Azure CLI версии 2 (текущее)

Исходную схему JSON можно найти по адресу https://azuremlschemas.azureedge.net/latest/schedule.schema.json.

Примечание.

Синтаксис YAML, описанный в этом документе, основан на схеме JSON для последней версии расширения ML CLI (версия 2). Этот синтаксис гарантированно работает только с последней версией расширения ML CLI (версия 2). Схемы для старых версий расширений можно найти по адресу https://azuremlschemasprod.azureedge.net/.

Синтаксис YAML

Ключ Тип Описание Допустимые значения
$schema строка Схема YAML.
name строка Обязательный. Имя расписания.
description строка Описание расписания.
tags объект Словарь тегов для расписания.
trigger объект Конфигурация триггера для определения правила активации задания. Требуется одно из RecurrenceTrigger или CronTrigger.
create_job Объект или строка Обязательный. Определение задания, которое будет активироваться расписанием. Требуется одно из string или JobDefinition.

Конфигурация триггера

Триггер повторения

Ключ Тип Описание Допустимые значения
type строка Обязательный. Указывает тип расписания. повторение
frequency строка Обязательный. Указывает единицу времени, описывающую частоту срабатывания расписания. minute, , hourday, weekmonth
interval integer Обязательный. Указывает интервал повторения расписания.
start_time строка Описывает дату и время начала с указанием часового пояса. Если start_time отсутствует, первое задание будет запущено мгновенно, а последующие задания будут активированы согласно расписанию, при этом значением start_time будет считаться время создания задания. Если время запуска указано в прошлом, первое задание будет запущено в следующее время выполнения.
end_time строка Описывает дату и время окончания с указанием часового пояса. Если end_time отсутствует, расписание будет применяться, пока не будет явно отключено.
timezone строка Указывает часовой пояс повторения. Если это значение отсутствует, по умолчанию задается время в формате UTC. Значения времени в различных часовых поясах см. в приложении
pattern объект Указывает шаблон повторения. Если pattern отсутствует, задания будут активироваться согласно логике значений start_time, frequency и interval.

Расписание повторений

Расписание повторений определяет шаблон повторения, содержащий hours, minutes и weekdays.

  • Если параметру frequency задано значение day, в шаблоне можно указать hours и minutes.
  • Если параметру frequency задано значение week и month, в шаблоне можно указать hours, minutes и weekdays.
Ключ Тип Допустимые значения
hours целое число или массив целых чисел 0-23
minutes целое число или массив целых чисел 0-59
week_days строка или массив строк monday, tuesday, wednesdaythursdayfridaysaturdaysunday

CronTrigger

Ключ Тип Описание Допустимые значения
type строка Обязательный. Указывает тип расписания. Cron
expression строка Обязательный. Задает выражение cron, определяющее способ активации заданий. В нем используется стандартное выражение crontab для выражения расписания повторений. Одно выражение состоит из пяти полей, разделенных пробелами: MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK
start_time строка Описывает дату и время начала с указанием часового пояса. Если start_time отсутствует, первое задание будет запущено мгновенно, а последующие задания будут активированы согласно расписанию, при этом значением start_time будет считаться время создания задания. Если время запуска указано в прошлом, первое задание будет запущено в следующее время выполнения.
end_time строка Описывает дату и время окончания с указанием часового пояса. Если end_time отсутствует, расписание будет применяться, пока не будет явно отключено.
timezone строка Указывает часовой пояс повторения. Если это значение отсутствует, по умолчанию задается время в формате UTC. Значения времени в различных часовых поясах см. в приложении

определение задания;

Клиент может использовать непосредственно create_job: azureml:<job_name> или определить задание с помощью следующих свойств.

Ключ Тип Описание Допустимые значения
type строка Обязательный. Указывает тип задания. Поддерживаются только задания конвейера. pipeline
job строка Обязательный. Определяет вид ссылок на задание. Ссылки могут быть в формате azureml:<job_name> или в формате локального задания конвейера YAML, например file:hello-pipeline.yml.
experiment_name строка Имя эксперимента, по которому будет организовано задание. Запись о выполнении каждого задания будет расположена под соответствующим экспериментом в студии на вкладке "Эксперименты". Если это значение отсутствует, в качестве значения по умолчанию принимается имя расписания.
inputs объект Словарь входных данных для задания. Ключ — это имя входных данных в контексте задания, а значение — это входное значение.
outputs объект Словарь конфигураций выходных данных для задания. Ключ — это имя выходных данных в контексте задания, а значение — выходная конфигурация.
settings объект Параметры по умолчанию для задания конвейера. См. статью Атрибуты ключа settings для набора настраиваемых свойств.

Атрибуты ключа settings

Ключ Тип Описание Default value
default_datastore строка Имя хранилища данных, используемого по умолчанию для задания конвейера. Это значение должно быть ссылкой на существующее хранилище данных в рабочей области с синтаксисом azureml:<datastore-name>. Все выходные данные, определенные в свойстве outputs задания родительского конвейера или заданий дочернего шага, будут храниться в этом хранилище данных. Если этот параметр опущен, выходные данные будут храниться в хранилище данных BLOB-объектов рабочей области.
default_compute строка Имя целевого объекта вычислений, который используется в качестве вычислительной среды по умолчанию для всех шагов в конвейере. Если вычислительная среда определена на уровне шага, такое назначение переопределит значение по умолчанию для одного конкретного шага. Это значение должно быть ссылкой на существующее вычисление в рабочей области с синтаксисом azureml:<compute-name>.
continue_on_step_failure boolean Следует ли продолжать выполнение шагов в конвейере, если один шаг завершается сбоем. По умолчанию используется значение False, то есть при сбое одного шага выполнение конвейера будет остановлено, в том числе будут отменены все уже выполняемые шаги. False

Входные данные задания

Ключ Тип Описание Допустимые значения Default value
type строка Тип входных данных для задания. Укажите uri_file, чтобы использовать в качестве источника входные данные из одного файла, или uri_folder, чтобы использовать весь каталог с файлами. uri_file, uri_folder uri_folder
path строка Путь к данным, которые используются в качестве входных данных. Это можно указать несколькими способами:

– локальный путь к файлу или папке источника данных, например path: ./iris.csv. Эта данные будут отправлены во время отправки задания.

— универсальный код ресурса (URI) для облачного пути к файлу или папке, которые нужно использовать в качестве входных данных. Поддерживаются следующие типы URI: azureml, https, wasbs, abfss, adl. Дополнительные сведения об использовании формата URI azureml:// см. в статье Базовый синтаксис YAML.

— Существующий зарегистрированный Машинное обучение Azure ресурс данных, используемый в качестве входных данных. Чтобы указать ссылку на зарегистрированный ресурс данных, используйте синтаксис azureml:<data_name>:<data_version> или azureml:<data_name>@latest (это ссылка на последнюю версию ресурса данных), например path: azureml:cifar10-data:1 или path: azureml:cifar10-data@latest.
mode строка Режим доставки данных в целевой объект вычислений.

Для подключения с доступом только для чтения (ro_mount) данные будут использоваться в качестве пути подключения. Папка будет подключена как папка, а файл будет подключен как файл. Машинное обучение Azure будет разрешать входные данные в путь подключения.

При использовании режима download данные будут скачаны в целевой объект вычислений. Машинное обучение Azure будет разрешать входные данные в скачанный путь.

Если вам нужен только URL-адрес места хранения артефактов данных, и вы не намерены подключать или скачивать сами данные, можно использовать режим direct. В этом случае в качестве входных данных для задания передается URL-адрес расположения хранилища. В этом случае вам придется самостоятельно обрабатывать учетные данные для доступа к хранилищу.
ro_mount, , downloaddirect ro_mount

Выходные данные задания

Ключ Тип Описание Допустимые значения Default value
type строка Тип выходных данных для задания. По умолчанию используется тип uri_folder, то есть выходные данные сопоставляются с некоторой папкой. uri_folder uri_folder
path строка Путь к данным, которые используются в качестве входных данных. Это можно указать несколькими способами:

– локальный путь к файлу или папке источника данных, например path: ./iris.csv. Эта данные будут отправлены во время отправки задания.

— универсальный код ресурса (URI) для облачного пути к файлу или папке, которые нужно использовать в качестве входных данных. Поддерживаются следующие типы URI: azureml, https, wasbs, abfss, adl. Дополнительные сведения об использовании формата URI azureml:// см. в статье Базовый синтаксис YAML.

— Существующий зарегистрированный Машинное обучение Azure ресурс данных, используемый в качестве входных данных. Чтобы указать ссылку на зарегистрированный ресурс данных, используйте синтаксис azureml:<data_name>:<data_version> или azureml:<data_name>@latest (это ссылка на последнюю версию ресурса данных), например path: azureml:cifar10-data:1 или path: azureml:cifar10-data@latest.
mode строка Режим доставки выходных файлов в целевое хранилище. Для режима подключения с доступом для чтения и записи (rw_mount) выходным каталогом будет подключенный каталог. В режиме upload все записанные файлы будут отправлены после завершения задания. rw_mount, upload rw_mount

Замечания

Команду az ml schedule можно использовать для управления моделями Машинного обучения Azure.

Примеры

Примеры доступны в репозитории примеров GitHub. Ниже представлены некоторые из них.

YAML: расписание с шаблоном повторения

ОБЛАСТЬ ПРИМЕНЕНИЯ: расширение машинного обучения Azure CLI версии 2 (текущее)

$schema: https://azuremlschemas.azureedge.net/latest/schedule.schema.json
name: simple_recurrence_job_schedule
display_name: Simple recurrence job schedule
description: a simple hourly recurrence job schedule

trigger:
  type: recurrence
  frequency: day #can be minute, hour, day, week, month
  interval: 1 #every day
  schedule:
    hours: [4,5,10,11,12]
    minutes: [0,30]
  start_time: "2022-07-10T10:00:00" # optional - default will be schedule creation time
  time_zone: "Pacific Standard Time" # optional - default will be UTC

create_job: ./simple-pipeline-job.yml
# create_job: azureml:simple-pipeline-job

YAML: расписание с выражением cron

ОБЛАСТЬ ПРИМЕНЕНИЯ: расширение машинного обучения Azure CLI версии 2 (текущее)

$schema: https://azuremlschemas.azureedge.net/latest/schedule.schema.json
name: simple_cron_job_schedule
display_name: Simple cron job schedule
description: a simple hourly cron job schedule

trigger:
  type: cron
  expression: "0 * * * *"
  start_time: "2022-07-10T10:00:00" # optional - default will be schedule creation time
  time_zone: "Pacific Standard Time" # optional - default will be UTC

# create_job: azureml:simple-pipeline-job
create_job: ./simple-pipeline-job.yml

Приложение

Часовой пояс

В текущем расписании поддерживаются следующие часовые пояса. Ключ можно использовать непосредственно в пакете SDK Python, а значение — в задании YAML. Таблица упорядочена по значению UTC (всемирное координированное время).

UTC Ключ Значение
UTC –12:00 DATELINE_STANDARD_TIME "Линия перемены дат"
UTC –11:00 UTC_11 "UTC–11"
UTC –10:00 ALEUTIAN_STANDARD_TIME Алеутские острова (зима)
UTC –10:00 HAWAIIAN_STANDARD_TIME "Гавайское стандартное время"
UTC –09:30 MARQUESAS_STANDARD_TIME "Маркизские острова"
UTC –09:00 ALASKAN_STANDARD_TIME "Аляскинское стандартное время"
UTC –09:00 UTC_09 "UTC–09"
UTC –08:00 PACIFIC_STANDARD_TIME_MEXICO "Тихоокеанское стандартное время (Мексика)"
UTC –08:00 UTC_08 "UTC–08"
UTC –08:00 PACIFIC_STANDARD_TIME "Североамериканское тихоокеанское время"
UTC -07:00 US_MOUNTAIN_STANDARD_TIME "Горное время (США)"
UTC -07:00 MOUNTAIN_STANDARD_TIME_MEXICO "Горное время (Мексика)"
UTC -07:00 MOUNTAIN_STANDARD_TIME "Горное стандартное время"
UTC –06:00 CENTRAL_AMERICA_STANDARD_TIME "Центральноамериканское время"
UTC –06:00 CENTRAL_STANDARD_TIME "Центральное стандартное время"
UTC –06:00 EASTER_ISLAND_STANDARD_TIME "Стандартное время (остров Пасхи)"
UTC –06:00 CENTRAL_STANDARD_TIME_MEXICO "Центральное стандартное время (Мексика)"
UTC –06:00 CANADA_CENTRAL_STANDARD_TIME "Центральное стандартное время (Канада)"
UTC –05:00 SA_PACIFIC_STANDARD_TIME "Южноамериканское тихоокеанское время"
UTC –05:00 EASTERN_STANDARD_TIME_MEXICO "Восточное стандартное время (Мексика)"
UTC –05:00 EASTERN_STANDARD_TIME "Восточное стандартное время"
UTC –05:00 HAITI_STANDARD_TIME "Стандартное время (Гаити)"
UTC –05:00 CUBA_STANDARD_TIME "Стандартное время (Куба)"
UTC –05:00 US_EASTERN_STANDARD_TIME "Восточное стандартное время (США)"
UTC –05:00 TURKS_AND_CAICOS_STANDARD_TIME "Стандартное время (острова Теркс и Кайкос)"
UTC –04:00 PARAGUAY_STANDARD_TIME "Стандартное время (Парагвай)"
UTC –04:00 ATLANTIC_STANDARD_TIME "Атлантическое стандартное время"
UTC –04:00 VENEZUELA_STANDARD_TIME "Стандартное время (Венесуэла)"
UTC –04:00 CENTRAL_BRAZILIAN_STANDARD_TIME "Стандартное время (Центральная Бразилия)"
UTC –04:00 SA_WESTERN_STANDARD_TIME "Южноамериканское западное стандартное время"
UTC –04:00 PACIFIC_SA_STANDARD_TIME "Южноамериканское тихоокеанское стандартное время"
UTC –03:30 NEWFOUNDLAND_STANDARD_TIME "Стандартное время (Ньюфаундленд)"
UTC –03:00 TOCANTINS_STANDARD_TIME "Стандартное время (Токантинс)"
UTC –03:00 E_SOUTH_AMERICAN_STANDARD_TIME "E. южноамериканское стандартное время"
UTC –03:00 SA_EASTERN_STANDARD_TIME "Южноамериканское восточное стандартное время"
UTC –03:00 ARGENTINA_STANDARD_TIME "Стандартное время (Аргентина)"
UTC –03:00 GREENLAND_STANDARD_TIME "Стандартное время (Гренландия)"
UTC –03:00 MONTEVIDEO_STANDARD_TIME "Стандартное время (Монтевидео)"
UTC –03:00 SAINT_PIERRE_STANDARD_TIME "Стандартное время (Сен-Пьер)"
UTC –03:00 BAHIA_STANDARD_TIM "Стандартное время (Баия)"
UTC –02:00 UTC_02 "UTC–02"
UTC –02:00 MID_ATLANTIC_STANDARD_TIME "Среднеатлантическое стандартное время"
UTC –01:00 AZORES_STANDARD_TIME "Стандартное время (Азорские острова)"
UTC –01:00 CAPE_VERDE_STANDARD_TIME "Стандартное время (Кабо-Верде)"
UTC UTC UTC
UTC +00:00 GMT_STANDARD_TIME "Среднее время по Гринвичу"
UTC +00:00 GREENWICH_STANDARD_TIME "Стандартное время по Гринвичу"
UTC +01:00 MOROCCO_STANDARD_TIME "Стандартное время (Марокко)"
UTC +01:00 W_EUROPE_STANDARD_TIME "Западноевропейское стандартное время"
UTC +01:00 CENTRAL_EUROPE_STANDARD_TIME "Центральноевропейское стандартное время"
UTC +01:00 ROMANCE_STANDARD_TIME "Романское стандартное время"
UTC +01:00 CENTRAL_EUROPEAN_STANDARD_TIME "Центральноевропейское стандартное время"
UTC +01:00 W_CENTRAL_AFRICA_STANDARD_TIME "Западноевропейское стандартное время"
UTC+02:00 NAMIBIA_STANDARD_TIME "Стандартное время (Намибия)"
UTC+02:00 JORDAN_STANDARD_TIME "Стандартное время (Иордания)"
UTC+02:00 GTB_STANDARD_TIME "Стандартное время (Греция, Турция, Болгария)"
UTC+02:00 MIDDLE_EAST_STANDARD_TIME "Стандартное время (Ближний Восток)"
UTC+02:00 EGYPT_STANDARD_TIME "Стандартное время (Египет)"
UTC+02:00 E_EUROPE_STANDARD_TIME "E. стандартное время"
UTC+02:00 SYRIA_STANDARD_TIME "Стандартное время (Сирия)"
UTC+02:00 WEST_BANK_STANDARD_TIME "Стандартное время (Западный берег реки Иордан)"
UTC+02:00 SOUTH_AFRICA_STANDARD_TIME "Южноафриканское стандартное время"
UTC+02:00 FLE_STANDARD_TIME "Стандартное время (Финляндия, Литва, Эстония)"
UTC+02:00 ISRAEL_STANDARD_TIME "Стандартное время (Израиль)"
UTC+02:00 KALININGRAD_STANDARD_TIME "Стандартное время (Калининград)"
UTC+02:00 LIBYA_STANDARD_TIME "Стандартное время (Ливия)"
UTC +03:00 TÜRKIYE_STANDARD_TIME "Türkiye Standard Time"
UTC +03:00 ARABIC_STANDARD_TIME "Стандартное время (Средний Восток)"
UTC +03:00 ARAB_STANDARD_TIME "Стандартное время (ОАЭ)"
UTC +03:00 BELARUS_STANDARD_TIME "Стандартное время (Беларусь)"
UTC +03:00 RUSSIAN_STANDARD_TIME "Стандартное время (Россия)"
UTC +03:00 E_AFRICA_STANDARD_TIME "E. стандартное время"
UTC +03:30 IRAN_STANDARD_TIME "Стандартное время (Иран)"
UTC +04:00 ARABIAN_STANDARD_TIME "Стандартное время (Саудовская Аравия)"
UTC +04:00 ASTRAKHAN_STANDARD_TIME "Стандартное время (Астрахань)"
UTC +04:00 AZERBAIJAN_STANDARD_TIME "Стандартное время (Азербайджан)"
UTC +04:00 RUSSIA_TIME_ZONE_3 "Россия, часовой пояс 3"
UTC +04:00 MAURITIUS_STANDARD_TIME "Стандартное время (Маврикий)"
UTC +04:00 GEORGIAN_STANDARD_TIME "Стандартное время (Грузия)"
UTC +04:00 CAUCASUS_STANDARD_TIME "Стандартное время (Северный Кавказ)"
UTC +04:30 AFGHANISTAN_STANDARD_TIME "Стандартное время (Афганистан)"
UTC +05:00 WEST_ASIA_STANDARD_TIME "Западноазиатское стандартное время"
UTC +05:00 EKATERINBURG_STANDARD_TIME "Стандартное время (Екатеринбург)"
UTC +05:00 PAKISTAN_STANDARD_TIME "Стандартное время (Пакистан)"
UTC +05:30 INDIA_STANDARD_TIME "Стандартное время (Индия)"
UTC +05:30 SRI_LANKA_STANDARD_TIME "Стандартное время (Шри-Ланка)"
UTC +05:45 NEPAL_STANDARD_TIME "Стандартное время (Непал)"
UTC +06:00 CENTRAL_ASIA_STANDARD_TIME "Центральноазиатское стандартное время"
UTC +06:00 BANGLADESH_STANDARD_TIME "Стандартное время (Бангладеш)"
UTC +06:30 MYANMAR_STANDARD_TIME "Стандартное время (Мьянма)"
UTC +07:00 N_CENTRAL_ASIA_STANDARD_TIME "Стандартное время (Северно-Центральная Азия)"
UTC +07:00 SE_ASIA_STANDARD_TIME "Стандартное время (Юго-Восточная Азия)"
UTC +07:00 ALTAI_STANDARD_TIME "Стандартное время (Алтай)"
UTC +07:00 W_MONGOLIA_STANDARD_TIME "Западноевропейское время (Западная Монголия)"
UTC +07:00 NORTH_ASIA_STANDARD_TIME "Североазиатское стандартное время"
UTC +07:00 TOMSK_STANDARD_TIME "Стандартное время (Томск)"
UTC +08:00 CHINA_STANDARD_TIME "Стандартное время (Китай)"
UTC +08:00 NORTH_ASIA_EAST_STANDARD_TIME "Стандартное время (Северо-Восточная Азия)"
UTC +08:00 SINGAPORE_STANDARD_TIME "Стандартное время (Сингапур)"
UTC +08:00 W_AUSTRALIA_STANDARD_TIME "Западноевропейское стандартное время"
UTC +08:00 TAIPEI_STANDARD_TIME "Стандартное время (Тайбэй)"
UTC +08:00 ULAANBAATAR_STANDARD_TIME "Стандартное время (Улан-Батор)"
UTC +08:45 AUS_CENTRAL_W_STANDARD_TIME "Стандартное время (Центрально-западная Австралия)"
UTC +09:00 NORTH_KOREA_STANDARD_TIME "Стандартное время (Северная Корея)"
UTC +09:00 TRANSBAIKAL_STANDARD_TIME "Стандартное время (Забайкалье)"
UTC +09:00 TOKYO_STANDARD_TIME "Стандартное время (Токио)"
UTC +09:00 KOREA_STANDARD_TIME "Стандартное время (Корея)"
UTC +09:00 YAKUTSK_STANDARD_TIME "Стандартное время (Якутск)"
UTC +09:30 CEN_AUSTRALIA_STANDARD_TIME "Центральноавстралийское стандартное время"
UTC +09:30 AUS_CENTRAL_STANDARD_TIME "Центральноавстралийское стандартное время"
UTC +10:00 E_AUSTRALIAN_STANDARD_TIME "E. стандартное время"
UTC +10:00 AUS_EASTERN_STANDARD_TIME "Восточноавстралийское стандартное время"
UTC +10:00 WEST_PACIFIC_STANDARD_TIME "Западно-тихоокеанское стандартное время"
UTC +10:00 TASMANIA_STANDARD_TIME "Стандартное время (Тасмания)"
UTC +10:00 VLADIVOSTOK_STANDARD_TIME "Стандартное время (Владивосток)"
UTC +10:30 LORD_HOWE_STANDARD_TIME "Стандартное время (Лорд-Хау)"
UTC +11:00 BOUGAINVILLE_STANDARD_TIME "Стандартное время (Бугенвиль)"
UTC +11:00 RUSSIA_TIME_ZONE_10 "Россия, часовой пояс 10"
UTC +11:00 MAGADAN_STANDARD_TIME "Стандартное время (Магадан)"
UTC +11:00 NORFOLK_STANDARD_TIME "Стандартное время (Норфолк)"
UTC +11:00 SAKHALIN_STANDARD_TIME "Стандартное время (Сахалин)"
UTC +11:00 CENTRAL_PACIFIC_STANDARD_TIME "Центрально-тихоокеанское стандартное время"
UTC +12:00 RUSSIA_TIME_ZONE_11 "Россия, часовой пояс 11"
UTC +12:00 NEW_ZEALAND_STANDARD_TIME "Стандартное время (Новая Зеландия)"
UTC +12:00 UTC_12 "UTC+12"
UTC +12:00 FIJI_STANDARD_TIME "Стандартное время (Фиджи)"
UTC +12:00 KAMCHATKA_STANDARD_TIME "Стандартное время (Камчатка)"
UTC +12:45 CHATHAM_ISLANDS_STANDARD_TIME "Стандартное время (острова Чатем)"
UTC +13:00 TONGA__STANDARD_TIME "Стандартное время (Тонга)"
UTC +13:00 SAMOA_STANDARD_TIME "Стандартное время (Самоа)"
UTC +14:00 LINE_ISLANDS_STANDARD_TIME "Стандартное время (острова Лайн)"