メインコンテンツまでスキップ

レガシー GPU ワークロードをServerlessに移行

既存のディープラーニングワークロードを従来のDatabricksクラスター(Databricks Runtime 機械学習を使用)からServerless(AI Runtimeを使用)に移行する場合は、次のステップに従います。

  1. クラスター依存のコードを置き換えます。 Spark ベースの分散トレーニングへの参照TorchDistributor (例:)@distributed を削除し、Databricks AI ランタイム SDK () のdatabricks.air デコレーターに置き換えます。
  2. : データ読み込みを更新します。 : 直接DBFSパスをUnity Catalogボリュームパス(/Volumes/...)に置き換えます。: ローカルのSpark DataFrame操作をSpark Connectに置き換えます。: ボリュームからファイルベースのデータをストリーミングするには、 databricks.air.data の UCVolumeDataset を使用します。: AI ランタイムへのデータの読み込みを参照してください。
  3. 環境を設定してください。 Databricks Runtime 機械学習にプリインストールされているライブラリの一部は、AIランタイムでは利用できません。Serverless GPU環境を設定し、%pip installを使用してワークロードに必要なパッケージをインストールしてください。「環境の設定」を参照してください。
  4. チェックポイントパスを更新します。 チェックポイントをDBFSまたはローカルストレージからUnity Catalogボリューム(/Volumes/<catalog>/<schema>/<volume>/...)に移動します。分散チェックポインティングの場合は、 databricks.air.data の UCVolumeWriter と UCVolumeReader を使用して、ローカル NVMe を介して I/O をステージングします。分散チェックポインティング(DCP)によるチェックポイントを参照してください。
  5. MLflow設定を見直してください。 AI ランタイムでは、 .distributed() API は自動的に MLflow ランを作成します。エクスペリメントをカスタマイズするには、絶対パスで設定します。中断されたランを再開するには、ラン名を設定します。MLflowが提供するものを参照してください。
  6. まずはインタラクティブにテストします。 ジョブとしてスケジュールする前に、インタラクティブノートブックでワークロードを検証します。