メインコンテンツまでスキップ
非公開のページ
このページは非公開です。 検索対象外となり、このページのリンクに直接アクセスできるユーザーのみに公開されます。

AIランタイム用レガシーPython CLIクイックスタート

重要

このドキュメントは廃止されており、更新されない可能性があります。

databricks-airパッケージでインストールするPythonベースのair CLIは、現在非推奨となっており、積極的なメンテナンスは終了しています。

新規ワークロードには Databricks CLI を使用してください。AIランタイムでのDatabricks CLIの使用を参照してください。

AIランタイムCLIを使用して最初のトレーニングジョブを送信するステップは3つです。train.yamlの設定を書き、air runでそれを実行し、ランを検査します。開始する前に、CLI をインストールして認証を構成してください。

ステップ 1:YAML設定ファイルを作成する​

ワークロードを記述するtrain.yamlを作成します。最小限の構成には、エクスペリメント名、コンピュート仕様、およびコマンドが必要です。以下のコマンドはローカルコードなしで実行されるため、すぐに最初のランを送信できます:

YAML
experiment_name: my-first-air-run
compute:
num_accelerators: 1
accelerator_type: GPU_1xA10
command: echo "hello AIR!"

自分のコードをランする​

ローカルのトレーニングスクリプトをランするには、Pythonの依存関係をリストした environment ブロックと、ローカルコードをuploadする code_source ブロックを追加します。スクリプトを train.yaml と並べて配置します:

Text
my-project/
├── train.yaml
└── train.py
YAML
experiment_name: my-first-air-run
environment:
version: '4'
dependencies:
- torch
- transformers
compute:
num_accelerators: 1
accelerator_type: GPU_1xA10
code_source:
type: snapshot
snapshot:
root_path: .
command: python $CODE_SOURCE_PATH/train.py

この構成は、リストされた依存関係をインストールし、現在のディレクトリ (root_path: .) を upload し、単一の A10 GPU で train.py を実行します。$CODE_SOURCE_PATHは、リモートノード上のuploadされたコードの場所に解決されます。Databricksでは、パスをハードコードするのではなく、これを使用することをお勧めします。environment.versionはServerless GPU環境バージョンを選択します(defaultは'4')。利用可能な全バージョンについては、環境バージョンを参照してください。

完全なフィールドリファレンスについては、レガシーPython CLI用Workload YAMLリファレンスを参照してください。

ステップ 2: ランの送信​

ワークロードの送信:

Bash
air run --file train.yaml

CLIはローカルコードをuploadし (code_sourceを構成した場合)、ジョブを送信し、ランIDを出力します。そのIDを使用して、後のコマンドでランを検査、監視、キャンセルします。

提出により、experiment_name に指定された名前の MLflow エクスペリメント内にランが作成されます(1つのエクスペリメントには多数のランを保持できます)。そのランは、ワークスペースの MLflow UI で表示可能な、ワークロードのメトリクス、パラメーター、アーティファクト、および Log をキャプチャします。Logs は MLflow の外部でも使用できます。ターミナルやファイルにストリームしたり、後で air logs で download したりできます(ステップ 3 を参照)。

終了までLogsを監視するには、--watchを追加します:

Bash
air run --file train.yaml --watch

ステップ 3: ランの確認​

ステータスを確認:

Bash
air get run <run-id>

出力には、ワークスペース UI のランのMLflowエクスペリメントおよびMLflowランへのクリック可能なLinkが含まれています。

ログのストリームまたはdownload:

Bash
air logs <run-id>
air logs <run-id> --node 2
air logs <run-id> --download-to ./logs/

分散ワークロードは複数のノードでランします。defaultでは、air logsはノード0からストリームします。特定のノードからLogsを表示するには、--nodeを渡します。Logsをストリーミングする代わりにローカルディレクトリに書き込むには、--download-toを使用します。

最近のランを一覧表示:

Bash
air list runs --limit 10
air list runs --active

ランのキャンセル:

Bash
air cancel <run-id>

一般的なパターン​

コマンドラインからYAMLフィールドを上書きする:

Bash
air run --file train.yaml --override compute.num_accelerators=32 timeout_minutes=120

送信せずに構成を検証する:

Bash
air run --file train.yaml --dry-run

送信を安全に再試行可能にする:

Bash
air run --file train.yaml --idempotency-key my-unique-key

同じキーが以前に使用されている場合、新しいキーを作成するのではなく、既存のランが返されます。

その他のリソース​