メインコンテンツへスキップ
この機能の利用には、Pro または Enterprise プランが必要です。
このページでは、W&B のオートメーションについて説明します。オートメーションを作成すると、W&B 内のイベントをきっかけに、自動化されたモデルテストやデプロイなどのワークフローの step をトリガーできます。 たとえば、オートメーションを使うと、新しいバージョンが作成されたときに Slack チャンネルへ通知したり、production エイリアスが artifact に追加されたときに自動テスト用 webhook をトリガーしたり、run の 損失 が許容範囲内にある場合にのみ検証ジョブを開始したりできます。

オートメーションイベント

オートメーションは、コレクション、プロジェクト、またはレジストリ内の run や artifact に関連するイベントによってトリガーされます。オートメーションは次の場合に開始できます。
  • run のメトリクスが、定義された絶対または相対しきい値を満たしたとき。たとえば、run の loss が 0.01 未満になったときや、run の accuracy が 5% 向上したときにトリガーします。
  • run の z-score (標準スコア) が、平均から指定した量だけ乖離したとき。z-score が 0 の場合、結果が平均と一致していることを示します。z-score が +2 の場合、結果が平均より 2 標準偏差高いことを意味し、z-score が -2 の場合、結果が平均より 2 標準偏差低いことを意味します。
  • プロジェクトまたはレジストリでイベントが発生したとき。たとえば、モデル artifact の新しいバージョンが作成されたときや、production エイリアスがモデル artifact に追加されたときにトリガーします。
詳細については、オートメーションイベントとスコープを参照してください。

オートメーションアクション

イベントによってオートメーションがトリガーされると、次のいずれかのアクションを実行できます。

Slack 通知

トリガーされたイベントの詳細を含むメッセージを Slack チャンネルに送信します。メッセージにはイベントの概要と、W&B で詳細を確認するためのリンクが含まれます。

ウェブフック

トリガーとなったイベントに関する情報を含む JSON ペイロードを使って、ウェブフック URL を呼び出します。これにより、CI/CD パイプライン、モデルのデプロイサービス、カスタムワークフローなどの外部システムとのインテグレーションが可能になります。ウェブフック リクエストの本文には、JSON にシリアライズ可能な任意のペイロードを指定できます。 実装の詳細については、以下を参照してください。

オートメーションの動作

オートメーションを作成するには、次の手順を行います。
  1. 必要に応じて、アクセストークン、パスワード、機密性の高い設定の詳細など、オートメーションで必要になる機密文字列のためにシークレットを設定します。シークレットは Team Settings で定義します。シークレットは、主にウェブフック オートメーションで、認証情報やトークンを平文で公開したり ウェブフック のペイロードにハードコードしたりすることなく、ウェブフック の外部サービスに安全に渡すために使用されます。
  2. チームレベルのウェブフック または Slack インテグレーションを設定して、W&B が Slack に投稿したり、ユーザーに代わって ウェブフック を実行したりできるようにします。1 つのオートメーションアクション (ウェブフック または Slack 通知) を複数のオートメーションで使用できます。これらのアクションは Team Settings で定義します。
  3. プロジェクトまたは レジストリ で、オートメーションを作成します。
    1. 監視するイベントを定義します。たとえば、新しい artifact バージョンが追加されたときです。
    2. イベント発生時に実行するアクション (Slack チャンネルへの投稿や ウェブフック の実行) を定義します。ウェブフック の場合は、必要に応じて、アクセストークンに使用するシークレットや、ペイロードとともに送信するシークレットを指定します。

制限事項

run メトリクス Automationsrun メトリクスの z-score 変化 Automations は、現在 W&B Multi-tenant Cloud でのみサポートされています。

次のステップ