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

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

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

自動化アクション

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

Slack 通知

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

Webhook

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

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

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

制限事項

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

次のステップ