> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-wbdocs-1882.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Launch キューを設定

> デフォルト値、最小値、最大値を含む設定テンプレートなど、Launch キューの高度なオプションを設定します。

このページでは、Launch キューのオプションを設定する方法を説明します。

<div id="set-up-queue-config-templates">
  ## 設定テンプレートを設定する
</div>

設定テンプレートを使用して、計算リソースの消費に対するガードレールを管理できます。メモリ使用量、GPU、実行時間などの項目について、デフォルト値、最小値、最大値を設定します。

設定テンプレートでキューを設定すると、チームメンバーは、あなたが定義した項目を、指定した範囲内でのみ変更できます。

<div id="configure-queue-template">
  ### キューテンプレートを設定する
</div>

既存のキューにキューテンプレートを設定することも、新しいキューを作成することもできます。

1. [W\&B Launch App](https://wandb.ai/launch) にアクセスします。
2. テンプレートを追加するキュー名の横にある **View queue** を選択します。
3. **Config** タブを選択します。ここには、キューの作成日時、キュー設定、既存の起動時オーバーライドなど、キューに関する情報が表示されます。
4. **キュー設定** セクションに移動します。
5. テンプレート化したい設定のキーと値を特定します。
6. 設定内の値をテンプレートフィールドに置き換えます。テンプレートフィールドは `{{variable-name}}` の形式です。
7. **Parse configuration** ボタンをクリックします。設定を解析すると、W\&B は作成した各テンプレートに対応するタイルをキュー設定の下に自動的に作成します。
8. 生成された各タイルでは、まずそのキュー設定で許可するデータ型 (string、integer、または float) を指定する必要があります。指定するには、**Type** ドロップダウンメニューからデータ型を選択します。
9. データ型に応じて、各タイル内に表示されるフィールドを入力します。
10. **Save config** をクリックします。

たとえば、チームが使用できる AWS インスタンスを制限するテンプレートを作成したいとします。テンプレートフィールドを追加する前のキュー設定は、次のようになっている場合があります。

```yaml title="launch config" theme={null}
RoleArn: arn:aws:iam:region:account-id:resource-type/resource-id
ResourceConfig:
  InstanceType: ml.m4.xlarge
  InstanceCount: 1
  VolumeSizeInGB: 2
OutputDataConfig:
  S3OutputPath: s3://bucketname
StoppingCondition:
  MaxRuntimeInSeconds: 3600
```

`InstanceType` のテンプレートフィールドを追加すると、設定は次のようになります。

```yaml title="launch config" theme={null}
RoleArn: arn:aws:iam:region:account-id:resource-type/resource-id
ResourceConfig:
  InstanceType: "{{aws_instance}}"
  InstanceCount: 1
  VolumeSizeInGB: 2
OutputDataConfig:
  S3OutputPath: s3://bucketname
StoppingCondition:
  MaxRuntimeInSeconds: 3600
```

次に、**Parse configuration** をクリックします。**キュー設定** の下に、`aws-instance` というラベルの新しいタイルが表示されます。

次に、**Type** ドロップダウンからデータ型として String を選択します。すると、ユーザーが選択できる値を指定するためのフィールドが表示されます。たとえば、次の画像では、チームの管理者が、ユーザーが選択できる 2 種類の AWS インスタンスタイプ (`ml.m4.xlarge` と `ml.p3.xlarge`) を設定しています。

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541-wbdocs-1882/wPEtZnTqyM95ckpT/images/launch/aws_template_example.png?fit=max&auto=format&n=wPEtZnTqyM95ckpT&q=85&s=7f445c9afde47d779f4553223c1cc895" alt="AWS CloudFormation template" width="942" height="988" data-path="images/launch/aws_template_example.png" />
</Frame>

<div id="dynamically-configure-launch-jobs">
  ## Launch ジョブを動的に設定する
</div>

キュー設定は、agent がキューからジョブを取り出す際に評価されるマクロを使って動的に設定できます。設定できるマクロは次のとおりです。

| Macro             | Description             |
| ----------------- | ----------------------- |
| `${project_name}` | run の起動先のプロジェクト名。       |
| `${entity_name}`  | run の起動先のプロジェクトの所有者。    |
| `${run_id}`       | 起動される run の ID。         |
| `${run_name}`     | 起動される run の名前。          |
| `${image_uri}`    | この run のコンテナーイメージの URI。 |

<Note>
  前の表に記載されていないカスタムマクロ (たとえば `${MY_ENV_VAR}`) は、agent の環境変数の値に置き換えられます。
</Note>

<div id="use-the-launch-agent-to-build-images-that-execute-on-accelerators-gpus">
  ## Launch エージェントを使用してアクセラレータ (GPU) 上で実行するイメージをビルドする
</div>

アクセラレータ環境で実行するイメージを Launch でビルドする場合は、アクセラレータ用のベースイメージを指定する必要があることがあります。

このアクセラレータ用ベースイメージは、次の要件を満たしている必要があります。

* Debian との互換性 (Launch の Dockerfile は Python の取得に apt-get を使用します)
* CPU および GPU のハードウェア命令セットとの互換性 (使用予定の GPU がその CUDA バージョンをサポートしていることを確認してください)
* 指定するアクセラレータのバージョンと、ML アルゴリズムにインストールされているパッケージとの互換性
* ハードウェアとの互換性を確保するために追加の設定手順が必要なパッケージがインストールされていること

<div id="how-to-use-gpus-with-tensorflow">
  ### TensorFlow で GPU を使用する方法
</div>

TensorFlow が GPU を正しく利用できるようにします。そのためには、キューのリソース設定で `builder.accelerator.base_image` キーに Docker image とその image tag を指定します。

たとえば、`tensorflow/tensorflow:latest-gpu` をベースイメージに指定すると、TensorFlow で GPU を正しく使用できます。これは、キューのリソース設定で構成できます。

次の JSON スニペットは、キュー設定で TensorFlow のベースイメージを指定する方法を示しています。

```json title="キュー設定" theme={null}
{
    "builder": {
        "accelerator": {
            "base_image": "tensorflow/tensorflow:latest-gpu"
        }
    }
}
```
