メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://wb-21fd5541-style-guide-support-models-articles-20260527-00.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Launch とは

Colabで試す

このチュートリアルでは、ML の実務担当者やプラットフォームチームに W&B Launch を紹介し、launch ジョブ の作成、キューの設定、エージェントの接続、ジョブの送信までを順を追って説明します。このチュートリアルを終える頃には、W&B Launch を通じてコンテナー化された ML ワークロードを実行し、チームで再利用できる稼働中のキューとエージェントを用意できます。 W&B Launch を使用すると、デスクトップから Amazon SageMaker や Kubernetes などのコンピュートリソースへ、トレーニング Runs をスケールできます。Launch を設定すると、数回のクリックとコマンドだけで、トレーニングスクリプトの実行、モデルの評価スイートの実行、本番推論に向けたモデルの準備などを行えます。

仕組み

Launch は、launch ジョブキューエージェント の 3 つの基本コンポーネントで構成されています。 launch ジョブ は、ML ワークフローでタスクを設定して実行するための設計図です。launch ジョブ を作成したら、それを launch キュー に追加できます。launch キュー は先入れ先出し (FIFO) 方式のキューで、Amazon SageMaker や Kubernetes クラスターなどの特定のコンピュートターゲットリソース向けにジョブを設定し、送信できます。 ジョブがキューに追加されると、launch エージェント がそのキューをポーリングし、キューのターゲットとなるシステム上でジョブを実行します。
W&B Launch の概要図
ユースケースに応じて、あなた (またはチームのメンバー) が、選択した compute resource target (たとえば Amazon SageMaker) に合わせて launch キュー を設定し、自身のインフラストラクチャーに launch エージェント をデプロイします。 Launch の詳細については、Terms and concepts ページを参照してください。

使い始める

ユースケースに応じて、W&B Launch を使い始める際に役立つ以下のリソースをご覧ください。

ウォークスルー

このページでは、W&B Launch ワークフローの基本を順を追って説明します。
W&B Launch は、機械学習のワークロードをコンテナーで実行します。コンテナーに関する知識は必須ではありませんが、このウォークスルーを進めるうえで役立つ場合があります。コンテナーの概要については、Docker ドキュメントを参照してください。

前提条件

開始する前に、以下の前提条件を満たしていることを確認してください。これらは、この手順の後半でコマンドを実行するために必要なアカウント、ツール、および認証に関するものです。
  1. https://wandb.ai/site でアカウントを作成し、その後 W&B アカウントにログインします。
  2. この手順では、Docker CLI と Docker Engine が動作するマシンにターミナルからアクセスできる必要があります。詳細は、Docker installation guide を参照してください。
  3. W&B Python SDK バージョン 0.17.1 以降をインストールします。
    pip install wandb>=0.17.1
    
  4. ターミナルで wandb login を実行するか、WANDB_API_KEY 環境変数を設定して W&B に認証します。
ターミナルで次を実行します。
wandb login

launch job を作成する

launch job は、Launch に実行させたいワークロードの設計図です。そのため、作業をキューに送信する前に launch job を作成する必要があります。launch job は、Docker image を使用する方法、git repository から作成する方法、またはローカルのソースコードから作成する方法の 3 つで作成できます。
W&B にメッセージをログする、あらかじめ用意されたコンテナーを実行するには、ターミナルを開いて次のコマンドを実行します。
wandb launch --docker-image wandb/job_hello_world:main --project launch-quickstart
このコマンドは、コンテナーイメージ wandb/job_hello_world:main をダウンロードして実行します。Launch は、wandb でログされたすべての内容が launch-quickstart project に送信されるようにコンテナーを設定します。コンテナーは W&B にメッセージをログし、W&B 内の run へのリンクを表示します。リンクをクリックすると、W&B UI で run を確認できます。

キューを作成する

launch ジョブを用意したら、次のステップは、ジョブをどこでどのように実行するかを定義するキューを作成することです。Launch は、共有コンピュートを中心としたワークフローをチームで構築できるように設計されています。ここまでの例では、wandb launch コマンドはローカルマシン上でコンテナーを同期実行していました。Launch queue とエージェントを使用すると、共有リソース上でジョブを非同期に実行できるほか、優先度設定やハイパーパラメーター最適化などの高度な機能も利用できます。基本的なキューを作成するには、次の手順に従ってください。
  1. wandb.ai/launch にアクセスし、Create a queue ボタンをクリックします。
  2. キューに関連付ける Entity を選択します。
  3. Queue name を入力します。
  4. Resource として Docker を選択します。
  5. Configuration は空白のままにします。
  6. Create queue をクリックします。
ボタンをクリックすると、ブラウザーはキュービューの Agents タブにリダイレクトされます。エージェントがポーリングを開始するまで、キューは Not active 状態のままです。
Docker queue creation
キューの高度な設定オプションについては、advanced queue setup page を参照してください。

エージェントをキューに接続する

キューはエージェントがポーリングするまでアイドル状態のままのため、ジョブを実行するには事前にエージェントを接続する必要があります。キューにポーリング中のエージェントが存在しない場合、キュー view には画面上部の赤いバナーに Add an agent ボタンが表示されます。ボタンをクリックすると、エージェントを実行するためのコマンドを表示してコピーできます。コマンドは次のようになります。
wandb launch-agent --queue [QUEUE-NAME] --entity [ENTITY-NAME]
[QUEUE-NAME] は使用するキューの名前に、[ENTITY-NAME] はご利用の W&B entity に置き換えてください。ターミナルでコマンドを実行して、エージェントを起動します。エージェントは、指定したキューをポーリングして実行するジョブを確認します。ジョブを受信すると、エージェントはそのジョブ用のコンテナーイメージをダウンロードまたはビルドして実行します。これは、ローカルで wandb launch コマンドを実行した場合と同様です。 Launch ページ に戻り、キューが Active と表示されていることを確認してください。

キューにジョブを送信する

キューとポーリング エージェントの準備ができたので、先ほど作成した launch ジョブの 1 つを送信し、共有コンピューティング上で実行される様子を確認できます。W&B アカウントで launch-quickstart project にアクセスし、画面左側のナビゲーションから jobs タブを開きます。 Jobs ページには、以前の run から作成されたジョブの一覧が表示されます。launch ジョブをクリックすると、ソースコード、依存関係、そのジョブから作成された run を確認できます。この walkthrough を完了すると、一覧には 3 つのジョブが表示されます。 ジョブの 1 つを選択し、次の手順に従ってキューに送信します。
  1. Launch ボタンをクリックしてジョブをキューに送信します。Launch ドロワーが表示されます。
  2. 先ほど作成した Queue を選択し、Launch をクリックします。
これでジョブがキューに送信されます。このキューをポーリングしているエージェントがジョブを取得して実行します。ジョブの進行状況は W&B UI で確認するか、ターミナルでエージェントの出力を確認して監視できます。 wandb launch コマンドでは、--queue 引数を指定することでジョブを直接キューにプッシュできます。たとえば、hello-world コンテナー ジョブをキューに送信するには、次のコマンドを実行します。
   wandb launch --docker-image wandb/job_hello_world:main --project launch-quickstart --queue [QUEUE-NAME]
[QUEUE-NAME] はご自身のキュー名に置き換えます。 これで、launch ジョブ、キュー、ポーリング エージェント、共有コンピュート環境で非同期に実行されるジョブを備えた完全な W&B Launch ワークフローが完成しました。このパターンは、独自のトレーニング、評価、推論のワークロードにも再利用できます。