概要
このコード・パターンでは、Watson Assistant と Elasticsearch を利用する Node.js チャットボット・アプリケーションを作成する方法を説明します。ユーザーがモバイル・アプリから操作できるこのチャットボット・アプリケーションは、Kubernetes 上でも Cloud Foundry 上でも実行できます。
説明
このコード・パターンがベースとしている、IBM Developer モバイル・アプリケーションで使用されているチャットボットは、モバイル・アプリ・ストアから入手できます。
このコード・パターンに従って作成するチャットボットは、TV Maze からテレビ番組のデータを取得し、ユーザーにお勧めのテレビ番組を提示して番組情報を提供します。
このコード・パターンを完了すると、以下の方法がわかるようになります。
- ゼロからチャットボットを作成して完成させる
- Node.js アプリケーションを Kubernetes または Cloud Foundry にデプロイして実行する
フロー
Cloud Foundry にデプロイする場合のフロー
- ユーザーがモバイル・アプリケーションの React UI を使用して質問をテキストで入力することによって、チャットボットと対話します。
- React UI がユーザーのメッセージを Cloud Foundry 上の Node.js バックエンドに送信します。
- Node.js バックエンドは受け取ったメッセージを Watson Assistant に送信し、Watson Assistant がユーザーのメッセージからそのインテントとエンティティーを判断します。
- Node.js バックエンドが Watson Assistant によって判断されたインテントとエンティティーに基づいて、Elasticsearch データベースに対してクエリーを実行します。
- クエリーに対する応答と結果が React UI に送信されます。
Kubernetes にデプロイする場合のフロー
- ユーザーがモバイル・アプリケーションの React UI を使用して質問をテキストで入力することによって、チャットボットと対話します。
- React UI がユーザーのメッセージを Kubernetes 上の Node.js バックエンドに送信します。
- Node.js バックエンドは受け取ったメッセージを Watson Assistant に送信し、Watson Assistant がユーザーのメッセージからそのインテントとエンティティーを判断します。
- Node.js バックエンドが Watson Assistant によって判断されたインテントとエンティティーに基づいて、Elasticsearch データベースに対してクエリーを実行します。
- クエリーに対する応答と結果が React UI に送信されます。
手順
このパターンの詳細な手順については、readme ファイルを参照してください。