Launch とは?
Colab で試す
仕組み
Launch は、launch jobs、queues、agents という 3 つの基本的なコンポーネントで構成されています。 launch job は、機械学習ワークフローにおけるタスクの設定と実行のための設計図です。launch job を作成したら、それを launch queue に追加できます。launch queue は先入れ先出し(FIFO)のキューで、Amazon SageMaker や Kubernetes クラスターなどの特定のターゲット計算リソースに対して、ジョブを設定・投入できます。 ジョブがキューに追加されると、launch agents がそのキューをポーリングし、キューによってターゲット指定されたシステム上でジョブを実行します。
開始方法
ユースケースに合わせて、W&B Launch を使い始めるための以下のリソースを確認してください。- 初めて W&B Launch を使用する場合は、Launch ウォークスルー ガイドを確認することをお勧めします。
- W&B Launch のセットアップ方法 を学ぶ。
- launch job を作成する。
- Triton へのデプロイ や LLM の評価 など、一般的なタスクのテンプレートについては、W&B Launch パブリックジョブ GitHub リポジトリ を確認してください。
- このリポジトリから作成された launch jobs は、このパブリックな
wandb/jobsプロジェクト W&B プロジェクトで確認できます。
- このリポジトリから作成された launch jobs は、このパブリックな
ウォークスルー
このページでは、W&B Launch ワークフローの基本について順を追って説明します。W&B Launch は、コンテナ内で機械学習のワークロードを実行します。コンテナに精通している必要はありませんが、このウォークスルーを進める上で役立つ場合があります。コンテナの入門については、Docker ドキュメント を参照してください。
前提条件
開始する前に、以下の前提条件を満たしていることを確認してください。- https://wandb.ai/site でアカウントを登録し、W&B アカウントにログインします。
- このウォークスルーでは、Docker CLI とエンジンが動作するマシンへのターミナルアクセスが必要です。詳細は Docker インストールガイド を参照してください。
- W&B Python SDK バージョン
0.17.1以上をインストールします。 - ターミナル内で
wandb loginを実行するか、WANDB_API_KEY環境変数を設定して、W&B の認証を行います。
- W&B にログイン
- 環境変数
ターミナル内で以下を実行します。
launch job の作成
launch job は、Docker イメージを使用する、git リポジトリから、またはローカルのソースコードからという 3 つの方法のいずれかで作成できます。- Docker イメージを使用する
- git リポジトリから
- ローカルのソースコードから
メッセージを W&B にログ出力するビルド済みのコンテナを実行するには、ターミナルを開いて次のコマンドを実行します。上記のコマンドは、コンテナイメージ
wandb/job_hello_world:main をダウンロードして実行します。Launch は、wandb でログ記録されたすべての内容を launch-quickstart プロジェクトにレポートするようにコンテナを設定します。コンテナはメッセージを W&B にログ出力し、W&B 内に新しく作成された Run へのリンクを表示します。リンクをクリックして W&B UI で Run を確認してください。キューの作成
Launch は、チームが共有の計算リソースを中心にワークフローを構築できるように設計されています。これまでの例では、wandb launch コマンドはローカルマシン上で同期的にコンテナを実行してきました。Launch queues と agents を利用することで、共有リソース上でのジョブの非同期実行や、優先順位付け、ハイパーパラメーター最適化などの高度な機能が可能になります。基本的なキューを作成するには、以下の手順に従ってください。
- wandb.ai/launch に移動し、Create a queue ボタンをクリックします。
- キューを関連付ける Entity を選択します。
- Queue name を入力します。
- Resource として Docker を選択します。
- Configuration は、とりあえず空欄のままにしておきます。
- Create queue :rocket: をクリックします。

エージェントをキューに接続する
キューにポーリング中のエージェントがいない場合、キュービューの上部にある赤いバナーに Add an agent ボタンが表示されます。このボタンをクリックして、エージェントを実行するためのコマンドをコピーします。コマンドは以下のようになります:wandb launch コマンドがローカルで実行されたときと同様にジョブを実行します。
Launch ページ に戻り、キューが Active と表示されていることを確認してください。
キューにジョブを投入する
W&B アカウントの新しい launch-quickstart プロジェクトに移動し、画面左側のナビゲーションから jobs タブを開きます。 Jobs ページには、以前に実行された Runs から作成された W&B Jobs のリストが表示されます。launch job をクリックして、ソースコード、依存関係、およびそのジョブから作成された Runs を確認します。このウォークスルーを完了すると、リストには 3 つのジョブがあるはずです。 新しいジョブの 1 つを選択し、以下の手順に従ってキューに投入します。- Launch ボタンをクリックして、ジョブをキューに投入します。Launch ドロワーが表示されます。
- 先ほど作成した Queue を選択し、Launch をクリックします。
wandb launch コマンドに --queue 引数を指定することで、ジョブを直接キューにプッシュすることもできます。例えば、hello-world コンテナジョブをキューに投入するには、次のコマンドを実行します。