人工智慧平台PAI的分布式訓練DLC,提供靈活、穩定、易用和高效能的機器學習訓練環境。DataWorks為您提供了PAI DLC節點,您可以直接通過該節點載入DLC任務並配置調度依賴,實現DLC任務的周期性調度運行。
前提條件
已授權DataWorks可訪問人工智慧平台PAI。
您可進入授權介面進行一鍵授權,權限原則詳情請參見AliyunServiceRoleForDataWorksEngine。僅阿里雲主帳號或擁有AliyunDataWorksFullAccess權限原則的RAM使用者可執行一鍵授權操作。
已開發建立專案目錄,詳情請參見專案目錄。
已建立PAI DLC節點,詳情請參見建立調度工作流程的節點。
操作步驟
在PAI DLC節點編輯頁面,執行如下開發操作。
開發工作單位代碼
您可根據業務需求選擇以下方式編寫DLC任務:
基於已有DLC任務編寫任務代碼
通過名稱搜尋,載入在人工智慧平台PAI已建立的DLC任務。任務載入後,DLC節點編輯器會根據PAI中該任務的配置產生相應節點代碼,您可基於該代碼編輯修改任務。
說明若無許可權載入或建立任務,則可根據介面指引進行授權。
若無可用任務,則可前往PAI控制台建立。PAI DLC任務可通過多種方式建立,您可根據需要選擇,詳情請參見建立訓練任務、建立訓練任務:Python SDK、建立訓練任務:命令列。
直接編寫DLC任務代碼
在DataWorks的PAI DLC節點編輯器中,根據需要直接編寫任務代碼。
在節點編輯地區開發工作單位代碼,您可在代碼中使用${變數名}的方式定義變數,並在節點編輯頁面右側調度配置的調度參數中為該變數賦值。實現調度情境下代碼的動態傳參,調度參數使用詳情,請參考調度參數來源及其運算式,樣本如下。
dlc submit pytorchjob \ #使用DLC提交一個PyTorch任務。 --name=test \ #DLC任務名稱。建議使用變數名或DataWorks的節點名稱。 --command='echo '\''hi'\''' \ #任務代執行的命令,樣本中執行的命令為echo 'hi'。 --workspace_id=309801 \ #執行任務的工作空間。 --priority=1 \ #任務優先順序,取值1-9,1優先順序最低,9優先順序最高。 --workers=1 \ #任務節點數量。節點大於1時,表示該任務為分布式任務,即任務可並發在多個節點執行。 --worker_image=<image> \ #指定worker啟動並執行鏡像路徑。 --image_repo_username=<使用者名稱> \ #提供私人鏡像授權。 --image_repo_password=<密碼> \ #提供私人鏡像授權。 --data_source_uris=oss://oss-cn-shenzhen.aliyuncs.com/::/mnt/data/:{mountType:jindo} \ #將Object Storage Service類型的資料來源掛載到容器的指定路徑,樣本中掛載類型為jindo。 --worker_spec=ecs.g6.xlarge #節點配置,即所使用的計算節點規格。編寫完PAI DLC任務,執行節點任務。
在回合組態中選擇配置資源群組。
資源群組選擇與資料來源測試連通性成功的調度資源群組。詳情請參見網路連通方案。
在工具列中單擊運行節點任務。
如需定期執行節點任務,請根據業務需求配置調度資訊。配置詳情請參見節點調度配置。
節點任務配置完成後,需對節點進行發布。詳情請參見節點/工作流程發布。
任務發布後,您可以在營運中心查看周期任務的運行情況。詳情請參見營運中心入門。