如果您正將現有的深度學習工作負載從經典的 Databricks 叢集(搭配 Databricks Runtime ML)遷移到無伺服器(搭配 AI 執行環境)的,請遵循以下步驟:
- 替換依賴叢集的程式碼。 移除所有關於基於 Spark 的分散式訓練(例如
TorchDistributor)的參考,並以@distributed中的serverless_gpu裝飾器取代。 - 更新資料載入中。 將直接的 DBFS 路徑替換為 Unity Catalog 的卷軸路徑(
/Volumes/...)。 用 Spark Connect 取代本地的 Spark DataFrame 操作。 若要從磁碟區串流傳輸檔案型資料,請使用來自UCVolumeDataset的databricks.air.data。 請參見 AI 執行時的載入資料。 - 設定您的環境。 部分 Databricks Runtime ML 預裝函式庫在 AI Runtime 上無法使用。 建立一個無伺服器的 GPU 環境,並安裝你工作負載所需的套件。
%pip install請參閱 「建立你的環境」。 - 更新檢查點路徑。 將檢查點從 DBFS 或本地儲存移到 Unity 目錄卷(
/Volumes/<catalog>/<schema>/<volume>/...)。 對於分散式檢查點,請使用UCVolumeWriter和UCVolumeReaderdatabricks.air.data,該 階段透過本地 NVMe 進行 I/O。 請參見 具有分散式檢查點(DCP)的 Checkpoint。 - 檢視你的 MLflow 設定。 在 AI Runtime 上,
.distributed()API 會自動建立 MLflow 執行作業。 要自訂實驗,請設定絕對路徑。 要恢復中斷的執行,請設定執行名稱。 看看 MLflow 為深度學習提供了什麼。 - 先互動測試。 在排程前,先在互動筆記本中驗證你的工作量。