Share via


CLI (v2) ジョブ スケジュール YAML スキーマ

適用対象: Azure CLI ML 拡張機能 v2 (現行)

ソース JSON スキーマは https://azuremlschemas.azureedge.net/latest/schedule.schema.json にあります。

Note

このドキュメントで詳しく説明されている YAML 構文は、最新バージョンの ML CLI v2 拡張機能の JSON スキーマに基づいています。 この構文は、ML CLI v2 拡張機能の最新バージョンでのみ動作することが保証されています。 以前のバージョンの拡張機能のスキーマについては、https://azuremlschemasprod.azureedge.net/ でご確認いただけます。

YAML 構文

キー Type 説明 使用できる値
$schema string YAML スキーマ。
name string 必須。 スケジュールの名前。
description string スケジュールの説明。
tags object スケジュールのタグの辞書。
trigger object ジョブをトリガーするタイミングのルールを定義するトリガー構成。 RecurrenceTrigger または CronTrigger のいずれかが必須です。
create_job オブジェクトまたは文字列 必須。 スケジュールによってトリガーされるジョブの定義。 string または JobDefinition のいずれかが必須です。

トリガーの構成

Recurrence トリガー

キー Type 説明 使用できる値
type string 必須。 スケジュールの種類を指定します。 recurrence
frequency string 必須。 スケジュールの起動間隔を表す時間の単位を指定します。 minute, hour, day, week, month
interval 整数 (integer) 必須。 スケジュールの起動間隔を指定します。
start_time string タイムゾーンと共に開始日時を記述します。 start_time を省略した場合、最初のジョブが即座に実行され、将来のジョブはスケジュールに基づいてトリガーされます。つまり、start_time はジョブの作成時刻と等しくなります。 開始時刻が過去の場合、最初のジョブは、計算された次の実行時に実行されます。
end_time string タイムゾーンと共に終了日時を記述します。 end_time を省略した場合、明示的に無効になるまでスケジュールは引き続き実行されます。
timezone string 繰り返しのタイム ゾーンを指定します。 省略した場合、既定値は UTC になります。 タイムゾーン値の付録を参照
pattern object 繰り返しのパターンを指定します。 パターンを省略すると、start_time、frequency、interval のロジックに従ってジョブがトリガーされます。

繰り返しスケジュール

繰り返しスケジュールは、hoursminutesweekdays などの繰り返しパターンを定義します。

  • 頻度が day の場合、パターンで hoursminutes を指定できます。
  • 頻度が weekmonth の場合、パターンで hoursminutesweekdays を指定できます。
キー Type 使用できる値
hours 整数または整数の配列 0-23
minutes 整数または整数の配列 0-59
week_days 文字列または文字列の配列 monday, tuesday, wednesday, thursday, friday, saturday, sunday

CronTrigger

キー Type 説明 使用できる値
type string 必須。 スケジュールの種類を指定します。 cron
expression string 必須。 ジョブをトリガーする方法を定義する cron 式を指定します。 式では、標準の crontab 式を使用して繰り返しスケジュールを表します。 1 つの式は、スペースで区切られた 5 つのフィールドで構成されます: MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK
start_time string タイムゾーンと共に開始日時を記述します。 start_time を省略した場合、最初のジョブが即座に実行され、将来のジョブはスケジュールに基づいてトリガーされます。つまり、start_time はジョブの作成時刻と等しくなります。 開始時刻が過去の場合、最初のジョブは、計算された次の実行時に実行されます。
end_time string タイムゾーンと共に終了日時を記述します。 end_time を省略した場合、明示的に無効になるまでスケジュールは引き続き実行されます。
timezone string 繰り返しのタイム ゾーンを指定します。 省略した場合、既定値は UTC になります。 タイムゾーン値の付録を参照

ジョブ定義

お客様は、create_job: azureml:<job_name> を直接使用することも、次のプロパティを使用してジョブを定義することもできます。

キー Type 説明 使用できる値
type string 必須。 ジョブの種類を指定します。 パイプライン ジョブのみがサポートされています。 pipeline
job string 必須。 ジョブを参照する方法を定義します。これは azureml:<job_name> にすることも、file:hello-pipeline.yml などのローカル パイプライン ジョブ yaml にすることもできます。
experiment_name string ジョブを整理するための実験名。 各ジョブの実行レコードは、スタジオの [実験] タブの対応する実験の下に整理されます。省略すると、スケジュール名が既定値になります。
inputs object ジョブへの入力の辞書。 キーは、ジョブのコンテキスト内の入力の名前であり、値は入力値です。
outputs object ジョブの出力構成の辞書。 キーはジョブのコンテキスト内の出力の名前であり、値は出力構成です。
settings object パイプライン ジョブの既定の設定。 構成可能なプロパティのセットについては、settings キーの属性に関する記事を参照してください。

settings キーの属性

キー Type 説明 既定値
default_datastore string パイプライン ジョブの既定のデータストアとして使用するデータストアの名前。 この値は、azureml:<datastore-name> 構文を使用したワークスペース内の既存のコンピューティングへの参照である必要があります。 親パイプライン ジョブまたは子ステップ ジョブの outputs プロパティで定義されている出力は、このデータストアに格納されます。 省略した場合、出力はワークスペース BLOB データストアに格納されます。
default_compute string パイプライン内のすべてのステップで既定のコンピューティングとして使用するコンピューティング先の名前。 コンピューティングがステップ レベルで定義されている場合は、その特定のステップに対してこの既定のコンピューティングがオーバーライドされます。 この値は、azureml:<compute-name> 構文を使用してワークスペース内の既存のコンピューティングへの参照である必要があります。
continue_on_step_failure boolean 1 つのステップが失敗した場合にパイプライン内のステップの実行を続行するかどうか。 既定値は False です。これは、1 つのステップが失敗すると、パイプラインの実行が停止し、実行中のステップが取り消されることを意味します。 False

ジョブの入力

キー Type 説明 使用できる値 既定値
type string ジョブ入力の種類。 1 つのファイル ソースを指す入力データの場合は uri_file、フォルダー ソースを指す入力データの場合は uri_folder を指定します。 uri_file, uri_folder uri_folder
path string 入力として使用するデータのパス。 これは、いくつかの方法で指定できます。

- データ ソース ファイルまたはフォルダーへのローカル パス (例: path: ./iris.csv)。 データはジョブの送信中にアップロードされます。

- 入力として使用するファイルまたはフォルダーへのクラウド パスの URI。 サポートされる URI の種類は azuremlhttpswasbsabfssadl です。 azureml:// URI 形式の使用方法の詳細については、コア yaml 構文に関する記事を参照してください。

- 入力として使用する既存の登録済み Azure Machine Learning データ資産。 登録済みデータ資産を参照するには、azureml:<data_name>:<data_version> 構文または azureml:<data_name>@latest (そのデータ資産の最新バージョンを参照する場合) を使用します。(例: path: azureml:cifar10-data:1 または path: azureml:cifar10-data@latest)。
mode string コンピューティング先にデータを配信する方法のモード。

読み取り専用マウントの場合 (ro_mount)、データはマウント パスとして使用されます。 フォルダーはフォルダーとしてマウントされ、ファイルはファイルとしてマウントされます。 Azure Machine Learning では、マウント パスへの入力が解決されます。

download モードの場合、データはコンピューティング先にダウンロードされます。 Azure Machine Learning では、ダウンロードされたパスへの入力が解決されます。

データ自体をマウントまたはダウンロードするのではなく、データ成果物の保存場所の URL のみが必要な場合は、モード direct を使用できます。 これにより、保存場所の URL がジョブ入力として渡されます。 この場合、ストレージにアクセスするための資格情報を処理する責任があります。
ro_mount, download, direct ro_mount

ジョブ出力

キー Type 説明 使用できる値 既定値
type string ジョブ出力の種類。 既定の uri_folder 種類の場合、出力はフォルダーに対応します。 uri_folder uri_folder
path string 入力として使用するデータのパス。 これは、いくつかの方法で指定できます。

- データ ソース ファイルまたはフォルダーへのローカル パス (例: path: ./iris.csv)。 データはジョブの送信中にアップロードされます。

- 入力として使用するファイルまたはフォルダーへのクラウド パスの URI。 サポートされる URI の種類は azuremlhttpswasbsabfssadl です。 azureml:// URI 形式の使用方法の詳細については、コア yaml 構文に関する記事を参照してください。

- 入力として使用する既存の登録済み Azure Machine Learning データ資産。 登録済みデータ資産を参照するには、azureml:<data_name>:<data_version> 構文または azureml:<data_name>@latest (そのデータ資産の最新バージョンを参照する場合) を使用します。(例: path: azureml:cifar10-data:1 または path: azureml:cifar10-data@latest)。
mode string 出力ファイルを宛先ストレージに配信する方法のモード。 読み取り/書き込みマウント モード (rw_mount) の場合、出力ディレクトリはマウントされたディレクトリになります。 アップロード モードの場合、書き込まれたファイルがジョブの最後にアップロードされます。 rw_mount, upload rw_mount

解説

az ml schedule コマンドは、Azure Machine Learning モデルを管理するために使用できます。

例は、GitHub リポジトリの例にあります。 次にいくつかを示します。

YAML: 繰り返しパターンを使用したスケジュール

適用対象: Azure CLI ML 拡張機能 v2 (現行)

$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 ML 拡張機能 v2 (現行)

$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

付録

タイム ゾーン

現在のスケジュールでは、次のタイムゾーンがサポートされています。 キーは Python SDK で直接使用できますが、値は 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 "GMT 標準時"
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 "GTB 標準時"
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 "FLE 標準時"
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 "トルコ標準時"
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 "ライン諸島標準時"