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

クラシックな 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 ランタイムでのデータの読み込みについては、AI ランタイムでのデータの読み込みを参照してください。
  3. 環境を設定します。 一部の Databricks Runtime 機械学習 プリインストール済みライブラリは AI ランタイム では使用できません。Serverless GPU 環境を設定し、%pip install を使用してワークロードに必要なパッケージをインストールします。環境の設定を参照してください。
  4. チェックポイントのパスを更新します。 DBFS またはローカルストレージから Unity Catalog ボリューム (/Volumes/<catalog>/<schema>/<volume>/...) にチェックポイントを移動します。分散チェックポイント作成には、ローカル NVMe を介して I/O をステージングする、databricks.air.data の UCVolumeWriter および UCVolumeReader を使用します。See Checkpoint with Distributed Checkpoint (DCP).
  5. MLflow の設定を見直してください。 AI ランタイム では、.distributed() API によって MLflow のランが自動的に作成されます。エクスペリメントをカスタマイズするには、絶対パスを設定してください。中断されたランを再開するには、ラン名を設定してください。MLflow が提供する機能をご覧ください。
  6. Test interactively first. Validate your workload in an interactive ノートブック before scheduling it as a ジョブ.