会話エージェント(Dialogflow CX)エージェントは、エンドユーザーとの同時会話を処理する仮想エージェントです。これは、人間の言語のニュアンスを理解する自然言語理解モジュールです。会話エージェント(Dialogflow CX)は会話中のエンドユーザーのテキストまたは音声を、アプリやサービスが理解できる構造化データに変換します。会話エージェント(Dialogflow CX)エージェントは、システムに必要な種類の会話が処理されるように設計および構築されます。
会話エージェント(Dialogflow CX)エージェントは、コールセンターの担当者と似ています。予想される会話のシナリオに対処するためにトレーニングを行ってください。ただし、トレーニングを過度に行う必要はありません。
エージェントを作成する
エージェントを作成する手順は次のとおりです。
コンソール
- Dialogflow CX Console を開きます。
- Google Cloud プロジェクトを作成または選択します。
- [Create Agent(エージェントを作成)] をクリックします。
- 自動生成を選択してデータストア エージェントを作成するか、[独自に構築] を選択して他の種類のエージェントを作成します。
- 基本的なエージェント設定に関するフォームに入力します。
- [保存] をクリックします。
API
プロジェクトのロケーション設定をまだ構成していない場合は、API を使用してエージェントを作成する前に、コンソールでこれらの設定を行う必要があります。現在、API を使用してロケーションの設定を行うことはできません。
エージェントを作成するには、Agent
型の create
メソッドをご覧ください。
エージェント リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | エージェント リソース | エージェント リソース |
RPC | エージェント インターフェース | エージェント インターフェース |
C++ | AgentsClient | 利用できません |
C# | AgentsClient | 利用できません |
Go | AgentsClient | 利用できません |
Java | AgentsClient | AgentsClient |
Node.js | AgentsClient | AgentsClient |
PHP | 利用不可 | 利用できません |
Python | AgentsClient | AgentsClient |
Ruby | 利用不可 | 利用できません |
エージェントのデータ
会話エージェント(Dialogflow CX)エージェントは、仮想エージェントの設定とデータの最上位コンテナとして機能します。
エージェントのデータにアクセスする手順は次のとおりです。
コンソール
- Dialogflow CX Console を開きます。
- エージェント用の Google Cloud プロジェクトを選択します。
- リストでエージェントを見つけます。
- エージェントの表示名をクリックします。
- 他のガイドの説明に従ってフローやページなどを更新します。
API
更新するデータのガイドをご覧ください。
次のデータはエージェントに関連付けられています。
さまざまなレベルでデータがどのように適用されるかについては、データ アプリケーション レベルをご覧ください。
エージェントの設定
エージェントの構成にアクセスするには、以下の手順に従います。
コンソール
- Dialogflow CX Console を開きます。
- ご自身の Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [エージェント設定] をクリックします。
- 必要に応じて設定を更新します。
- [保存] をクリックします。
API
Agent
型の get
メソッドと patch/update
メソッドをご覧ください。
エージェント リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | エージェント リソース | エージェント リソース |
RPC | エージェント インターフェース | エージェント インターフェース |
C++ | AgentsClient | 利用できません |
C# | AgentsClient | 利用できません |
Go | AgentsClient | 利用できません |
Java | AgentsClient | AgentsClient |
Node.js | AgentsClient | AgentsClient |
PHP | 利用不可 | 利用できません |
Python | AgentsClient | AgentsClient |
Ruby | 利用不可 | 利用できません |
以下では、エージェント設定の各カテゴリについて説明します。
全般設定
エージェントでは次の全般設定を使用できます。
-
人間が読み取れる形式のエージェントの名前。
-
エージェントのデフォルトのタイムゾーン。
-
エージェントがサポートするデフォルトの言語。 エージェントの作成後に、デフォルトの言語を変更することはできません。ただし、次のことはできます。
-
エージェントをロックする
エージェントがロックされているかどうかを示します。ロックされたエージェントは編集できません。
-
Cloud Logging を有効にする
エージェントで Cloud Logging が有効になっているかどうかを示します。
インタラクションのロギングを有効にする
品質向上のために秘匿化済みエンドユーザー クエリを収集して保存するかどうかを指定します。
同意に基づくエンドユーザー入力の秘匿化を有効にする
この設定を有効にすると、特別なセッション パラメータを使用して、会話履歴と Cloud Loggingからのエンドユーザー入力とパラメータを秘匿化するかどうかを制御できます。デフォルトでは、セッション パラメータは
true
です。この設定が無効になっている場合、秘匿化は行われません。ユーザーの同意は、ブール値のセッション パラメータ
$session.params.conversation-redaction
を使用して収集されます。この設定が有効になっていて、セッション パラメータがfalse
に設定されている場合、秘匿化は行われません(他の秘匿化戦略は引き続き適用されます)。この設定が有効になっていて、セッション パラメータがtrue
に設定されている場合、秘匿化は行われます。同意を求める流れの例を挙げると、まずエンドユーザー入力を保持するかどうかをユーザーに尋ねて、そのレスポンスを 2 つのインテントと照合します。1 つ目は「はいのインテント」、もう 1 つは「いいえのインテント」です。次に、フルフィルメントの「はいのインテント」のルートにあるパラメータ プリセットで、セッション パラメータを
false
(秘匿化しない)に設定します。また、「いいえのインテント」のルートにあるパラメータ プリセットで、セッション パラメータをtrue
(秘匿化する)に設定します。
-
BigQuery エクスポートを有効にする
BigQuery Export が有効になっているかどうかを示します。
BigQuery データセット
BigQuery データセット名。
BigQuery テーブル
BigQuery テーブル名。
-
インテントの候補を有効にできます。
-
このセクションでは、カスタム ペイロード テンプレートの説明とペイロードを作成できます。
ML の設定
会話エージェント(Dialogflow CX)は、機械学習(ML)アルゴリズムを使用して、エンドユーザー入力を理解し、インテントと照合して、構造化データを抽出します。会話エージェント(Dialogflow CX)は、ユーザーが提供するトレーニング フレーズと、会話エージェント(Dialogflow CX)に組み込まれた言語モデルから学習します。このデータに基づいて、エンドユーザー入力と照合するインテントを決定するモデルを構築します。エージェントのフローごとに一意の ML 設定を適用できます。会話エージェント(Dialogflow CX)によって作成されたモデルは、フローごとに一意です。
次のエージェント全体の ML 設定が使用できます。
-
これを有効にすると、エンドユーザーの入力にスペルミスや文法ミスがあっても、入力が正しく記述されているものとしてインテントと照合されます。インテント検出レスポンスには、修正済みのエンドユーザー入力が含まれます。たとえば、エンドユーザーが「I want an applle」と入力した場合、「I want an apple」と入力したかのように処理されます。これは、システム エンティティとカスタム エンティティの両方を含むマッチングにも当てはまります。
スペル修正は、英語、フランス語、ドイツ語、スペイン語、イタリア語で利用できます。すべての会話エージェント(Dialogflow CX)のリージョンで利用できます。
警告とおすすめの方法:
次のフロー固有の ML 設定が利用できます。
-
次のいずれかになります。
- 高度な NLU(デフォルト): 高度な NLU 技術。この NLU タイプは、特に大規模なエージェントとフローでは標準より優れています。
- 標準 NLU: 標準的な NLU 技術。今後、品質の改善や新機能は提供されなくなります。
-
有効にすると、フローがコンソールで更新されるたびにトレーニングされます。フローが大きい場合、コンソール UI の遅延の原因となることがあります。その場合はこの設定を無効にし、必要に応じて大規模なフロー用に手動でトレーニングする必要があります。
-
結果から偽陽性を除外した後でも、多様な自然言語入力との一致に基づいてエージェントが応答できるように、ML の分類しきい値を調整できます。この設定は、インテントの一致に必要なインテント検出の信頼度を制御します。
インテント一致の信頼スコアがしきい値より小さい場合は、no-match イベントが呼び出されます。
エージェントで有効になっている各言語のフローごとに個別の分類しきい値を設定できます。これは、さまざまな分類しきい値で最高のパフォーマンスを発揮するさまざまな言語に対応するためです。多言語エージェントの作成の詳細については、多言語エージェントに関するドキュメントをご覧ください。
-
フローデータの最新更新以降にフローがトレーニングされたかどうかを示します。
-
フローを手動でトレーニングする場合は、このボタンを使用します。
生成 AI の設定
次の生成 AI 設定が利用できます。
全般
-
生成 AI で禁止されているフレーズのリスト。禁止されたフレーズがプロンプトまたは生成されたレスポンスにある場合、生成は失敗します。
-
責任ある AI(RAI)の各カテゴリに対して安全フィルタの感度レベルを構成します。コンテンツは、次の 4 つのカテゴリで評価されます。
カテゴリ 説明 ヘイトスピーチ ID や保護されている属性をターゲットとする否定的なコメントや有害なコメント。 危険なコンテンツ 有害な商品、サービス、アクティビティへのアクセスを促進または可能にする 性的描写が露骨なコンテンツ 性行為やわいせつな内容に関する情報が含まれるコンテンツ 嫌がらせ 他人をターゲットにした悪口、威圧表現、いじめ、虐待的な内容を含むコメント コンテンツは有害である可能性に基づいてブロックされます。 各カテゴリの感度レベルは、[少量をブロック]、[一部をブロック]、[ほとんどをブロック] のいずれかを選択してカスタマイズできます。また、[ブロックなし] の制限付きオプションにアクセスして、プロジェクトに対してリスク確認応答リクエストを送信して承認を受けた後、カテゴリの RAI チェックを無効にすることもできます。
詳細については、安全性属性を構成するをご覧ください。
-
[プロンプトによるセキュリティ チェックを有効にする] 設定をオンにすると、プロンプトによるセキュリティ チェックを有効にできます。有効にすると、エージェントはプロンプト インジェクション攻撃を防ぐよう試みます。これらの攻撃は、エージェント プロンプトの一部を明らかにしたり、エージェントが提供すべきでないレスポンスを提供したりするために使用される場合があります。これは、ユーザーのクエリが悪意のあるものであるかどうかを確認する追加の LLM プロンプトを送信することで実現されます。
この設定は、新しいエージェントに対してはデフォルトで有効になっています。この設定のリリース前にエージェントが作成された場合、この設定は有効になりません。
-
生成エージェント
-
生成機能で使用するモデルを選択します。詳細については、モデルのバージョンをご覧ください。
-
生成フォールバック
-
生成フォールバック: 独自のプロンプトを定義するをご覧ください。
-
データストア
データストア エージェントの設定をご覧ください。
音声と IVR の設定
次の音声設定と IVR 設定を使用できます。
-
-
音声合成に使用する言語と音声を選択できます。
音声選択ドロップボックスからカスタム音声オプションを選択し、対応するフィールドにカスタム音声名を指定することで、エージェントのカスタム音声を有効にできます。カスタム音声名は、
projects/PROJECT_ID/locations/LOCATION/models/MODEL_NAME
のパターンに従う必要があります。- テレフォニー ゲートウェイを使用している場合は、Dialogflow サービス エージェントのサービス アカウント
service-PROJECT_NUMBER@gcp-sa-dialogflow.iam.gserviceaccount.com
にカスタム音声プロジェクトにおける「AutoML Predictor」が付与されていることを確認します。 - 通常の API 呼び出しの場合は、会話エージェント(Dialogflow CX)の呼び出しに使用するサービス アカウントに、カスタム音声プロジェクトにおける「AutoML Predictor」ロールが付与されていることを確認します。
- テレフォニー ゲートウェイを使用している場合は、Dialogflow サービス エージェントのサービス アカウント
-
DTMF
詳細については、テレフォニー統合用の DTMF をご覧ください。
マルチモーダル
コンパニオンの呼び出しをご覧ください。
共有設定
アクセス制御をご覧ください。
言語設定
エージェントに追加の言語サポートを追加します。全言語の一覧については、言語リファレンスをご覧ください。
言語の自動検出
言語の自動検出を構成すると、チャット エージェントはエンドユーザーの言語を自動的に検出し、その言語に切り替えます。詳しくは、言語の自動検出に関するドキュメントをご覧ください。
セキュリティ設定
セキュリティ設定をご覧ください。
詳細設定
現在、詳細設定は感情分析でのみ利用できます。
エージェントのエクスポートと復元
エージェントをファイルにエクスポートすることや、そのファイルを使用してエージェントを復元することができます。
エージェント エクスポートには、以下を除くすべてのエージェント データが含まれます。
エージェントを復元すると、以下を除くすべてのターゲット エージェント データが上書きされます(すべてのフロー バージョンを含む)。
- 環境: ターゲット エージェントでは、すべてのカスタム環境が変更されずに残ります。ターゲット エージェント内のカスタム環境が参照するフロー バージョンは、関連する環境が存在する限り存続します。ただし、これらの古いフロー バージョンは、エージェントに関して表示されず、選択可能なフロー バージョンではありません。
- Vertex AI エージェント アプリ: Vertex AI エージェント アプリへの関連付けは、ターゲット エージェントで変更されません。(つまり、GenAppBuilderSettings の
engine
の値)これは、データストア エージェントを他の既存のデータストア エージェントにのみ復元できることを意味します。結果として得られるエージェントが、Vertex AI Agents アプリに関連付けられている必要があるためです。 Vertex AI Agents データストア: 次のルールに従って、データストアへのすべての参照がターゲット エージェントで上書きされます。
- ターゲット エージェントがアプリに関連付けられていない場合は、データストアを参照しているエージェントを復元できません。これを行おうとすると、エラー メッセージが表示されます。この問題を修正するには、ゼロから新しいデータストア エージェントを作成します。(または、データストアの状態ハンドラを追加することで、既存のエージェントをデータストア エージェントに変えることができます。この場合は、関連付けられているアプリをエージェントに追加する手順が表示されます)。
- ターゲット エージェントがアプリに関連付けられている場合、すべてのデータストア参照は復元時に更新されます。Google Cloud プロジェクト ID と場所は、ターゲット エージェントのアプリと一致するように更新されます。コレクション ID とデータストア ID は変更されません。つまり、復元オペレーションの前に、一致するタイプのすべての ID のデータストアをターゲット エージェントのアプリに追加する必要があります。
例: ソース エージェントが
projects/123/locations/eu-west2/collections/default_collection/dataStores/myDataStore1
というデータストアを参照し、ターゲット エージェントのアプリの名前がprojects/321/locations/us-east1/collections/default_collections/engines/app123
の場合、ターゲット エージェントの結果のデータストア参照はprojects/321/locations/us-east1/collections/default_collection/dataStores/myDataStore1
になります。
エクスポートするときは、エクスポートのファイル形式を選択できます。エージェント データに対してソース管理バージョニングを使用している場合は、JSON 形式でエクスポートする必要があります。エージェントを復元すると、会話エージェント(Dialogflow CX)によってファイル形式が自動的に決定されます。
エージェントをエクスポートまたは復元するには、以下の手順に従います。
コンソール
- Dialogflow CX Console を開きます。
- エージェント用の Google Cloud プロジェクトを選択します。
- リスト内のエージェントのオプション メニュー more_vert をクリックします。
- [エクスポート] または [復元] ボタンをクリックします。
- 手順に沿って操作して完了します。
API
Agent
型の export
メソッドと restore
メソッドをご覧ください。
エージェント リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | エージェント リソース | エージェント リソース |
RPC | エージェント インターフェース | エージェント インターフェース |
C++ | AgentsClient | 利用できません |
C# | AgentsClient | 利用できません |
Go | AgentsClient | 利用できません |
Java | AgentsClient | AgentsClient |
Node.js | AgentsClient | AgentsClient |
PHP | 利用不可 | 利用できません |
Python | AgentsClient | AgentsClient |
Ruby | 利用不可 | 利用できません |
エージェントのサイズが上限を超える場合は、エージェントのエクスポートと復元用に Cloud Storage オプションを使用します。
GitHub を使用している場合は、GitHub エクスポート / 復元ガイドもご覧ください。
エージェントを削除する
エージェントを削除するには、完全アクセス権か、編集権限を持つロールが必要です。詳しくは、アクセス制御ガイドをご覧ください。
エージェントを削除するには:
コンソール
- Dialogflow CX Console を開きます。
- エージェント用の Google Cloud プロジェクトを選択します。
- リスト内のエージェントのオプション メニュー more_vert をクリックします。
- [delete削除] ボタンをクリックします。
- ダイアログで削除を確定します。
API
Agent
型の delete
メソッドをご覧ください。
エージェント リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | エージェント リソース | エージェント リソース |
RPC | エージェント インターフェース | エージェント インターフェース |
C++ | AgentsClient | 利用できません |
C# | AgentsClient | 利用できません |
Go | AgentsClient | 利用できません |
Java | AgentsClient | AgentsClient |
Node.js | AgentsClient | AgentsClient |
PHP | 利用不可 | 利用できません |
Python | AgentsClient | AgentsClient |
Ruby | 利用不可 | 利用できません |
プロジェクトを削除する場合、プロジェクトに関連するすべての会話エージェント(Dialogflow CX)エージェントとデータが直ちに削除されます。