> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-sdk-testing-latest.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# オートメーション の概要

> W&B で発生するイベントに応じてワークフローをトリガーするには、W&B オートメーション を使用します

オートメーション は、**projects** と **レジストリ** の両方で利用できます。オートメーションを作成する場所、使用できるイベント、スコープの仕組みは、それぞれ異なります。スコープごとのイベントタイプについては、[Automation events and scopes](/ja/models/automations/automation-events) を参照してください。

W\&B Automations は、**イベント**が発生し、必要に応じて**条件**が満たされると、**アクション**が自動的に実行されるというパターンに従います。たとえば、次のようになります。

* run が失敗したとき (イベント) 、Slack チャンネルに通知する (アクション) 。
  <TutorialDiagramProject />
* artifact に `production` エイリアスが追加されたとき (イベント) 、デプロイをトリガーするために webhook を呼び出す (アクション) 。
  <TutorialDiagramRegistry />

イベントと使用可能な条件は、[project](/ja/models/automations/automation-events#project) または [Registry](/ja/models/automations/automation-events#registry) をスコープとするオートメーションによって異なります。[Automation events and scopes](/ja/models/automations/automation-events) を参照してください。

```mermaid theme={null}
flowchart LR
  Event[イベント] --> Condition[条件]
  Condition --> Action[アクション]
```

**例:** run が失敗した (イベント) 場合に、必要に応じて run 名フィルター (条件) を指定し、Slack 通知 (アクション) を送信します。別の例: alias `production` が追加された (イベント) 場合に、webhook (アクション) を実行します。

<div id="where-to-create-automations">
  ## オートメーションを作成できる場所
</div>

* **project 内**: project を開き、プロジェクトのサイドバーで **Automations** タブを選択します。
* **Registry 内**: Registry を開き、**Automations** タブを選択します。

<div id="use-cases">
  ## 使用例
</div>

* **run の監視とアラート**: run が失敗したときや、メトリクスがしきい値を超えたとき (たとえば、損失が NaN になる、または精度が低下する場合) にチームに通知します。
* **Registry CI/CD**: 新しいモデル バージョンがリンクされたとき、または alias (`staging` や `production` など) が追加されたときに、webhook をトリガーしてテストを実行したり、デプロイしたりします。
* **project の artifact ワークフロー**: 新しい artifact バージョンが作成されたとき、または project に alias が追加されたときに、後続のジョブを実行したり、Slack に投稿したりします。

イベントとスコープの詳細については、[Automation events and scopes](/ja/models/automations/automation-events) を参照してください。

<div id="automation-actions">
  ## オートメーションアクション
</div>

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

* **Slack 通知**: トリガーとなったイベントの詳細を含むメッセージを Slack チャンネルに送信します。メッセージにはイベントの概要と、W\&B で詳細を確認するためのリンクが含まれます。
* **Webhook**: トリガーとなったイベントに関する情報を含む JSON ペイロードを使用して Webhook URL を呼び出します。Webhook を使用して、CI/CD パイプライン、モデル デプロイ サービス、カスタム ワークフローなどの外部システムと統合します。

実装の詳細については、[Slack オートメーションの作成](/ja/models/automations/create-automations/slack) および [webhook オートメーションの作成](/ja/models/automations/create-automations/webhook) を参照してください。

<div id="how-automations-work">
  ## オートメーションの動作
</div>

[オートメーションを作成](/ja/models/automations/create-automations)するには、次の手順を行います。

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

<div id="recommendations">
  ## 推奨事項
</div>

* **小さく始める**: 価値の高いイベント (たとえば、run の失敗や本番 alias の変更) に対する 1 ～ 2 個のオートメーションから始めます。さらに追加する前に、想定どおりに動作することを確認してください。
* **本番導入前にテストする**: まずはテスト用の project、またはテスト用の webhook や Slack チャンネルでオートメーションを作成します。イベントを手動でトリガーし、その後、アクションが実行され、ペイロードやメッセージの内容が正しいことを確認してください。
* **アラート疲れを避ける**: run フィルター、メトリクスのしきい値、または alias パターンを使用して、オートメーションが実行される頻度を制限します。重大度が複数ある場合は、それぞれを別のチャンネルに振り分けてください。

<div id="limitations">
  ## 制限事項
</div>

[run メトリクス Automations](/ja/models/automations/automation-events/#run-metrics-events) と [run メトリクスの z-score 変化 Automations](/ja/models/automations/automation-events/#run-metrics-z-score-change-automations) は、現在 [W\&B Multi-tenant Cloud](/ja/platform/hosting/#wb-multi-tenant-cloud) でのみサポートされています。

<div id="next-steps">
  ## 次のステップ
</div>

* [オートメーションのチュートリアル](/ja/models/automations/tutorial): run の失敗を通知する project オートメーションと、alias が追加されたときに webhook を実行する Registry オートメーションの作成方法を案内します。このチュートリアルでは W\&B App を使用します。
* [オートメーションを作成](/ja/models/automations/create-automations)。
* [オートメーションのイベントとスコープ](/ja/models/automations/automation-events)。
* [シークレットを作成](/ja/platform/secrets)。

<Info>
  オートメーションに関する関連チュートリアルをお探しですか？

  * [モデルの評価とデプロイのために GitHub Action を自動でトリガーする方法を学ぶ](https://wandb.ai/wandb/wandb-model-cicd/reports/Model-CI-CD-with-W-B--Vmlldzo0OTcwNDQw).
  * [モデルを SageMaker エンドポイントに自動デプロイするデモ動画を見る](https://www.youtube.com/watch?v=s5CMj_w3DaQ).
  * [オートメーションを紹介する動画シリーズを見る](https://youtube.com/playlist?list=PLD80i8An1OEGECFPgY-HPCNjXgGu-qGO6\&feature=shared).
</Info>
