会話オブジェクトが作成されると、Customer Experience Insights で会話を表示できます。この入門ガイドでは、REST API を使用して会話を分析するプロセスについて説明します。必要に応じて、CX Insights コンソールを使用してこれらの操作を行うこともできます。
前提条件
- プロジェクトでCloud Storage API と Insights API を有効にします Google Cloud 。
- 会話データをインポートします。
チャットの会話
会話のチャット トランスクリプトを Cloud Storage バケット内の オブジェクトとしてインポートします。
オブジェクト パスをメモします。形式は
gs://<bucket>/<object>です。
チャット トランスクリプト ファイルは、CCAI 会話データ形式に一致する JSON 形式のファイルとして指定する必要があります。
音声会話
Cloud Storage バケットからすべてのファイルをインポートします。音声ファイルとトランスクリプト ファイルは、Cloud Storage バケット内のオブジェクトとしてインポートする必要があります。
2 つのオブジェクト パスをメモします。形式は
gs://<bucket>/<object>です。
トランスクリプト ファイルは、Cloud Speech-to-Text API の文字起こし結果である必要があります。具体的には、音声認識から返されるレスポンスと一致する必要があります。これは、すべての Speech-to-Text API バージョンで同期認識と非同期認識で同じです。他の文字起こし形式はサポートされておらず、会話分析中にエラーが発生します。
会話を分析する
CX Insights で Conversation オブジェクトが作成されたら、有用な結果を得るために分析する必要があります。1 つの会話を何度も分析できます。個別の分析ごとに新しい Analysis オブジェクトが作成されます。
分析では、会話データに対して一連のアノテーター が実行され、結果がレスポンスで返されます。デフォルトでは、使用可能なすべてのアノテーターが実行されます。必要に応じて、分析を構成して指定したアノテーターのみを実行できます。
分析は長時間実行オペレーションです。CreateAnalysis メソッドを呼び出すと、長時間実行プロセスを表す Operation オブジェクトが作成されます。オペレーションが完了すると、Operation オブジェクトに結果が含まれます。Operation オブジェクトをポーリングして、完了を確認できます。
新しい分析を作成する
REST
詳細については、
conversations.analyses:create
API エンドポイントをご覧ください。
リクエストのデータを使用する前に、 次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- CONVERSATION_ID: 分析する会話の ID。この値は `createConversation` レスポンスで返されました。
HTTP メソッドと URL:
POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/conversations/CONVERSATION_ID/analyses
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{
"name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID"
}
Python
CX Insights への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、 ローカル開発環境の認証の設定をご覧ください。
Java
CX Insights への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、 ローカル開発環境の認証の設定をご覧ください。
Node.js
CX Insights への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、 ローカル開発環境の認証の設定をご覧ください。
(省略可)分析を構成する
REST
詳細については、
conversations.analyses:create
API エンドポイントをご覧ください。実行するアノテーターを annotatorSelector オブジェクトに含めて、true に設定します。含まれていないアノテーターはデフォルトで false になります。annotatorSelector オブジェクトでアノテーターを指定しない場合、すべてのアノテーターが実行されます。
リクエストのデータを使用する前に、 次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- PHRASE_MATCHER(s): フレーズ マッチャー アノテーターに使用するフレーズ マッチャーの完全修飾されたフレーズ マッチャー リソース名。空のままにすると、アクティブなフレーズ マッチャーがすべて実行されます。
- ISSUE_MODEL(s):問題モデル アノテーターに使用する問題モデルの完全修飾されたリソース名。run_issue_model_annotator が true の場合にのみ機能します。空のままにすると、デプロイされた問題モデルがすべて実行されます。現在、デプロイできるモデルは 1 つに制限されています。
HTTP メソッドと URL:
POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/conversations/CONVERSATION_ID/analyses
リクエストの本文(JSON):
{
"annotatorSelector": {
"run_interruption_annotator": {true/false},
"run_silence_annotator": {true/false},
"run_phrase_matcher_annotator": {true/false},
"phrase_matchers": PHRASE_MATCHER(s),
"run_sentiment_annotator": {true/false},
"run_entity_annotator": {true/false},
"run_intent_annotator": {true/false},
"run_issue_model_annotator": {true/false}
"issue_models": ISSUE_MODEL(s)
}
}
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{
"name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID"
}
オペレーションをポーリングする
分析を作成すると、長時間実行オペレーションが返されます。長時間実行メソッドは非同期で、メソッドがレスポンスを返すときにオペレーションが完了していない場合があります。オペレーションをポーリングして、ステータスを確認できます。詳細とコードサンプルについては、 長時間実行オペレーションのページ をご覧ください。