Important
この機能は パブリック プレビュー段階です。
このページでは、 databricks air runが受け入れるワークロードのYAMLフィールドについて説明します。 コマンドの構文やフラグについては、 databricks air runを参照してください。 ワークロードを提出するには、 Databricks CLI quick start for AI Runtime をご覧ください。
すべての課題負荷には experiment_name、 compute、 commandが必要です。
Example
以下の例は、サンプルのワークロード構成を示しています。
experiment_name: my-training
compute:
accelerator_type: GPU_1xA10
num_accelerators: 1
environment:
version: 6
dependencies:
- torch
code_source:
root_path: .
command: python $CODE_SOURCE_PATH/train.py
experiment_name
型: 文字列
Required.
experiment_nameキーはMLflow実験の名前です。
この名前の実験が存在しない場合、AI Runtimeが作成します。 そうでなければ、AI Runtimeは新しい実行を既存の実験に追加します。
コンピューティング
タイプ: 地図
Required.
computeオブジェクトは加速器の構成を定義します。
| Key | タイプ | Description |
|---|---|---|
accelerator_type |
文字列 | Required. CLIで承認され、ワークスペース内で利用可能なアクセラレータタイプ。 照合では大文字と小文字が区別されます。 |
num_accelerators |
整数 | Required. 選択した加速器タイプに対して正の加速器数が支持されます。 |
pool_id |
文字列 | プロビジョニング済みGPU容量のID。 |
priority_class |
文字列 | プロビジョニングされたGPU容量を使用するワークロードのスケジューリング優先度。 指定できる値は BEST_EFFORT、NORMAL、CRITICAL です。
pool_id が必要です。 |
アクセラレータの種類や数は、ワークスペース、クラウド、地域によって異なります。 ハードウェアの選択と入手可能性については 「ハードウェアオプション」を参照してください。
コマンド
型: 文字列
Required.
commandキーには空でないシェルコマンドやスクリプトが含まれています。 コマンド内のパスは、ワークロードコンテナ内のリモートファイルパスを指します。
code_sourceが設定されると、$CODE_SOURCE_PATHは抽出されたコードへの絶対パスを含みます。
環境
タイプ: 地図
environmentオブジェクトは、依存関係をオプションで管理する環境やカスタムのUnity Catalogイメージを選択します。
| Key | タイプ | Description |
|---|---|---|
version |
文字列または整数 | 数値 環境バージョン( 6)やDatabricksのAI環境識別子( databricks_ai_v6)などがあります。
databricks_ai_v識別子にはバージョン5以上が必要です。 省略した場合、CLIは現在のAIランタイムのデフォルトを使用します。 |
dependencies |
文字列のリスト | パッケージ仕様はサーバーレス環境に渡されます。 デフォルトは追加の依存関係なしです。 |
unity_catalog_image |
文字列 |
<catalog>.<schema>.<image>:<tag>のフォーマットでのカスタム画像。
versionおよびdependenciesとは相互排他的です。 セットアップ手順については「 AI RuntimeでカスタムDockerイメージを使う」をご覧ください。 |
環境の選択と拡張に関するガイダンスについては、「 環境の設定」をご覧ください。
管理環境の例
environment:
version: 6
dependencies:
- torch
管理環境の代わりにカスタムイメージを使用するには、 unity_catalog_imageだけを指定します:
カスタム画像の例
environment:
unity_catalog_image: main.ml.training:v1
code_source
タイプ: 地図
code_sourceオブジェクトはワークロード用のローカルコードをパッケージ化します。
| Key | タイプ | Description |
|---|---|---|
root_path |
文字列 |
code_sourceが設定されている場合に必要です。 パッケージングのためのローカルディレクトリ。 ディレクトリはCLIが実行を段階化する際に存在しなければなりません。 |
remote_volume |
文字列 | アップロードされたアーカイブのためのUnity Catalogボリュームの場所です。
/Volumes/で始まる必要があります。 デフォルトでワークスペースの場所が設定されています。 |
include_paths |
文字列のリスト | <[> ..を含むことはできません。 選択したすべてのファイルを含めるキーは省略してください。 空のリストは有効ではありません。 |
git |
オブジェクト | コードソーススナップショットをローカルのGitブランチやコミットにピン留めします。 |
gitを省略すると、CLIは作業木をパッケージ化し、Git無視ルールで除外されていない未コミット・未追跡ファイルも含めて管理します。 相対 root_path は、ワークロードのYAMLファイルを含むディレクトリから解決されます。
git(分散型バージョン管理システム)
タイプ: 地図
git オブジェクトは、次のキーをサポートしています。
| Key | タイプ | Description |
|---|---|---|
branch |
文字列 |
commitが省略された場合に必須です。 支店の現地責任者をパッケージ化する。 選択したファイルにはコミットされていない変更を含めることはできません。 |
commit |
文字列 |
branchが省略された場合に必須です。 ローカルのGitオブジェクトストアからコミットをパッケージ化します。
branchと相互に排他的です。 |
Example
以下の例は、ローカル main ブランチから選ばれたパスをパッケージ化しています:
code_source:
root_path: ./src
include_paths:
- training
- configs
git:
branch: main
env_variables
タイプ: 文字列の写像
env_variablesキーはプレーンな環境変数名と文字列値を持ちます。 名前は secretsにも現れません。
Example
env_variables:
BATCH_SIZE: '32'
LEARNING_RATE: '0.001'
idempotency_token
型: 文字列
idempotency_tokenキーは繰り返し提出されたものを示します。 同じトークンで繰り返し提出すると、既存のランが返されます。 このキーが省略されるとCLIはUUIDを生成します。
--idempotency-key指揮旗が優先されます。
max_retries
種類: 整数
max_retriesキーは初回試行後の再試回数を指定します。 値が非負でなければなりません。 既定値: 3。
mlflow_artifact_location
型: 文字列
mlflow_artifact_locationキーにはdbfs:/URIまたは/Volumes/パスが含まれています。 このキーを省略すると、新しい実験はデフォルトのDBFS位置を使用し、既存の実験は設定されたアーティファクト位置を使用します。 既存の実験の場合、値は実験のアーティファクトの位置と一致しなければなりません。
mlflow_experiment_directory
型: 文字列
mlflow_experiment_directoryキーには実験用のワークスペースディレクトリが含まれています。 道は /Workspaceから始まらなければならない。
mlflow_run_name
型: 文字列
mlflow_run_nameキーにはラン名が含まれています。 このキーを省略すると、ラン名はデフォルトで experiment_nameの値になります。
parameters
タイプ: 地図
parametersキーは自由形式のネスト値を含む。 CLIはこれらの値を他の打ち上げアーティファクトとシリアライズ hyperparameters.yaml します。
Example
parameters:
learning_rate: 0.001
model:
hidden_size: 1024
アクセス許可
種類: 地図一覧
permissionsキーには提出後に申請された助成金が含まれています。 助成金が失敗した場合、実行はそのまま作成され、CLIが警告を印刷します。
各助成金は以下の鍵をサポートします:
| Key | タイプ | Description |
|---|---|---|
level |
文字列 | Required.
CAN_VIEWやCAN_MANAGEのような許可レベルです。 ワークスペースはその値を検証します。 |
user_name |
文字列 | ユーザーの電子メール。 各助成金ごとに user_name、 group_name、または service_principal_name のいずれかを正確に指定してください。 |
group_name |
文字列 | グループ名。 各助成金ごとに user_name、 group_name、または service_principal_name のいずれかを正確に指定してください。 |
service_principal_name |
文字列 | サービス プリンシパル名。 各助成金ごとに user_name、 group_name、または service_principal_name のいずれかを正確に指定してください。 |
Example
permissions:
- user_name: trainer@example.com
level: CAN_MANAGE
- group_name: training-team
level: CAN_VIEW
secrets
タイプ: 文字列の写像
secretsキーには、環境変数名が秘密参照に正確なscope/key形式でマッピングされています。 スコープとキーは空でなければなりません。 名前は env_variablesにも現れません。
Example
secrets:
HF_TOKEN: my-scope/hf-token
シークレットの作成および管理に関する情報は「 シークレット管理」をご覧ください。
timeout_minutes
種類: 整数
timeout_minutesキーは、リトライを含む全ランの壁時計制限を設定します。 この値は正の値である必要があります。 省略すると、ワークロードはAIランタイムのデフォルトを使用します。
usage_policy_id
型: 文字列
usage_policy_idキーには、既存のサーバーレス使用ポリシーの標準的なUUIDが含まれています。
usage_policy_nameと相互に排他的です。
usage_policy_name
型: 文字列
usage_policy_nameキーには既存のサーバーレス使用ポリシーの名前が含まれています。
usage_policy_idと相互に排他的です。
使用ポリシーの作成については、「 サーバーレス使用ポリシーによる属性使用」を参照してください。