ダイアログ フロー(Dialogflow)エージェントは、エンドユーザーとの会話を処理する仮想エージェントです。これは、人間の言語のニュアンスを理解する自然言語理解モジュールです。Dialogflow は、会話中のエンドユーザーのテキストまたは音声をアプリやサービスが理解できる構造化データに変換します。Dialogflow エージェントは、システムに必要な種類の会話が処理されるように設計および構築されます。
Dialogflow エージェントは、人間のコールセンター エージェントに似ています。予想される会話のシナリオに対処するためにトレーニングを行ってください。ただし、トレーニングを過度に行う必要はありません。
エージェントをゼロから作成することも可能ですが、特定のインテントを処理できるエージェントが構成済みの、一般公開されている仮想エージェント テンプレートを使用すると、すぐに作成できます。
このチュートリアルでは、オープンソースのテンプレートをもとにエージェントを作成する方法を示します。サンプルとして、Verily COVID-19 Pathfinder Virtual Agent テンプレートを使用します。このテンプレートを使用し、最新のアメリカ疾病予防管理センター(CDC)のガイダンスに基づいてスクリーニングを実施したり、よくある質問に回答したりできるように、エージェントを設定します。エージェントは、COVID-19(新型コロナウイルス感染症)の感染拡大の中で人々が健康を守れるよう、最新の情報を入手して適切な措置を取るのを支援します。
エージェントの作成
テンプレート ファイルをダウンロードする
GitHub から、Verily COVID-19 Pathfinder Virtual Agent テンプレートとそれに関連するフルフィルメント コードをダウンロードします。
エージェントを作成してテンプレートをインポートする
- 新しいエージェントを作成します。
- 設定 settings ボタンをクリックします。
[Export and Import] タブを選択し、[Import from Zip] ボタンをクリックして、上記でダウンロードしたテンプレートをインポートします。
左側のサイドバーで [Fulfillment] をクリックします。
スイッチを切り替えて [Inline Editor] を有効にします。
画面の指示に従い、Cloud Functions 経由でフルフィルメントを有効にして、Cloud プロジェクトの課金を有効にします。
Google Cloud Console に移動し、左側のパネルで [Cloud Functions] を選択します。
作成した関数のフルフィルメントを選択し、[編集] ボタンをクリックします。
[ソースコード] セクションで [ZIP アップロード] を選択し、上記でダウンロードしたフルフィルメントの zip ファイルをアップロードします。ステージ バケットを選択します(まだ作成していない場合は作成する必要があります)。
Google Maps Platform のクイックスタートの手順に沿って、Google Maps Places API を有効にします。コンソールで [API とサービス] > [認証情報] を選択して、Places API を呼び出すための API キーを作成します(詳しくは、API キーの取得をご覧ください)。
GOOGLE_MAPS_API_KEY
環境変数を、指定した API キーに設定します。詳しくは、環境変数の更新をご覧ください。COVID-19 の指標を使用するには、プロジェクトを選択して利用規約に同意してから BigQuery API を有効にします。
エージェントとのやり取り
Dialogflow コンソール シミュレータを使用する
Dialogflow シミュレータにテキストクエリを入力します。
レスポンスのカスタム ペイロードは Dialogflow コンソールに表示されない場合があります。
Dialogflow Messenger を使用する
- Dialogflow コンソールに移動します。
- エージェントを選択します。
- 左側のサイドバー メニューで [Integrations] をクリックします。
- Dialogflow Messenger の統合を有効にします。
ダイアログに表示された埋め込みコードを、ウェブサイトのウェブページに貼り付けます。サイトでエージェントとやり取りするには、右下のアイコンをクリックし、入力クエリを入力して Enter キーを押します。エージェントが応答します。
エージェントをカスタマイズして、必要な方法で表示します。
Dialogflow API を使用する
Dialogflow API を使用してエージェントとやり取りするには、Google Cloud Platform プロジェクトが適切に設定されていることを確認してから、COVID 19 について自然言語によるクエリを送信し、そのインテントを検出します。
COVID-19 について自然言語によるクエリを含む request.json ファイルを作成します。次に例を示します。
{ "query_input": { "text": { "text": "how to get tested", "language_code": "en-US" } } }
JSON 形式の詳細については、detectIntent に関するページをご覧ください。
次のコマンドを実行して、エージェントにインテント検出リクエストを送信します。
curl -X POST
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token)
-H "Content-Type: application/json; charset=utf-8"
-d @request.json
https://dialogflow.googleapis.com/v2/projects/project-id/agent/sessions/session-id:detectIntent
エージェントをサードパーティ製のテレフォニー プラットフォームや IVR プラットフォームと統合する
Dialogflow は、SignalWire や Audiocodes などのさまざまなテレフォニー プラットフォームと統合されています。統合ページの手順に従って、各プラットフォーム用の統合を設定できます。