エージェント

Dialogflow CX エージェントは、エンドユーザーとの同時会話を処理する仮想エージェントです。これは、人間の言語のニュアンスを理解する自然言語理解モジュールです。Dialogflow は、会話中のエンドユーザーのテキストまたは音声をアプリやサービスが理解できる構造化データに変換します。Dialogflow エージェントは、システムに必要な種類の会話が処理されるように設計および構築されます。

Dialogflow エージェントは、人間のコールセンター エージェントに似ています。 予想される会話のシナリオに対処するためにトレーニングを行ってください。ただし、トレーニングを過度に行う必要はありません。

エージェントを作成する

エージェントを作成する手順は次のとおりです。

コンソール

  1. Dialogflow CX Console を開きます。
  2. Google Cloud プロジェクトを作成または選択します。
  3. [Create Agent(エージェントを作成)] をクリックします。
  4. 自動生成を選択してデータストア エージェントを作成するか、[独自に構築] を選択して他の種類のエージェントを作成します。
  5. 基本的なエージェント設定に関するフォームに入力します。
    1. 任意の表示名を選択できます。
    2. お好みのロケーションをお選びください詳細な位置情報の設定を変更する場合は、[編集] ボタンをクリックします。
    3. 使用するタイムゾーンを選択します。
    4. エージェントのデフォルト言語を選択します。 エージェントのデフォルトの言語は、一旦作成されると、変更できません。
  6. [保存] をクリックします。

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 エージェントは、仮想エージェントの設定とデータの最上位コンテナとして機能します。

エージェントのデータにアクセスする手順は次のとおりです。

コンソール

  1. Dialogflow CX Console を開きます。
  2. エージェント用の Google Cloud プロジェクトを選択します。
  3. リストでエージェントを見つけます。
  4. エージェントの表示名をクリックします。
  5. 他のガイドの説明に従ってフローやページなどを更新します。

API

更新するデータのガイドをご覧ください。

次のデータはエージェントに関連付けられています。

さまざまなレベルでデータがどのように適用されるかについては、データ アプリケーション レベルをご覧ください。

エージェントの設定

エージェントの構成にアクセスするには、以下の手順に従います。

コンソール

  1. Dialogflow CX Console を開きます。
  2. ご自身の Google Cloud プロジェクトを選択します。
  3. エージェントを選択します。
  4. [エージェント設定] をクリックします。
  5. 必要に応じて設定を更新します。
  6. [保存] をクリックします。

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 利用不可 利用できません

以下では、エージェント設定の各カテゴリについて説明します。

全般設定

エージェントでは次の全般設定を使用できます。

  • 表示名

    人間が読み取れる形式のエージェントの名前。

  • タイムゾーン

    エージェントのデフォルトのタイムゾーン。

  • デフォルトの言語

    エージェントがサポートするデフォルトの言語。 エージェントの作成後に、デフォルトの言語を変更することはできません。ただし、次のことはできます。

    1. エージェントを JSON 形式エクスポートします。
    2. ダウンロードしたファイルを解凍します。
    3. agent.json ファイルを見つけます。
    4. defaultLanguageCode フィールドと supportedLanguageCodes フィールドを必要な値に更新します。
    5. ステップ 1 と同じエージェントまたは別のエージェントにエージェントを復元します。
    6. 必要に応じて、言語固有のトレーニング フレーズとエンティティ値を更新します。
  • エージェント ロック

    • エージェントをロックする

      エージェントがロックされているかどうかを示します。ロックされたエージェントは編集できません。

  • ロギングの設定

    • Cloud Logging を有効にする

      エージェントで Cloud Logging が有効になっているかどうかを示します。

    • インタラクションのロギングを有効にする

      品質向上のために秘匿化済みエンドユーザー クエリを収集して保存するかどうかを指定します。

    • 同意に基づくエンドユーザー入力の秘匿化を有効にする

      この設定を有効にすると、特別なセッション パラメータを使用して、会話履歴Cloud Loggingからのエンドユーザー入力とパラメータを秘匿化するかどうかを制御できます。デフォルトでは、セッション パラメータは true です。この設定が無効になっている場合、秘匿化は行われません。

      ユーザーの同意は、ブール値のセッション パラメータ $session.params.conversation-redaction を使用して収集されます。この設定が有効になっていて、セッション パラメータが false に設定されている場合、秘匿化は行われません(他の秘匿化戦略は引き続き適用されます)。この設定が有効になっていて、セッション パラメータが true に設定されている場合、秘匿化は行われます。

      同意を求める流れの例を挙げると、まずエンドユーザー入力を保持するかどうかをユーザーに尋ねて、そのレスポンスを 2 つのインテントと照合します。1 つ目は「はいのインテント」、もう 1 つは「いいえのインテント」です。次に、フルフィルメントの「はいのインテント」のルートにあるパラメータ プリセットで、セッション パラメータを false(秘匿化しない)に設定します。また、「いいえのインテント」のルートにあるパラメータ プリセットで、セッション パラメータを true(秘匿化する)に設定します。

  • BigQuery へのエクスポート

    • BigQuery エクスポートを有効にする

      BigQuery Export が有効になっているかどうかを示します。

    • BigQuery データセット

      BigQuery データセット名。

    • BigQuery テーブル

      BigQuery テーブル名。

  • インテントの候補

    インテントの候補を有効にできます。

  • カスタム ペイロード テンプレート

    このセクションでは、カスタム ペイロード テンプレートの説明とペイロードを作成できます。

ML の設定

Dialogflow は、機械学習(ML)アルゴリズムを使用して、エンドユーザー入力を理解し、インテントと照合して、構造化データを抽出します。Dialogflow は、ユーザーが提供するトレーニング フレーズと、Dialogflow に組み込まれた言語モデルから学習します。このデータに基づいて、エンドユーザー入力と照合するインテントを決定するモデルを構築します。エージェントのフローごとに一意の ML 設定を適用できます。Dialogflow によって作成されたモデルは、フローごとに一意です。

次のエージェント全体の ML 設定が使用できます。

  • ML にスペルの修正を許可する

    これを有効にすると、エンドユーザーの入力にスペルミスや文法ミスがあっても、入力が正しく記述されているものとしてインテントと照合されます。インテント検出レスポンスには、修正済みのエンドユーザー入力が含まれます。たとえば、エンドユーザーが「I want an applle」と入力した場合、「I want an apple」と入力したかのように処理されます。これは、システム エンティティとカスタム エンティティの両方を含むマッチングにも当てはまります。

    スペル修正は、英語、フランス語、ドイツ語、スペイン語、イタリア語で利用できます。すべての Dialogflow CX リージョンで利用できます。

    警告とおすすめの方法:

    • スペル修正では ASR(自動音声認識)エラーを修正できないため、ASR 入力を使用しているエージェントではこれを有効にしないことをおすすめします。
    • 修正された入力が誤ったインテントと一致する可能性があります。これを修正するには、誤ってインテントに一致することがよくあるフレーズをに追加します。
    • スペルの修正により、エージェントのレスポンス時間がわずかに増加します。
    • エージェントがドメイン固有の専門用語を使用して定義されている場合、修正が望ましくない場合があります。

次のフロー固有の ML 設定が利用できます。

  • NLU タイプ

    次のいずれかになります。

  • 自動トレーニング

    有効にすると、フローがコンソールで更新されるたびにトレーニングされます。フローが大きい場合、コンソール UI の遅延の原因となることがあります。その場合はこの設定を無効にし、必要に応じて大規模なフロー用に手動でトレーニングする必要があります。

  • 分類しきい値

    結果から偽陽性を除外した後でも、多様な自然言語入力との一致に基づいてエージェントが応答できるように、機械学習の分類しきい値を調整できます。この設定は、インテントの一致に必要なインテント検出の信頼度を制御します。

    インテント一致の信頼スコアがしきい値より小さい場合は、no-match イベントが呼び出されます。

  • トレーニングのステータス

    フローデータの最新更新以降にフローがトレーニングされたかどうかを示します。

  • NLU のトレーニング

    フローを手動でトレーニングする場合は、このボタンを使用します。

生成 AI の設定

次の生成 AI 設定が利用できます。

  • 全般

    • 禁止されているフレーズ

      生成 AI で禁止されているフレーズのリスト。禁止されたフレーズがプロンプトまたは生成されたレスポンスにある場合、生成は失敗します。

    • 安全フィルタ

      責任ある AI(RAI)の各カテゴリに対して安全フィルタの感度レベルを構成します。コンテンツは、次の 4 つのカテゴリで評価されます。

      カテゴリ 説明
      ヘイトスピーチ ID や保護されている属性をターゲットとする否定的なコメントや有害なコメント。
      危険なコンテンツ 有害な商品、サービス、アクティビティへのアクセスを促進または可能にする
      性的描写が露骨なコンテンツ 性行為やわいせつな内容に関する情報が含まれるコンテンツ
      嫌がらせ 他人をターゲットにした悪口、威圧表現、いじめ、虐待的な内容を含むコメント

      コンテンツは有害である可能性に基づいてブロックされます。 各カテゴリの感度レベルは、[少量をブロック]、[一部をブロック]、[ほとんどをブロック] のいずれかを選択してカスタマイズできます。また、[ブロックなし] の制限付きオプションにアクセスして、プロジェクトに対してリスク確認応答リクエストを送信して承認を受けた後、カテゴリの RAI チェックを無効にすることもできます。

      詳細については、安全性属性を構成するをご覧ください。

  • 生成エージェント

    • 生成モデルの選択

      生成機能で使用するモデルを選択します。詳細については、モデルのバージョンをご覧ください。

  • 生成フォールバック

  • データストア

    データストア エージェントの設定をご覧ください。

音声と IVR の設定

次の音声設定と IVR 設定を使用できます。

  • Text-to-Speech

    • 音声の選択

      音声合成に使用する言語と音声を選択できます。

      音声選択ドロップボックスからカスタム音声オプションを選択し、対応するフィールドにカスタム音声名を指定することで、エージェントのカスタム音声を有効にできます。カスタム音声名は、projects/PROJECT_ID/locations/LOCATION/models/MODEL_NAME のパターンに従う必要があります。

      • テレフォニー ゲートウェイを使用している場合は、Dialogflow サービス エージェントのサービス アカウント service-PROJECT_NUMBER@gcp-sa-dialogflow.iam.gserviceaccount.com にカスタム音声プロジェクトにおける「AutoML Predictor」が付与されていることを確認します。
      • 通常の API 呼び出しの場合は、Dialogflow の呼び出しに使用するサービス アカウントに、カスタム音声プロジェクトにおける「AutoML Predictor」ロールが付与されていることを確認します。
  • Speech-to-Text

DTMF

詳細については、テレフォニー統合用の DTMF をご覧ください。

マルチモーダル

コンパニオンの呼び出しをご覧ください。

共有設定

アクセス制御をご覧ください。

言語設定

エージェントに追加の言語サポートを追加します。全言語の一覧については、言語リファレンスをご覧ください。

言語の自動検出

言語の自動検出を構成すると、チャット エージェントはエンドユーザーの言語を自動的に検出し、その言語に切り替えます。詳しくは、言語の自動検出に関するドキュメントをご覧ください。

セキュリティ設定

セキュリティ設定をご覧ください。

詳細設定

現在、詳細設定は感情分析でのみ利用できます。

エージェントのエクスポートと復元

エージェントをファイルにエクスポートすることや、そのファイルを使用してエージェントを復元することができます。

エージェント エクスポートには、以下を除くすべてのエージェント データが含まれます。

  • フロー バージョン: 下書きのフローのみがファイルにエクスポートされます。
  • 環境: カスタム環境はファイルにエクスポートされません。

エージェントを復元すると、以下を除くすべてのターゲット エージェント データが上書きされます(すべてのフロー バージョンを含む)。

  • 環境: ターゲット エージェントでは、すべてのカスタム環境が変更されずに残ります。ターゲット エージェント内のカスタム環境が参照するフロー バージョンは、関連する環境が存在する限り存続します。ただし、これらの古いフロー バージョンは、エージェントに関して表示されず、選択可能なフロー バージョンではありません。
  • Vertex AI エージェント アプリ: Vertex AI エージェント アプリへの関連付けは、ターゲット エージェントで変更されません。(つまり、GenAppBuilderSettingsengine の値)これは、データストア エージェントを他の既存のデータストア エージェントにのみ復元できることを意味します。結果として得られるエージェントが、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 によってファイル形式が自動的に決定されます。

エージェントをエクスポートまたは復元するには、以下の手順に従います。

コンソール

  1. Dialogflow CX Console を開きます。
  2. エージェント用の Google Cloud プロジェクトを選択します。
  3. リスト内のエージェントのオプション メニュー をクリックします。
  4. [エクスポート] または [復元] ボタンをクリックします。
  5. 手順に沿って操作して完了します。

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 エクスポート / 復元ガイドもご覧ください。

エージェントを削除する

エージェントを削除するには、完全アクセス権か、編集権限を持つロールが必要です。詳しくは、アクセス制御ガイドをご覧ください。

エージェントを削除するには:

コンソール

  1. Dialogflow CX Console を開きます。
  2. エージェント用の Google Cloud プロジェクトを選択します。
  3. リスト内のエージェントのオプション メニュー をクリックします。
  4. [削除] ボタンをクリックします。
  5. ダイアログで削除を確定します。

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 エージェントとデータが直ちに削除されます。