CLI (v2) 作業排程 YAML 結構描述
您可以在 找到 https://azuremlschemas.azureedge.net/latest/schedule.schema.json來源 JSON 架構。
注意
本文件中詳述的 YAML 語法是以最新版 ML CLI v2 延伸模組的 JSON 結構描述為基礎。 此語法僅保證能與最新版的 ML CLI v2 延伸模組搭配運作。 您可以在 https://azuremlschemasprod.azureedge.net/ 找到舊版延伸模組的結構描述。
YAML 語法
機碼 | 類型 | 描述 | 允許的值 |
---|---|---|---|
$schema |
字串 | YAML 結構描述。 | |
name |
字串 | 必要。 排程的名稱。 | |
description |
字串 | 排程的描述。 | |
tags |
object | 排程的標籤典。 | |
trigger |
object | 要定義何時觸發作業的觸發程式組態。 其中一個 RecurrenceTrigger 或 CronTrigger 是必要的。 |
|
create_job |
物件或字串 | 必要。 排程所觸發之作業的定義。 其中一個 string 或 JobDefinition 是必要的。 |
觸發程式設定
週期性觸發程序
機碼 | 類型 | 描述 | 允許的值 |
---|---|---|---|
type |
字串 | 必要。 指定排程類型。 | 週期 |
frequency |
字串 | 必要。 指定描述排程引發頻率的時間單位。 | minute 、、 hour 、 day 、 week 、 month |
interval |
整數 | 必要。 指定排程引發的間隔。 | |
start_time |
字串 | 描述時區的開始日期和時間。 如果省略start_time,則第一個作業會立即執行,且未來的作業將會根據排程觸發,並指出start_time會等於作業建立時間。 如果開始時間已結束,第一個作業會在下一個計算的執行時間執行。 | |
end_time |
字串 | 描述具有時區的結束日期和時間。 如果省略end_time,排程會繼續執行,直到明確停用為止。 | |
timezone |
字串 | 指定週期的時區。 如果省略,即預設為 UTC。 | 請參閱 時區值的附錄 |
pattern |
object | 指定週期的模式。 如果省略模式,作業會根據start_time、頻率和間隔的邏輯來觸發。 |
週期排程
週期排程會定義週期模式,其中包含 hours
、 minutes
和 weekdays
。
- 當 frequency 為
day
時,模式可以指定hours
和minutes
。 - 當 frequency 為
week
與month
時,模式可以指定hours
、minutes
與weekdays
。
機碼 | 類型 | 允許的值 |
---|---|---|
hours |
整數或整數陣列 | 0-23 |
minutes |
整數或整數陣列 | 0-59 |
week_days |
字串或字串串數位 | monday 、tuesday 、、thursday wednesday 、friday 、、、 saturday sunday |
CronTrigger
機碼 | 類型 | 描述 | 允許的值 |
---|---|---|---|
type |
字串 | 必要。 指定排程類型。 | Cron |
expression |
字串 | 必要。 指定要定義如何觸發作業的cron表達式。 expression 會使用標準 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 |
object | 作業輸入的字典。 索引鍵是作業內容中的輸入名稱,值則是輸入值。 | |
outputs |
object | 作業輸出組態的字典。 索引鍵是作業內容中的輸出名稱,值則是輸出設定。 | |
settings |
object | 管線作業的預設設定。 如需可設定的屬性集,settings 請參閱索引鍵的屬性。 |
索引鍵的屬性settings
機碼 | 類型 | 描述 | 預設值 |
---|---|---|---|
default_datastore |
字串 | 要作為管線作業之預設數據存放區的數據存放區名稱。 此值必須是使用 azureml:<datastore-name> 語法在工作區中現有數據存放區的參考。 父管線作業或子步驟作業之 屬性中 outputs 定義的任何輸出都會儲存在此數據存放區中。 如果省略,輸出將會儲存在工作區 Blob 資料存放區中。 |
|
default_compute |
字串 | 要作為管線中所有步驟之預設計算的計算目標名稱。 如果計算是在步驟層級定義,則會覆寫該特定步驟的這個預設計算。 此值必須是使用 azureml:<compute-name> 語法在工作區中現有計算的參考。 |
|
continue_on_step_failure |
boolean | 如果某個步驟失敗,管線中的步驟是否應該繼續執行。 默認值為 False ,這表示如果一個步驟失敗,管線執行將會停止,並取消任何執行中的步驟。 |
False |
作業輸入
機碼 | 類型 | 描述 | 允許的值 | 預設值 |
---|---|---|---|---|
type |
字串 | 作業輸入的類型。 指定 uri_file 指向單一檔案來源的輸入數據,或 uri_folder 指定指向資料夾來源的輸入數據。 |
uri_file , uri_folder |
uri_folder |
path |
字串 | 要作為輸入的數據路徑。 這可以透過幾種方式指定: - 資料來源檔案或資料夾的本機路徑,例如 path: ./iris.csv 。 數據會在作業提交期間上傳。 - 要作為輸入之檔案或資料夾之雲端路徑的 URI。 支援的 URI 型態為 azureml 、、https 、wasbs abfss 、 adl 。 如需如何使用 azureml:// URI 格式的詳細資訊,請參閱 核心 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 、 、 download direct |
ro_mount |
工作輸出
機碼 | 類型 | 描述 | 允許的值 | 預設值 |
---|---|---|---|---|
type |
字串 | 作業輸出的類型。 針對預設 uri_folder 類型,輸出會對應至資料夾。 |
uri_folder |
uri_folder |
path |
字串 | 要作為輸入的數據路徑。 這可以透過幾種方式指定: - 資料來源檔案或資料夾的本機路徑,例如 path: ./iris.csv 。 數據會在作業提交期間上傳。 - 要作為輸入之檔案或資料夾之雲端路徑的 URI。 支援的 URI 型態為 azureml 、、https 、wasbs abfss 、 adl 。 如需如何使用 azureml:// URI 格式的詳細資訊,請參閱 核心 yaml 語法。 - 現有的已註冊 Azure 機器學習 數據資產,用來作為輸入。 若要參考已註冊的數據資產,請使用 azureml:<data_name>:<data_version> 語法 或 azureml:<data_name>@latest (參考該數據資產的最新版本),例如 path: azureml:cifar10-data:1 或 path: azureml:cifar10-data@latest 。 |
||
mode |
字串 | 輸出檔案將如何傳遞至目的地記憶體的模式。 針對讀寫掛接模式 (rw_mount ) ,輸出目錄會是掛接的目錄。 針對上傳模式,寫入的檔案將會在作業結束時上傳。 |
rw_mount , upload |
rw_mount |
備註
az ml schedule
命令可用於管理 Azure 機器學習 模型。
範例
範例 GitHub 存放庫中有範例可用。 下面顯示一對夫婦。
YAML:使用週期模式排程
$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運算式排程
$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 | “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 | “Marquesas 標準時間” |
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 | “Pacific Standard Time” |
UTC -07:00 | US_MOUNTAIN_STANDARD_TIME | “US Mountain Standard Time” |
UTC -07:00 | MOUNTAIN_STANDARD_TIME_MEXICO | “山標準時間(墨西哥)” |
UTC -07:00 | MOUNTAIN_STANDARD_TIME | “Mountain Standard Time” |
UTC -06:00 | CENTRAL_AMERICA_STANDARD_TIME | “中美洲標準時間” |
UTC -06:00 | CENTRAL_STANDARD_TIME | “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 | “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 | “SA Western Standard Time” |
UTC -04:00 | PACIFIC_SA_STANDARD_TIME | “Pacific SA Standard Time” |
UTC -03:30 | NEWFOUNDLAND_STANDARD_TIME | “紐芬蘭標準時間” |
UTC -03:00 | TOCANTINS_STANDARD_TIME | “Tocantins Standard Time” |
UTC -03:00 | E_SOUTH_AMERICAN_STANDARD_TIME | E。」 南美洲標準時間” |
UTC -03:00 | SA_EASTERN_STANDARD_TIME | “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 | “Bahia 標準時間” |
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 | “W. 歐洲標準時間” |
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 | “W. 中非標準時間” |
UTC +02:00 | NAMIBIA_STANDARD_TIME | “納米比亞標準時間” |
UTC +02:00 | JORDAN_STANDARD_TIME | “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 | “Türkiye 標準時間” |
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 | “Astrakhan 標準時間” |
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 | “Ekaterinburg 標準時間” |
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 | “N. 中亞標準時間” |
UTC +07:00 | SE_ASIA_STANDARD_TIME | “SE Asia Standard Time” |
UTC +07:00 | ALTAI_STANDARD_TIME | “Altai 標準時間” |
UTC +07:00 | W_MONGOLIA_STANDARD_TIME | “W. 蒙古標準時間” |
UTC +07:00 | NORTH_ASIA_STANDARD_TIME | “北亞標準時間” |
UTC +07:00 | TOMSK_STANDARD_TIME | “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 | “W. 澳大利亞標準時間” |
UTC +08:00 | TAIPEI_STANDARD_TIME | “台北標準時間” |
UTC +08:00 | ULAANBAATAR_STANDARD_TIME | “烏蘭巴托標準時間” |
UTC +08:45 | AUS_CENTRAL_W_STANDARD_TIME | “Aus Central W. Standard Time” |
UTC +09:00 | NORTH_KOREA_STANDARD_TIME | “朝鮮標準時間” |
UTC +09:00 | TRANSBAIKAL_STANDARD_TIME | “Transbaikal 標準時間” |
UTC +09:00 | TOKYO_STANDARD_TIME | “東京標準時間” |
UTC +09:00 | KOREA_STANDARD_TIME | “韓國標準時間” |
UTC +09:00 | YAKUTSK_STANDARD_TIME | “Yakutsk 標準時間” |
UTC +09:30 | CEN_AUSTRALIA_STANDARD_TIME | “Cen. 澳大利亞標準時間” |
UTC +09:30 | AUS_CENTRAL_STANDARD_TIME | “AUS Central Standard Time” |
UTC +10:00 | E_AUSTRALIAN_STANDARD_TIME | E。」 澳大利亞標準時間” |
UTC +10:00 | AUS_EASTERN_STANDARD_TIME | “AUS 東部標準時間” |
UTC +10:00 | WEST_PACIFIC_STANDARD_TIME | “西太平洋標準時間” |
UTC +10:00 | TASMANIA_STANDARD_TIME | “塔斯馬尼亞標準時間” |
UTC +10:00 | VLADIVOSTOK_STANDARD_TIME | “Vladivostok 標準時間” |
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 | “Magadan 標準時間” |
UTC +11:00 | NORFOLK_STANDARD_TIME | “Norfolk 標準時間” |
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 | “Kamchatka 標準時間” |
UTC +12:45 | CHATHAM_ISLANDS_STANDARD_TIME | “查塔姆群島標準時間” |
UTC +13:00 | TONGA__STANDARD_TIME | “Tonga Standard Time” |
UTC +13:00 | SAMOA_STANDARD_TIME | “薩摩亞標準時間” |
UTC +14:00 | LINE_ISLANDS_STANDARD_TIME | “Line Islands Standard Time” |