音声入力と音声出力に対応する Web ベースのチャットボットを作成する  

IBM Watson Speech to Text、Watson Text to Speech、および Watson Assistant を利用して、音声を入力および出力として使用する Web ベースのチャットボットを作成する

Description

誰もが知っているように、カスタマー・サービスの改善とコストの削減に対する AI の答えはチャットボットです。チャットボットは、さまざまなユーザー・インターフェースと入力フォーム内で使用できます。その具体的な例として、これまでのコード・パターンでは Slack、Web インターフェース、Facebook Messenger といった異なるメディアを使用してチャットボットを作成する方法を説明してきました。今回のコード・パターンでは同じく Web インターフェースを使用しますが、テキストを入力として使用するのではなく、音声による入力と出力を使用します。このコード・パターンでは Watson Assistant を利用して会話のダイアログを制御し、Watson Speech to Text サービスと Watson Text to Speech サービスを利用して音声の認識と再生を処理します。

Overview

これまで、異なるユーザー入力フォームを使用した複数のコード・パターンを作成してきました。具体的には、Speech Sandbox のコード・パターンでは VR ヘッドセットを入力として使用し、Watson Assistant と Slack のコード・パターンではテキストと Slack インターフェースを、Facebook Messenger と Watson のチュートリアルではテキストと Facebook を使用しました。このコード・パターンでは、Watson Text to Speech、Watson Speech to Text、Watson Assistant を利用する Web ベースのアプリケーションを作成する方法を説明します。今回は音声入力とオーディオ出力、そして Web ブラウザーをインターフェースとして使用します。

メインの Web サイトは Query を使用して作成し、API 呼び出しには Python の flask を使用します。また、WebSocket 接続を作成して、さまざまな Watson サービスを呼び出せるようにします。ダイアログにはサンプルの保険関連の会話を使用します。

このコード・パターンを完了すると、以下の方法がわかるようになります。

  • WebSocket 接続を使用して Watson Speech To Text を呼び出す
  • REST API を使用して Watson Text to Speech を呼び出す
  • REST API を使用して Watson Assistant との間でメッセージを送受信する
  • Watson Speech To Text、Watson Text To Speech、Watson Assistant を Web アプリ内で統合する

Flow

  1. ユーザーがブラウザー上でマイクを選択し、マイクに向かって話します。
  2. WebSocket 接続を使用して、ユーザーの音声が Watson Speech to Text に渡されます。
  3. Watson Speech to Text から返されたテキストが抽出されて、入力として Watson Assistant に送信されます。
  4. Watson Assistant から返されたレスポンスが Watson Text to Speech に渡されます。
  5. オーディオ出力が Web アプリケーションに送信されてユーザーに再生される間、UI には再生中のオーディオと同じテキストが表示されます。

Instructions

詳細な手順については、README を参照してください。手順の概要は以下のとおりです。

  1. リポジトリーを複製します。
  2. 各サービスのインスタンスを作成し、Web アプリをデプロイします。
  3. Watson Assistant ワークスペースをアップロードします。
  4. 環境変数を構成します。

Related Blogs

OSC東京 SpringにIBM Developer Advocateが登壇します!

みなさまこんにちは、IBM Developer AdvocateのTaijiです。 明日、2月22日はOSC東京 Springです! 私は14時よりJavaアプリをIKS(IBM Cloud上のK8s)へデプロイする方法の開設をデモ交えながらやらせて頂きます。 こちらの内容は、Code Patternsでも紹介しております。 Spring Boot マイクロサービスを Kubernetes 上にデプロイする ご存じない方も多いのですが、IBM Cloudの多くの部分は、実はオープンソースで構成されているんですよ😎 ご予定お繰り合わせの上、ぜひお越しくださいね🙋‍♂️ https://www.ospn.jp/osc2019-spring/ #osc19tk #TryIBMDev #IBM #IBMDeveloper

続けて読む OSC東京 SpringにIBM Developer Advocateが登壇します!

IBM Developer へようこそ

新しい IBM Developer へようこそ! 私たちはこの新しいプロジェクトに大いに張り切っていますが、まずは皆さんについて、つまり開発者についてお話ししたいと思います。

続けて読む IBM Developer へようこそ

Related Links

Use Watson Assistant and Botkit to create a Facebook Messenger chatbot

チャットボットと仮想エージェント用の会話を迅速に組み立てる方法を説明しているチュートリアルです。

ICP 上の音声ゲートウェイ

あらゆるアプリケーションに対応できるように構築されたクラウドを使用して、開発プロセスを迅速化できます。