メインコンテンツへスキップ
This feature requires a Pro or Enterprise plan.
このページでは、W&B における オートメーション について説明します。 オートメーションを作成 することで、W&B 内のイベントをトリガーとして、モデルの自動テストやデプロイメントなどのワークフローのステップを実行できます。 例えば、オートメーションを使用すると、新しい バージョン が作成されたときに Slack チャンネルに通知したり、アーティファクト に production エイリアス が追加されたときに自動テストの Webhook を実行したり、Run の loss(損失)が許容範囲内に収まったときにのみ検証ジョブを開始したりすることができます。

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

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

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

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

Slack 通知

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

Webhook

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

オートメーションの仕組み

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

制限事項

Run メトリクスオートメーション および Run メトリクス z-score 変化オートメーション は、現在 W&B Multi-tenant Cloud でのみサポートされています。

次のステップ