場合によっては、Dialogflow CX を使用するには、複数の Google Cloud プロジェクトを作成する必要があります。
- 認証や割り当て、 課金のためのプロジェクトと エージェント データ用のプロジェクトを別途作成すると便利です。
- 各プロジェクトにはリージョンごとに最大 1 つのエージェントが 存在します。同一のリージョンに複数のエージェントが必要な場合は、複数のプロジェクトが必要です。
コンシューマ プロジェクトとリソース プロジェクト
API を呼び出すときは、通常、認証用のサービス アカウントキーを指定します。各サービス アカウントは特定のプロジェクトが所有していますが、サービス アカウントは他のプロジェクトのリソースにアクセスする役割を与えられる可能性があります。API 呼び出しに指定したサービス アカウントに関連付けられたプロジェクトは、コンシューマ プロジェクトと呼ばれます。
API に呼び出しを行うと、リクエストでエージェントのプロジェクトが指定されます。このプロジェクトはリソース プロジェクトと呼ばれます。
たとえば、次の REST curl リクエストでは、AGENT_ID に関連付けられたプロジェクトはリソース プロジェクトであり、TOKEN の生成に使用されるサービス アカウントに関連付けられたプロジェクトはコンシューマ プロジェクトです。
curl -X GET
-H "Authorization: Bearer TOKEN"
"https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/agent/AGENT_ID"
1 つのプロジェクトが、コンシューマ プロジェクトとリソース プロジェクトの両方の役割を兼ねることができます。エージェント データ、料金、割り当てはこのプロジェクトにのみ関連付けられます。
コンシューマ プロジェクトとリソース プロジェクトが 2 つの異なるプロジェクトの場合、次の表に示すように、API を有効にするための要件、料金、割り当ての 制約、エージェント情報が、プロジェクトのいずれかまたは両方に 適用されます。
| 説明 | コンシューマ プロジェクト(サービス アカウント プロジェクト) | リソース プロジェクト(エージェント プロジェクト) | メモ |
|---|---|---|---|
| 料金が発生するプロジェクト | ✔ | ||
| 割り当てにバインドされているプロジェクト | ✔ | ||
| 体験版または Essentials Dialogflow のエディションを決定するエージェントを含むプロジェクト | ✔ | ユーザー プロジェクトにエージェントがない場合は、空白のエージェントを作成して Essentials エディションにアップグレードします。 | |
| すべてのエージェント データとトライアル版または Essentials Dialogflow エディションを含むプロジェクト | ✔ | ||
| Dialogflow API を有効にする必要があるプロジェクト | ✔ | ✔ | Dialogflow CX API は、両方のプロジェクト タイプで有効にする必要があります。 |
| Cloud コンソールの API ダッシュボードに API の使用状況が表示されるプロジェクト | ✔ |