IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社リコーの特許一覧

特開2024-135175情報処理装置、プログラム、情報処理方法および情報処理システム
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024135175
(43)【公開日】2024-10-04
(54)【発明の名称】情報処理装置、プログラム、情報処理方法および情報処理システム
(51)【国際特許分類】
   G06F 16/90 20190101AFI20240927BHJP
【FI】
G06F16/90 100
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023045726
(22)【出願日】2023-03-22
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】山田 剛
(72)【発明者】
【氏名】鬼頭 尚也
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175GA02
(57)【要約】
【課題】チャットボット機能において、応答に対してユーザが所定の作業を行うことで表示される情報を、所定の作業を行う必要なく、適切に取り扱うことができるようにする。
【解決手段】質問情報と応答情報とが対応付けられた質問応答情報に基づいて、ユーザ端末から受け付けた質問情報に対応する応答情報を特定する第1の特定部と、シナリオ情報に基づいて、ユーザ端末に表示させる表示情報を特定する第2の特定部と、第1の特定部で特定された応答情報、および第2の特定部で特定された表示情報をユーザ端末に表示させる表示制御部と、第1の特定部で応答情報の特定に用いられた質問情報とシナリオ情報とを対応付けて登録する登録部と、を備え、表示制御部は、第1の特定部で応答情報の特定に用いられた質問情報に対応するシナリオ情報が登録されている場合、応答情報とシナリオ情報に基づいて特定された表示情報とをユーザ端末に表示する。
【選択図】図17
【特許請求の範囲】
【請求項1】
チャットボット機能を提供する情報処理装置であって、
質問情報と当該質問情報に対する応答情報とが対応付けられた質問応答情報に基づいて、ユーザ端末から受け付けた質問情報に対応する前記応答情報を特定する第1の特定部と、
シナリオ情報に基づいて、前記ユーザ端末に表示させる表示情報を特定する第2の特定部と、
前記第1の特定部で特定された前記応答情報、および前記第2の特定部で特定された前記表示情報を前記ユーザ端末に表示させる表示制御部と、
前記第1の特定部で前記応答情報の特定に用いられた前記質問情報と前記シナリオ情報とを対応付けて登録する登録部と、
を備え、
前記表示制御部は、前記第1の特定部で前記応答情報の特定に用いられた前記質問情報に対応する前記シナリオ情報が登録されている場合、当該応答情報と当該シナリオ情報に基づいて特定された前記表示情報とを前記ユーザ端末に表示する、
ことを特徴とする情報処理装置。
【請求項2】
前記表示制御部は、前記質問情報を設定する画面であって、前記質問情報に対応付けて登録させる前記シナリオ情報を指定可能な質問応答設定画面を、管理者端末に表示する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記表示制御部は、前記シナリオ情報を設定する画面であって、前記シナリオ情報に対応付けて登録させる前記質問情報を指定可能なシナリオ設定画面を、管理者端末に表示する、
ことを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記第2の特定部は、前記シナリオ情報に基づき、当該シナリオ情報と対応付けて登録する前記質問情報の候補を特定し、
前記表示制御部は、前記シナリオ設定画面において、前記第2の特定部で特定された前記質問情報の候補を前記管理者端末に表示させ、
前記登録部は、前記質問情報の候補のうち、ユーザにより選択された前記質問情報と前記シナリオ情報とを対応付けて登録する、
ことを特徴とする請求項3に記載の情報処理装置。
【請求項5】
チャットボット機能を提供する情報処理装置を制御するコンピュータを、
質問情報と当該質問情報に対する応答情報とが対応付けられた質問応答情報に基づいて、ユーザ端末から受け付けた質問情報に対応する前記応答情報を特定する第1の特定部と、
シナリオ情報に基づいて、前記ユーザ端末に表示させる表示情報を特定する第2の特定部と、
前記第1の特定部で特定された前記応答情報、および前記第2の特定部で特定された前記表示情報を前記ユーザ端末に表示させる表示制御部と、
前記第1の特定部で前記応答情報の特定に用いられた前記質問情報と前記シナリオ情報とを対応付けて登録する登録部と、
として機能させ、
前記表示制御部は、前記第1の特定部で前記応答情報の特定に用いられた前記質問情報に対応する前記シナリオ情報が登録されている場合、当該応答情報と当該シナリオ情報に基づいて特定された前記表示情報とを前記ユーザ端末に表示する、
ことを特徴とするプログラム。
【請求項6】
チャットボット機能を提供する情報処理装置における情報処理方法であって、
質問情報と当該質問情報に対する応答情報とが対応付けられた質問応答情報に基づいて、ユーザ端末から受け付けた質問情報に対応する前記応答情報を特定する第1の特定工程と、
シナリオ情報に基づいて、前記ユーザ端末に表示させる表示情報を特定する第2の特定工程と、
前記第1の特定工程で特定された前記応答情報、および前記第2の特定工程で特定された前記表示情報を前記ユーザ端末に表示させる表示制御工程と、
前記第1の特定工程で前記応答情報の特定に用いられた前記質問情報と前記シナリオ情報とを対応付けて登録する登録工程と、
として機能させ、
前記表示制御工程は、前記第1の特定工程で前記応答情報の特定に用いられた前記質問情報に対応する前記シナリオ情報が登録されている場合、当該応答情報と当該シナリオ情報に基づいて特定された前記表示情報とを前記ユーザ端末に表示する、
ことを特徴とする情報処理方法。
【請求項7】
複数のユーザ端末と、チャットボット機能を提供する情報処理装置とを備えた情報処理システムにおいて、
前記情報処理装置は、
質問情報と当該質問情報に対する応答情報とが対応付けられた質問応答情報に基づいて、前記ユーザ端末から受け付けた質問情報に対応する前記応答情報を特定する第1の特定部と、
シナリオ情報に基づいて、前記ユーザ端末に表示させる表示情報を特定する第2の特定部と、
前記第1の特定部で特定された前記応答情報、および前記第2の特定部で特定された前記表示情報を前記ユーザ端末に表示させる表示制御部と、
前記第1の特定部で前記応答情報の特定に用いられた前記質問情報と前記シナリオ情報とを対応付けて登録する登録部と、
を備え、
前記表示制御部は、前記第1の特定部で前記応答情報の特定に用いられた前記質問情報に対応する前記シナリオ情報が登録されている場合、当該応答情報と当該シナリオ情報に基づいて特定された前記表示情報とを前記ユーザ端末に表示する、
ことを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、プログラム、情報処理方法および情報処理システムに関する。
【背景技術】
【0002】
今日において、ユーザから入力されたテキスト、音声または画像のパターン認識をクラウド経由で行い、会話または質問等に対する応答または機械制御等を行う、いわゆるチャットボットが知られている。このようなチャットボットとして、ユーザとの間で対話(チャット)形式のやり取りを行うことにより、情報を送受する対話型通信を行うものが知られている。
【0003】
例えば、特許文献1には、予め登録されたFAQ(質問応答)に基づいて、ユーザからの質問に合致する応答を検索し、検索した応答をユーザに提示するチャットボット機能を提供するチャットボットシステムが開示されている。そして、ユーザはチャットボットシステムの応答に含まれるURL等などのリンクにアクセスし、別の画面を開くことになる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来のチャットボットシステムによれば、例えば、応答にリンクが含まれている場合、ユーザは、当該リンクにアクセスして別の画面を開くなど、応答に対してユーザが所定の作業をしないと表示されない情報があり、手間がかかるという問題がある。
【0005】
本発明は、上記に鑑みてなされたものであって、チャットボット機能において、応答に対してユーザが所定の作業を行うことで表示される情報を、所定の作業を行う必要なく、適切に取り扱うことができるようにすることを目的とする。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、本発明は、チャットボット機能を提供する情報処理装置であって、質問情報と当該質問情報に対する応答情報とが対応付けられた質問応答情報に基づいて、ユーザ端末から受け付けた質問情報に対応する前記応答情報を特定する第1の特定部と、シナリオ情報に基づいて、前記ユーザ端末に表示させる表示情報を特定する第2の特定部と、前記第1の特定部で特定された前記応答情報、および前記第2の特定部で特定された前記表示情報を前記ユーザ端末に表示させる表示制御部と、前記第1の特定部で前記応答情報の特定に用いられた前記質問情報と前記シナリオ情報とを対応付けて登録する登録部と、を備え、前記表示制御部は、前記第1の特定部で前記応答情報の特定に用いられた前記質問情報に対応する前記シナリオ情報が登録されている場合、当該応答情報と当該シナリオ情報に基づいて特定された前記表示情報とを前記ユーザ端末に表示する、ことを特徴とする。
【発明の効果】
【0007】
本発明によれば、チャットボット機能において、応答に対してユーザが所定の作業を行うことで表示される情報を、所定の作業を行う必要なく、適切に取り扱うことができる、という効果を奏する。
【図面の簡単な説明】
【0008】
図1図1は、第1の実施の形態にかかる自動応答システムを含む情報処理システムのシステム構成の一例を示す図である。
図2図2は、チャットボットサービスサーバ及び外部連携サーバのハードウェア構成の一例を示す図である。
図3図3は、自動応答システムの機能構成の一例を示す図である。
図4図4は、内部登録部の機能構成の一例を示す図である。
図5図5は、質問応答設定画面の一例を示す図である。
図6図6は、FAQテーブルのデータ構成の一例を示す図である。
図7図7は、外部連携テーブルのデータ構成の一例を示す図である。
図8図8は、シナリオテーブルのデータ構成の一例を示す図である。
図9-1】図9-1は、オブジェクト管理テーブル(テキスト)のデータ構成の一例を示す図である。
図9-2】図9-2は、オブジェクト管理テーブル(フォーム入力)のデータ構成の一例を示す図である。
図9-3】図9-3は、オブジェクト管理テーブル(システムデータ表示)のデータ構成の一例を示す図である。
図9-4】図9-4は、オブジェクト管理テーブル(API連携)のデータ構成の一例を示す図である。
図10図10は、配達状況確認のシナリオ設定画面の一例を示す図である。
図11図11は、配達状況確認のシナリオ設定画面の一例を示す図である。
図12図12は、配達状況確認のシナリオ設定画面の一例を示す図である。
図13図13は、チャットボットサービス処理の通常の流れを示すシーケンス図である。
図14図14は、応答画面の生成処理の流れを示すシーケンス図である。
図15図15は、取得情報を保存する処理の流れを示すフローチャートである。
図16図16は、取得情報管理テーブルの一例を示す図である。
図17図17は、チャットボットサービスにより表示されるチャット画面の一例を示す図である。
図18図18は、第2の実施の形態にかかる配達状況確認のシナリオ設定画面の一例を示す図である。
図19図19は、第3の実施の形態にかかる配達状況確認のシナリオ設定画面の一例を示す図である。
図20図20は、シナリオテーブルのデータ構成の一例を示す図である。
図21図21は、第4の実施の形態にかかる質問応答設定画面の一例を示す図である。
図22図22は、シナリオテーブルのデータ構成の一例を示す図である。
図23図23は、チャットボットサービスにより表示されるチャット画面の一例を示す図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、情報処理装置、プログラム、情報処理方法および情報処理システムの実施の形態を詳細に説明する。
【0010】
(第1の実施の形態)
図1は、第1の実施の形態にかかる自動応答システム1を含む情報処理システム100のシステム構成の一例を示す図である。情報処理システム100は、自動応答システム1と、端末装置であるユーザ端末3と、管理者端末4と、外部システム6と、を備える。自動応答システム1は、いわゆるチャットボット機能を利用して、ユーザ端末3を使用するユーザ(会話ユーザ)からの質問等に対して自動的又は半自動的に応答するためのシステムである。
【0011】
図1に示す例においては、自動応答システム1はネットワーク2を介してユーザ端末3を通信可能にネットワーク接続し、ネットワーク5を介して管理者端末4及び外部システム6A,6B,…と通信可能にネットワーク接続している。以下、複数の外部システム6A,6B,…のそれぞれを区別する必要が無い場合には外部システム6と記載する場合がある。
【0012】
ユーザ端末3は、ユーザ(会話ユーザ)が使用する端末装置である。ユーザ端末3は、例えば、PC(Personal Computer)、タブレット端末、スマートフォン等である。管理者端末4は、自動応答システム1により実現されるやり取りの内容を管理する管理者(管理ユーザ)が使用する端末装置である。管理者端末4は、例えば、PC、タブレット端末、スマートフォン等である。ユーザ端末3及び管理者端末4は、それぞれ複数であってもよい。
【0013】
外部システム6は、所定の情報を提供可能なコンピュータシステムである。外部システム6は、例えば、1又は複数のコンピュータ(サーバ、PC等)により構成されるシステムである。外部システム6の数は、特に限定されるべきものではなく、1つであっても3つ以上であってもよい。本実施形態においては、外部システム6AはAPI顧客管理システム、外部システム6BはAPI追跡システムである。以下、外部システム6Aは顧客管理システム6A、外部システム6Bは追跡システム6Bという。顧客管理システム6Aは、顧客の注文履歴などを管理するシステムである。追跡システム6Bは、顧客が注文した商品の発送にかかる追跡情報を管理するシステムである。
【0014】
ネットワーク2,5は、例えば、インターネット、LAN(Local Area Network)等である。ネットワーク2,5は、互いに独立していてもよいし、重複、連携等するものであってもよい。
【0015】
本実施の形態の自動応答システム1は、情報処理装置であるチャットボットサービスサーバ11及び外部連携サーバ12を有する。なお、本実施形態においては、チャットボットサービスサーバ11と外部連携サーバ12とを別体としたが、これに限るものではなく、チャットボットサービスサーバ11と外部連携サーバ12とは一体であってもよい。
【0016】
チャットボットサービスサーバ11は、予め登録されたシナリオ情報に基づきユーザ端末3との間で対話型通信を確立し、ユーザ端末3から送信された質問情報に対する応答情報を、当該質問情報を送信したユーザ端末3に送信するための処理を行う。ここで、シナリオ情報は、シナリオ型のチャットボットが質問情報から応答情報へ導くフロー(すなわち、ユーザ端末3との会話に使用するフロー)である。
【0017】
外部連携サーバ12は、適切な応答情報を生成するために、外部システム6(顧客管理システム6A、追跡システム6B)から必要な情報を取得するための処理を行う。
【0018】
図2は、チャットボットサービスサーバ11及び外部連携サーバ12のハードウェア構成の一例を示す図である。本実施形態のチャットボットサービスサーバ11及び外部連携サーバ12は、コンピュータにより構築されている。チャットボットサービスサーバ11及び外部連携サーバ12は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM(Random Access Memory)23、HD(Hard Disk)24、HDD(Hard Disk Drive)コントローラ25、ディスプレイ26、外部機器接続I/F(Interface)28、ネットワークI/F29、バスライン30、キーボード31、ポインティングデバイス32、DVD-RW(Digital Versatile Disc Rewritable)ドライブ34及びメディアI/F36を備えている。
【0019】
CPU21は、チャットボットサービスサーバ11又は外部連携サーバ12全体の動作を制御する。ROM22は、IPL(Initial Program Loader)等のCPU21の駆動に用いられるプログラムを記憶する。RAM23は、CPU21のワークエリアとして使用される。
【0020】
HD24は、プログラム等の各種データを記憶する。HDDコントローラ25は、CPU21の制御に従いHD24に対する各種データの読み出し又は書き込みを制御する。
【0021】
ディスプレイ26は、カーソル、メニュー、ウィンドウ、文字、画像等の各種情報を表示する。外部機器接続I/F28は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリ、プリンタ等である。ネットワークI/F29は、ネットワーク2,5を利用してデータ通信をするためのインターフェースである。バスライン30は、CPU21等の各構成要素を電気的に接続するためのアドレスバス、データバス等である。
【0022】
キーボード31は、文字、数値、各種指示等の入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス32は、各種指示の選択や実行、処理対象の選択、カーソルの移動等を行う入力手段の一種である。
【0023】
DVD-RWドライブ34は、着脱可能な記録媒体の一例としてのDVD-RW33に対する各種データの読み出し又は書き込みを制御する。なお、DVD-RWに限らず、DVD-R等であってもよい。メディアI/F36は、フラッシュメモリ等の記録メディア35に対するデータの読み出し又は書き込み(記憶)を制御する。
【0024】
次に、チャットボットサービスサーバ11のCPU21がHD24に記憶されているプログラムを実行、および、外部連携サーバ12のCPU21がHD24に記憶されているプログラムを実行することで実現される、自動応答システム1の機能構成について説明する。
【0025】
図3は、自動応答システム1の機能構成の一例を示す図である。自動応答システム1は、通信部101、連携判断部102、検索部103、連携部104、登録部105、FAQテーブル131(内部登録情報)、外部連携テーブル132(外部連携情報)、及びシナリオテーブル133(シナリオ情報)を有する。
【0026】
通信部101は、不特定多数のユーザ端末3(3A,3B,3C)との間で情報を送受する対話型通信を実行するための処理を行う。対話型通信とは、ユーザ端末とチャットボットとの間で対話(チャット)形式のやり取りを行うことにより情報を送受するためのものである。以下、複数のユーザ端末3A,3B,3Cのそれぞれを区別する必要が無い場合にはユーザ端末3と記載する場合がある。通信部101は、ユーザ端末3から送信された情報を受信する受信部111と、ユーザ端末3へ情報を送信する送信部112とを有する。受信部111は、ユーザ端末3から質問情報を受信する。送信部112は、受信された質問情報に対する応答情報を、当該質問情報を送信したユーザ端末3に送信する。
【0027】
図3に示す例では、対話型通信を行うための手段が互いに異なる3台のユーザ端末3A,3B,3Cが示されている。ユーザ端末3Aは、ブラウザ(インターネットブラウザ)41を利用して対話型通信を確立する。ユーザ端末3Bは、特定のSNS(Social Networking Service)等のコミュニケーションツール42を利用して対話型通信を確立する。ユーザ端末3Cは、ブラウザ41又は/及び特定のコミュニケーションツール42を利用して対話型通信を確立する。このように、対話型通信を確立するためのユーザ端末3側の手段は任意に設定され得る。
【0028】
連携判断部102は、受信部111が受信した質問情報に対する応答情報を取得する際に、外部システム6との連携が必要であるか否かを判断する。連携判断部102は、ユーザ端末3から受信された質問情報に含まれるキーワードに基づき、通常モード又は外部連携モードのいずれを実行するかを判断する。また、連携判断部102は、対話型通信において取得された質問情報とシナリオテーブル133とに基づいて判断することもできる。通常モードとは、質問情報に含まれる要素(例えばユーザにより選択された選択肢、ユーザにより入力されたフリーワード等)と応答情報とを対応付けたFAQテーブル131に基づき応答情報を取得するモードである。外部連携モードとは、質問情報に含まれる要素と連携すべき外部システム6に関する情報とを対応付けた外部連携テーブル132に基づき外部システム6と連携して応答情報を取得するモードである。
【0029】
検索部103は、連携判断部102により通常モードを実行すると判断された場合に、FAQテーブル131から応答情報を取得する。また、検索部103は、FAQテーブル131に加えシナリオテーブル133を参照して応答情報を取得してもよい。
【0030】
連携部104は、連携判断部102により外部連携モードを実行すると判断された場合に、外部システム6から情報を取得するための処理を行う。本実施形態の連携部104は、チャットボットサービスサーバ11が有する連携制御部115と外部連携サーバ12が有する連携処理部116とを含む。連携制御部115は、連携判断部102により外部連携モードを実行すると判断された場合に、外部連携テーブル132から連携すべき外部システム6に関する情報を取得する。連携処理部116は、連携制御部115により取得された外部システム6に関する情報に基づき、対象となる外部システム6と通信を確立し、当該外部システム6から必要な情報を取得するための処理を行う。なお、当該連携部104の構成は一例であり、連携制御部115と連携処理部116とは同一のハードウェアに搭載されてもよい。
【0031】
登録部105は、ユーザ端末3以外の特定の端末である管理者端末4から送信された登録情報に基づき、FAQテーブル131、外部連携テーブル132及びシナリオテーブル133を登録(生成、編集、削除等を含む)するための処理を行う。本実施形態の登録部105は、FAQテーブル131及びシナリオテーブル133を登録するための処理を行う内部登録部121と、外部連携テーブル132を登録するための処理を行う外部登録部122とを含む。
【0032】
ここで、内部登録部121の機能構成について詳述する。
【0033】
図4は、内部登録部121の機能構成の一例を示す図である。図4に示すように、内部登録部121は、画面入出力部301、質問管理部302、シナリオ管理部306を実現する。
【0034】
画面入出力部301は、チャットボットによって会話するにあたり必要な質問情報と当該質問情報に対する応答情報とが対応付けられた質問応答情報と、チャットボットの設定を行うユーザの情報を管理するためのUI(User Interface)とをユーザ端末3に対して提供する表示制御部の一例として機能する。また、画面入出力部301は、ユーザ端末3からメッセージ情報を受信し、シナリオ情報および設定情報に従って、受信したメッセージに対して応答するメッセージ情報をユーザ端末3に送信するシナリオ型のチャットボットを実行する。ここで、シナリオ情報は、上述したように、質問情報から応答情報に導くフローである。また、設定情報は、質問情報と応答情報とを対応付ける情報である。画面入出力部301は、特定された応答情報及びユーザ端末3に表示させる表示情報を画面としてユーザ端末3に表示させる。なお、画面入出力部301が画面をユーザ端末3にネットワーク2を介して送信することも、画面入出力部301による画面の出力に含まれる。
【0035】
例えば、画面入出力部301は、チャットボットによる会話により入力される入力テキストをメッセージ情報(問合せ情報)として受信する。ここで、入力テキストは、例えば、文字または音声により入力されても良いが、テキストに変換可能な情報であれば、これに限定するものではない。また、画面入出力部301は、設定情報に含まれる質問応答情報を追加または編集する場合、新たな質問応答情報を質問管理部302に受け渡す。
【0036】
ここで、図5は画面入出力部301が表示する質問応答設定画面Xの一例を示す図である。画面入出力部301は、質問応答情報を設定する画面であって、質問応答情報に対応付けて登録させるシナリオ情報を指定可能な質問応答設定画面Xを、UIとして管理者端末4に表示する。
【0037】
図5に示す質問応答設定画面Xの例は、チャットボットによって会話するにあたり必要な質問応答情報の追加例を示すものである。
【0038】
図5に示す質問応答設定画面Xでは、カテゴリ選択部aと、質問入力部bと、応答入力部cと、連携先のカスタムシナリオ選択部dと、追加メッセージ入力部eと、登録ボタンfと、キャンセルボタンgと、を備える。
【0039】
カテゴリ選択部aは、ユーザからのカテゴリの選択を受け付ける。ここで選択されるカテゴリは、「サービス」、「FAQの分類」などである。
【0040】
質問入力部bは、チャットボットによって会話するにあたり必要な質問情報のユーザからの入力を受け付ける。図5に示す質問応答設定画面Xでは、「配達情報の確認方法」が入力されている。
【0041】
応答入力部cは、チャットボットによって会話するにあたり必要な応答情報のユーザからの入力を受け付ける。図5に示す質問応答設定画面Xでは、
「追跡番号をお持ちの場合は、こちらのページからご確認いただけます。
https://○○○/aaa
追跡番号をお持ちでない場合は、サービスセンターへお問い合わせください。
電話番号:0120-000-000」
が入力されている。
【0042】
連携先のカスタムシナリオ選択部dは、連携先の外部システム6と連携して応答情報を取得するためのカスタムシナリオのユーザからの入力を受け付ける。図5に示す質問応答設定画面Xでは、プルダウンリストによって「配達状況確認」が選択されている。なお、プルダウンリストは、「配達状況確認」の他、「会員登録」「資料請求」「有給休暇申請」などの各種のカスタムシナリオを選択可能とする。
【0043】
連携先のカスタムシナリオ選択部dで選択するカスタムシナリオは、例えば応答情報に含まれるURL等などのリンク(例えば、図5に示すhttps://○○○/aaa)にアクセスして別の画面を開いて入力する情報を、チャット形式で入力させるようにするものである。
【0044】
追加メッセージ入力部eは、カスタムシナリオを表示する際に、併せて表示するメッセージのユーザからの入力を受け付ける。図5に示す質問応答設定画面Xでは、
「チャットで確認される場合は、「配達状況確認」ボタンをクリックしてください。」
が入力されている。
【0045】
登録ボタンfは、質問応答設定画面Xに入力された情報を登録する場合に、ユーザにより操作される。キャンセルボタンgは、質問応答設定画面Xに入力された情報をキャンセルする場合に、ユーザにより操作される。
【0046】
質問管理部302は、画面入出力部301から送られてきた各種情報(例えば、質問応答情報)に基づいて、当該各種情報をFAQテーブル131へ登録したり、FAQテーブル131から各種情報を取得して画面入出力部301へ返したりする。
【0047】
また、質問管理部302は、質問応答情報を追加・編集する場合、画面入出力部301から受け取った質問応答情報が登録可能であれば、当該質問応答情報をFAQテーブル131に登録する。
【0048】
すなわち、質問管理部302は、質問情報と当該質問情報に対する応答情報とが対応付けられた質問応答情報(FAQ)に基づいて、ユーザ端末から受け付けた質問情報に対応する応答情報を特定する第1の特定部として機能する。
【0049】
FAQテーブル131は、チャットボットがメッセージ情報の送信に用いる質問応答情報、当該質問応答情報のカテゴリ等の各種情報を格納する。
【0050】
シナリオ管理部306は、シナリオテーブル133からシナリオ情報を取得して、画面入出力部301へ返す役割を持つ。ここで、シナリオ情報は、上述したように、シナリオ型のチャットボットが質問情報から応答情報へ導くフロー(すなわち、ユーザ端末3との会話に使用するフロー)である。なお、シナリオ管理部306は、シナリオテーブル133のほか、後述するオブジェクト管理テーブル140-1~140-5を管理する。オブジェクト管理テーブル140-1~140-5は、シナリオテーブル133に関連するオブジェクト(ボタン)にかかる各種情報を管理する。
【0051】
シナリオテーブル133は、チャットボットがユーザ端末3との会話に使用するシナリオ情報を格納する。
【0052】
上述のように、シナリオ管理部306は、シナリオ情報に基づいて、ユーザ端末3に表示させる表示情報(「追跡番号を入力してください。」など)を特定する第2の特定部として機能する。
【0053】
次に、各種のテーブルのデータ構成について説明する。
【0054】
図6は、FAQテーブル131のデータ構成の一例を示す図である。図6に示すように、本実施形態のFAQテーブル131は、「質問応答ID」、「更新日時」、「カテゴリ」、「質問テキスト」、「応答テキスト」、「連携シナリオID」及び「追加メッセージ」を対応付けている。
【0055】
「質問応答ID」は、「質問テキスト」と「応答テキスト」との組み合わせ(本実施形態ではFAQテーブル131の行)を特定するための識別情報である。
【0056】
「更新日時」は、FAQテーブル131に登録される各種データを更新した日時を示す情報である。
【0057】
「質問テキスト」は、質問応答設定画面Xの質問入力部bを介して入力された質問情報である。「質問テキスト」は、対話型通信においてユーザにより入力された質問の内容を示す情報であり、質問情報に含まれる「要素」の一例である。「質問テキスト」は、例えば、複数の選択肢の中からユーザにより選択された選択肢、ユーザにより入力されたフリーワード、それらの類義語等であり得る。
【0058】
「応答テキスト」は、質問応答設定画面Xの応答入力部cを介して入力された応答情報である。「応答テキスト」は、質問内容に対応する応答の内容を示す応答情報である。図6では、質問内容に対応する応答の内容を示す応答情報として、インターネットで閲覧可能なホームページのURL等を示す情報が例示されている。
【0059】
「連携シナリオID」は、質問応答設定画面Xの連携先のカスタムシナリオ選択部dで選択された連携するカスタムシナリオを特定するための識別情報である。
【0060】
「追加メッセージ」は、質問応答設定画面Xの追加メッセージ入力部eを介して入力されたメッセージである。
【0061】
図7は、外部連携テーブル132のデータ構成の一例を示す図である。図7に示すように、本実施形態の外部連携テーブル132は、連携先テーブル135及び必要情報テーブル136を含む。
【0062】
本実施形態の連携先テーブル135は適切な応答情報を取得するために利用すべき外部サービス(外部システム6により提供されるサービス)へのアクセス方法を示す情報であり、「外部サービスURL」、「連携ID」、「種別」、「キーワード」及び「呼び出しID」を対応付けている。「外部サービスURL」は外部システム6により提供される外部サービスへアクセスするためのURLである。「外部サービスURL」は、例えば、顧客管理システム6A、追跡システム6B、…毎に割り当てられた、所定のホームページにアクセスするためのURL等であり得る。「連携ID」は「キーワード」と「種別」と「呼び出しID」との組み合わせ(本実施形態では連携先テーブル135の行)を特定するための識別情報である。「種別」は呼び出しIDの種別を示す情報である。ここでは「呼び出しID」の種別が関数(function)であることが例示されている。「キーワード」は対話型通信においてユーザが選択、入力等可能な語句、文節、文章等であり、質問情報に含まれる「要素」の一例である。「呼び出しID」は外部サービス内で目的の情報を取得するために必要な情報であり、例えば、「外部サービスURL」に対応するホームページにおける特定のリンク先を示す情報等であり得る。上記のような連携先テーブル135が顧客管理システム6A、追跡システム6B、…毎に生成されてもよい。
【0063】
必要情報テーブル136は、外部システム6と通信を確立する(外部サービスを利用する)ために必要なパラメータ(必要情報)を、顧客管理システム6A、追跡システム6B、…毎(本実施形態では外部サービスURL及び呼び出しID毎)に特定するためのテーブルである。本実施形態の必要情報テーブル136は「外部サービスURL」、「呼び出しID」、「パラメータ」、「種別」、「聞き返し情報」、「ユーザ入力情報」及び「終了メッセージ」を対応付けている。必要情報テーブル136における「外部サービスURL」及び「呼び出しID」は上記連携先テーブル135における「外部サービスURL」及び「呼び出しID」と対応している。「パラメータ」は外部システム6(外部サービス)から必要な情報を取得するために必要な(外部システム6が要求する)情報であり、本実施形態では「呼び出しID」毎に定められている。図7に示す例では、URL:https://△△△△△.net/api/に対応する外部サービス内で呼び出しID:HttpConnector?code=02に対応する情報を取得するためには、ユーザの名前、組織名及びメールアドレスが必要であることが示されている。「種別」は「パラメータ」の種別(入力条件等)を示す情報である。「聞き返し情報」はユーザに「パラメータ」の入力を促すためにユーザ端末3に出力される文字や音声を示す情報である。「ユーザ入力」はユーザ端末3に入力されたパラメータを示す情報である。「終了メッセージ」は全てのパラメータが取得された後にユーザ端末3に出力されるメッセージを示す情報である。
【0064】
図8は、シナリオテーブル133のデータ構成の一例を示す図である。図8に示すように、図8に示すように、本実施形態のシナリオテーブル133は、チャットボットがユーザ端末3との会話に使用するシナリオ(カスタムシナリオ)を格納する。シナリオテーブル133は、シナリオID(シナリオを特定する識別情報)、シナリオの名称であるシナリオ名、シナリオに含まれるカードのIDであるカードID(カードを特定する識別情報)、カード種別、カード内に含まれるオブジェクト(ボタン)の識別情報であるオブジェクトID、および呼び出し元オブジェクトIDを対応付けて記憶する。
【0065】
シナリオ名は、シナリオ(カスタムシナリオ)の名称であって、例えば「配達情報確認」などである。
【0066】
カード種別は、シナリオに含まれるカードを、「一般」と「システム」との何れかの種別に分類する。種別が「システム」に分類されるカードは、ユーザ端末3のユーザ画面には表示されない。呼び出し元オブジェクトIDは、オブジェクトIDの呼び出し元となるものである。
【0067】
次に、シナリオテーブル133に関連するオブジェクト(ボタン)を管理するオブジェクト管理テーブル140-1~140-5について説明する。
【0068】
図9-1は、オブジェクト管理テーブル(テキスト)140-1のデータ構成の一例を示す図である。図9-1に示すように、オブジェクト管理テーブル(テキスト)140-1は、オブジェクトIDに対応付けて、オブジェクト(ボタン)の詳細を表すテキストを記憶する。オブジェクト(ボタン)の詳細を表すテキストとしては、例えば「配達状況確認」などである。
【0069】
図9-2は、オブジェクト管理テーブル(フォーム入力)140-2のデータ構成の一例を示す図である。図9-2に示すように、オブジェクト管理テーブル(フォーム入力)140-2は、オブジェクトIDに対応付けて、オブジェクト(ボタン)のフィールド名を記憶する。
【0070】
図9-3は、オブジェクト管理テーブル(システムデータ表示)140-3のデータ構成の一例を示す図である。図9-3に示すように、オブジェクト管理テーブル(システムデータ表示)140-3は、オブジェクトIDに対応付けて、オブジェクト(ボタン)の参照フィールド名と表示内容とを記憶する。例えば、参照フィールド名としては配達日を示す「delivery_date」が記憶されていて、表示内容としては配達予定日が記憶されている。また、例えば、参照フィールド名としては、自動的に最初のカードに戻る「最初に戻る」が記憶されている。この場合、自動的に最初のカードに戻るため、呼び出し元オブジェクトIDに登録する必要はない。
【0071】
図9-4は、オブジェクト管理テーブル(API連携)140-4のデータ構成の一例を示す図である。図9-4に示すように、オブジェクト管理テーブル(API連携)140-4は、オブジェクト(ボタン)に表示する表示テキストIDに対応付けて、連携先URL、メソッド種別、リクエストヘッダー、リクエストボディ、レスポンスタイプ、レスポンスボディ、レスポンスボディのキー名変更などの、「API連携」に係る各種項目を記憶する。「連携先URL」は、例えばオブジェクト(ボタン)が「配達状況確認」である場合、追跡システム6Bに管理されている配達状況を示すURLである。「メソッド種別」は、HTTPメソッドの種別が「GET」であるか「POST」であるかを示すものである。「リクエストヘッダー」は、HTTPリクエストで使用されるHTTPヘッダーである。「リクエストボディ」は、HTTPリクエストで使用されるHTTPボディである。「レスポンスタイプ」は、「JSON」であるか「XML」であるかを示すものである。「レスポンスボディのキー名変更」は、変数名と、当該変数名についての変換元キー名と、を記憶する。なお、変数名についての詳細は、後述する。
【0072】
続いて、画面入出力部301により管理者端末4に表示されるUIの一例である配達状況確認のシナリオ設定画面について説明する。
【0073】
図10図12は、画面入出力部301により表示される配達状況確認のシナリオ設定画面の一例を示す図である。本実施の形態では、画面入出力部301は、図10に示すように、シナリオ型のチャットボットのシナリオ情報を設定可能なシナリオ設定画面G1を、管理者端末4に表示する。シナリオ設定画面G1は、図10に示すように、シナリオ情報に含めるカードC1、および当該カードC1の追加を指示可能なオブジェクト追加ボタン(例えば、「アクションオブジェクトを追加」)B1を含む。
【0074】
ここで、一例と質問応答設定画面Xの連携先のカスタムシナリオ選択部dで選択された連携するカスタムシナリオの作成について説明する。
【0075】
まず、画面入出力部301は、シナリオスタート画面のカードC1の作成を受け付ける。例えば、シナリオスタート画面のカードC1は、図10に示すように、カードテキスト(例えば、「追跡番号を入力してください。」)T1、カードC1に含めるオブジェクト(例えば、「フォーム入力」O1)、当該オブジェクトの種別(例えば、フォーム入力、テキスト、API連携、システムデータ表示など)、当該オブジェクトの追加を指示可能なオブジェクト追加ボタン(例えば、「アクションオブジェクトを追加」)B1等を含むものとする。
【0076】
オブジェクトの種別として「フォーム入力」が選択されている場合、画面入出力部301は、図10に示す画面G2を表示して各項目の設定を受け付ける。選択された種別が「フォーム入力」の場合の図10に示す画面G2では、「フィールド名」、「入力制限」の「フォーム入力」に係る各項目の設定を受け付けて、カードC1に含まれる「フォーム入力」オブジェクトO1の設定を完了する。
【0077】
「フィールド名」は、例えばオブジェクトが「配達状況確認」である場合、追跡システム6Bに管理されている配達状況を検索するための追跡番号を示す「tracking_num」を設定する。
【0078】
「入力制限」は、追跡システム6Bに管理されている配達状況を検索するための追跡番号を示す「tracking_num」に関する入力制限を設定する。「入力制限」は、プルダウンリストによって、「数字」、「英数字」、「メールアドレス」などが選択可能である。例えば「数字」が選択された場合、「数字」以外については、エラーとされる。
【0079】
次に、一例として配達状況確認APIの作成について説明する。
【0080】
画面入出力部301は、オブジェクト追加ボタンB1がクリックされると、特に図示しないが、追加対象のオブジェクトの種別(テキスト、API連携、システムデータ表示など)を選択可能とするカードC2の作成を受け付ける。
【0081】
例えば、選択された種別が「テキスト」の場合、画面入出力部301は、オブジェクトに表示させるテキストと、当該オブジェクトをクリックされるときに、次に表示するカードと、の設定を受け付ける。
【0082】
例えば、選択された種別が「システムデータ表示」の場合、画面入出力部301は、オブジェクトに表示させるテキストだけを入力する(次に表示するカードの設定はしない)。
【0083】
次に、選択された種別が「API連携」の場合について説明する。「API連携」が選択された場合のカードC2は、図11に示すように、カードに含めるオブジェクト(例えば、「API連携」O4)、当該オブジェクトの追加を指示可能なオブジェクト追加ボタン(例えば、「アクションオブジェクトを追加」)B2等を含む。なお、カードC2のカード種別は、「システム」である。カード種別が「システム」であるカードC2は、管理者端末4のシナリオ設定画面G1に表示されるが、ユーザ端末3のユーザ画面には表示されない。
【0084】
また、選択された種別が「API連携」の場合、画面入出力部301は、図11に示す画面G2を表示して各項目の設定を受け付ける。選択された種別が「API連携」の場合の図11に示す画面G2では、「連携先URL」、「メソッド種別」、「リクエストヘッダー」、「リクエストボディ」、「レスポンスタイプ」、「レスポンスボディ」の「API連携」に係る各項目の設定を受け付けて、カードC2に含まれる「API連携」オブジェクトO4の設定を完了する。
【0085】
「連携先URL」は、例えばオブジェクトが「配達状況確認」である場合、追跡システム6Bに管理されている配達状況を示すURLを入力する。
【0086】
「メソッド種別」は、HTTPメソッドの種別が「GET」であるか「POST」であるかを選択させる。
【0087】
「リクエストヘッダー」は、HTTPリクエストで使用されるHTTPヘッダーである。「リクエストヘッダー」は、例えば、30日以内の配達状況を取得するように指定する場合、名前として期間を示す「Period」、値として「30」を入力する。
【0088】
「リクエストボディ」は、HTTPリクエストで使用されるHTTPボディである。
【0089】
「レスポンスタイプ」は、「JSON」と「XML」とのいずれかを選択させる。
【0090】
「レスポンスボディ」は、項目名の識別情報である変数名と、当該変数名についての変換元キー名(項目名)と、を入力させる。なお、識別情報としては、変数名に限るものではなく、各種の情報を用いることができる。
【0091】
図11に示す画面G2で入力された情報は、図9-4に示すオブジェクト管理テーブル(API連携)に格納される。
【0092】
なお、別途ユーザ認証が必要であるが、本実施形態では省略する。例えば、予めユーザ名パスワードでログインされている状態で、シナリオを開始し、配達状況確認APIを呼び出す際に、ログインで入力されたユーザ名とパスワードでAPI認証を行うことができる。
【0093】
また、図11に示すように、ユーザによって、シナリオ設定画面G1において、一方のカードC1内に含まれるオブジェクト(例えば、「フォーム入力」等のテキスト)O1と、他方のカードC2とが線L1で結ばれると、画面入出力部301は、当該一方のカードC1内に含まれるオブジェクトO1内のテキストを、当該他方のカードC2の表示条件に設定する。
【0094】
同様に、画面入出力部301は、カードC2内に含まれるオブジェクト追加ボタンB2がクリックされると、次のカードC3の作成を受け付ける。例えば、次のカードC3は、図12に示すように、カードC3に含めるオブジェクト(例えば、「システムデータ表示」O5、「最初に戻る」O7)、当該オブジェクトO5、O7の種別(例えば、テキスト、API連携、システムデータ表示など)、当該オブジェクトの追加を指示可能なオブジェクト追加ボタン(例えば、「アクションオブジェクトを追加」)B3等を含むものとする。
【0095】
ここで、図12に示す「システムデータ表示」種別のオブジェクトO5については、カードC3の中でテキストを直接入力してもよいし、別画面(例えば、「API連携」の画面G2と同様の画面)で入力するようにしてもよい。ここで入力された「システムデータ表示」種別のオブジェクトの内容は、図9-3に示すオブジェクト管理テーブル(システムデータ表示)に格納される。
【0096】
画面入出力部301は、オブジェクト追加ボタンB3がクリックされると、特に図示しないが、追加対象のオブジェクトの種別(テキスト、API連携、システムデータ表示など)を選択可能とするカードC3の作成を受け付ける。
【0097】
以上の処理を繰り返すことにより、図8に示すシナリオテーブル133が得られる。
【0098】
続いて、チャットボットサービス処理の通常の流れについて簡単に説明する。
【0099】
ここで、図13はチャットボットサービス処理の通常の流れを示すシーケンス図である。図13に示すように、ユーザは、ユーザ端末3に対して、質問文を入力し、送信を指示する(ステップS51)。ユーザ端末3は、チャットボットサービスサーバ11に対し、質問文を送信する(ステップS52)。
【0100】
チャットボットサービスサーバ11は、関連シナリオの有無に基づいて応答画面を生成する(ステップS53)。その後、チャットボットサービスサーバ11は、ユーザ端末3に対し、応答画面を応答する(ステップS54)。
【0101】
ユーザ端末3は、チャットボットサービスサーバ11からの応答画面を表示する(ステップS55)。ユーザは、ユーザ端末3に対して、シナリオの起動を指示する(ステップS56)。
【0102】
ユーザ端末3は、チャットボットサービスサーバ11に対し、シナリオ起動を要求する(ステップS57)。
【0103】
続いて、応答画面の生成処理の流れについて説明する。
【0104】
ここで、図14は応答画面の生成処理の流れを示すシーケンス図である。図14に示すように、ユーザ端末3においてユーザ(会話ユーザ)により特定の「テキスト」オブジェクトの選択を受け付けると(ステップS1)、ユーザ端末3は、チャットボットサービスサーバ11に対して、選択通知を送信する(ステップS2)。
【0105】
チャットボットサービスサーバ11は、ユーザ端末3から送信された選択通知を受信すると、特定の「テキスト」オブジェクトに対応するカードを特定する(ステップS3)。また、チャットボットサービスサーバ11は、特定したカードに含まれるオブジェクトを特定する(ステップS4)。
【0106】
続いて、「API連携」オブジェクトが含まれる場合、チャットボットサービスサーバ11は、オブジェクトの設定情報をオブジェクト管理テーブル(API連携)140-4から取得する(ステップS5)。
【0107】
次に、チャットボットサービスサーバ11は、外部システム6に対するリクエストを生成する(ステップS6)。
【0108】
次に、チャットボットサービスサーバ11は、外部連携サーバ12を介して外部システム6に対してAPIを呼び出す処理(リクエストヘッダー、リクエストボディの送信)を行う(ステップS7)。その後、チャットボットサービスサーバ11は、外部連携サーバ12を介して外部システム6から応答(レスポンスボディ)を受け取る(ステップS8)。
【0109】
次に、チャットボットサービスサーバ11は、外部システム6から応答されたレスポンスを解析する(ステップS9)。その後、チャットボットサービスサーバ11は、取得情報を保存する(ステップS10)。
【0110】
ここで、ステップS10における取得情報を保存する処理について詳述する。
【0111】
図15は、取得情報を保存する処理の流れを示すフローチャートである。図15に示すように、チャットボットサービスサーバ11は、レスポンスボディに含まれる各キー(項目名)とバリュー(項目値)のセットを取得する(ステップS21)。以下、各キー名ごとに処理(ステップS22~S25)を繰り返す。
【0112】
まず、チャットボットサービスサーバ11は、各キー(項目名)のキー名を「変換キー名」として、当該「変換キー名」に対応する「変数名」を取得する(ステップS22)。
【0113】
次に、チャットボットサービスサーバ11は、「変数名」を取得できたかを判断する(ステップS23)。
【0114】
チャットボットサービスサーバ11は、「変数名」を取得できたと判断すると(ステップS23のYes)、取得した「変数名」とバリュー(項目値)とを対応付けて取得情報管理テーブルに登録する(ステップS24)。
【0115】
ここで、図16は取得情報管理テーブル150の一例を示す図である。図16に示すように、取得情報管理テーブル150は、取得した「変数名」とバリュー(項目値)と取得した「変数名」の種別と対応付けて記憶する。「変数名」の種別は、数字、文字列などである。
【0116】
チャットボットサービスサーバ11は、「変数名」を取得できないと判断すると(ステップS23のNo)、キー(項目名)とバリュー(項目値)とを対応付けて登録する(ステップS25)。
【0117】
図14に戻り、チャットボットサービスサーバ11は、当該オブジェクトに対応するカードを特定し(ステップS11)、ステップS4に戻る(ステップS12)。
【0118】
一方、「システムデータ表示」オブジェクトが含まれる場合、チャットボットサービスサーバ11は、オブジェクト管理テーブル(システムデータ表示)140-3に記憶されている取得情報から各オブジェクトIDに対応する値を取得する(ステップS13)。
【0119】
次に、チャットボットサービスサーバ11は、変数名以外のテキストと合体させたテキストを生成する(ステップS14)。
【0120】
最後に、チャットボットサービスサーバ11は、次に表示するカードの画面を生成し(ステップS15)、ユーザ端末3に対して、次に表示するカードの画面データを応答する(ステップS16)。
【0121】
ユーザ端末3は、次に表示するカードの画面データを受け取ると、ユーザ画面(チャット画面)を更新する(ステップS17)。
【0122】
ここで、図17はチャットボットサービスにより表示されるチャット画面の一例を示す図である。本実施の形態では、画面入出力部301は、図17に示すように、チャット画面G3をユーザ端末3に表示する。
【0123】
画面入出力部301は、配達状況確認に関する質問情報(例えば、「追跡番号をお持ちの場合は、こちらのページからご確認いただけます。https://○○○/aaa ・・・・)と、カスタムシナリオで設定された追加メッセージ「チャットで確認される場合は、「配達状況確認」ボタンをクリックしてください。」およびカスタムシナリオで設定された「配達状況確認」ボタンB11と、を含むカードC11をチャット画面G3に表示させる。
【0124】
画面入出力部301は、ユーザにより「配達状況確認」ボタンB11を押された場合、ユーザにより「配達状況確認」ボタンB11を押されたことを示すメッセージ情報M1(例えば、「配達状況確認」)をチャット画面G3に表示させる。
【0125】
加えて、画面入出力部301は、カスタムシナリオを起動させ、質問情報(例えば、「追跡番号を入力してください。」)を含むカードC12をチャット画面G3に表示させる。
【0126】
画面入出力部301は、ユーザにより「追跡番号」が入力された場合、ユーザにより入力された情報(例えば、「123456789012」)M2をチャット画面G3に表示させる。
【0127】
加えて、画面入出力部301は、カスタムシナリオを起動させ、応答情報(例えば、「配達予定日:11月12日 18時~20時」)およびカスタムシナリオで設定された「最初に戻る」ボタンB12と、を含むカードC13をチャット画面G3に表示させる。
【0128】
このように本実施形態によれば、応答情報の特定に用いられた質問情報に対応するシナリオ情報が登録されている場合、当該応答情報と当該シナリオ情報に基づいて特定された表示情報とをユーザ端末に表示する。これにより、チャットボット機能において、応答に対してユーザが所定の作業を行うことで表示される情報を、所定の作業を行う必要なく、適切に取り扱うことができる。
【0129】
(第2の実施の形態)
次に、第2の実施の形態について説明する。
【0130】
第2の実施の形態は、カスタムシナリオから連携先のFAQを設定する点が、第1の実施の形態と異なる。以下、第2の実施の形態の説明では、第1の実施の形態と同一部分の説明については省略し、第1の実施の形態と異なる箇所について説明する。
【0131】
ここで、図18は第2の実施の形態にかかる配達状況確認のシナリオ設定画面の一例を示す図である。
【0132】
画面入出力部301は、カードC2内に含まれるオブジェクト追加ボタンB2がクリックされると、次のカードC3の作成を受け付ける。例えば、次のカードC3は、図18に示すように、カードC3に含めるオブジェクト(例えば、「システムデータ表示」O5、「最初に戻る」O7)、当該オブジェクトO5、O7の種別(例えば、テキスト、API連携、システムデータ表示など)、当該オブジェクトの追加を指示可能なオブジェクト追加ボタン(例えば、「アクションオブジェクトを追加」)B3等を含むものとする。
【0133】
ここで、図18に示す「システムデータ表示」種別のオブジェクトO5については、カードC3の中でテキストを直接入力してもよいし、カスタムシナリオから連携先のFAQを設定するようにしてもよい。ここで入力された「システムデータ表示」種別のオブジェクトの内容は、図9-3に示すオブジェクト管理テーブル(システムデータ表示)に格納される。
【0134】
このように本実施形態によれば、シナリオ情報を設定する画面であって、シナリオ情報に対応付けて登録させる質問応答情報を指定可能なシナリオ設定画面を、管理者端末4に表示する。これにより、チャットボット機能において、応答に対してユーザが所定の作業を行うことで表示される情報を、所定の作業を行う必要なく、適切に取り扱うことができる。
【0135】
(第3の実施の形態)
次に、第3の実施の形態について説明する。
【0136】
第3の実施の形態は、カスタムシナリオから連携先のFAQ候補の提示する点が、第1の実施の形態および第2の実施の形態と異なる。以下、第3の実施の形態の説明では、第1の実施の形態または第2の実施の形態と同一部分の説明については省略し、第1の実施の形態または第2の実施の形態と異なる箇所について説明する。
【0137】
ここで、図19は第3の実施の形態にかかる配達状況確認のシナリオ設定画面の一例を示す図である。
【0138】
画面入出力部301は、カードC2内に含まれるオブジェクト追加ボタンB2がクリックされると、次のカードC3の作成を受け付ける。例えば、次のカードC3は、図19に示すように、カードC3に含めるオブジェクト(例えば、「システムデータ表示」O5、「最初に戻る」O7)、当該オブジェクトO5、O7の種別(例えば、テキスト、API連携、システムデータ表示など)、当該オブジェクトの追加を指示可能なオブジェクト追加ボタン(例えば、「アクションオブジェクトを追加」)B3等を含むものとする。
【0139】
ここで、図19に示す「システムデータ表示」種別のオブジェクトO5については、カードC3の中でテキストを直接入力してもよいし、カスタムシナリオから連携先のFAQ候補の提示するようにしてもよい。ここで入力された「システムデータ表示」種別のオブジェクトの内容は、図9-3に示すオブジェクト管理テーブル(システムデータ表示)に格納される。
【0140】
内部登録部121は、連携先のFAQ候補の提示としては、例えば、シナリオ名称「配達状況確認」で登録済みのFAQを検索し、特定したFAQをシナリオ情報と対応付けて登録する質問情報の連携候補として特定する。
【0141】
図20は、シナリオテーブル133のデータ構成の一例を示す図である。図20に示すように、図20に示すように、本実施形態のシナリオテーブル133は、チャットボットがユーザ端末3との会話に使用するシナリオを格納する。シナリオテーブル133は、シナリオID(シナリオを特定する識別情報)、シナリオの名称であるシナリオ名、シナリオに含まれるカードのIDであるカードID(カードを特定する識別情報)、カード種別、カード内に含まれるオブジェクト(ボタン)の識別情報であるオブジェクトID、および呼び出し元オブジェクトIDを対応付けて記憶する。
【0142】
加えて、本実施形態のシナリオテーブル133は、連携質問応答1、連携質問応答2などを、シナリオIDに対応づけて記憶する。各連携質問応答は、連携候補である特定したFAQである。各連携質問応答は、連携質問回答IDに対応づけて追加メッセージを記憶する。
【0143】
このように本実施形態によれば、シナリオ情報を設定するシナリオ設定画面において、特定された質問情報の候補を表示させ、質問情報の候補のうち、ユーザにより選択された質問情報とシナリオ情報とを対応付けて登録する。これにより、チャットボット機能において、応答に対してユーザが所定の作業を行うことで表示される情報を、所定の作業を行う必要なく、適切に取り扱うことができる。
【0144】
(第4の実施の形態)
次に、第4の実施の形態について説明する。
【0145】
第4の実施の形態は、複数のカスタムシナリオをFAQに連携させる点が、第1の実施の形態ないし第3の実施の形態と異なる。以下、第4の実施の形態の説明では、第1の実施の形態ないし第3の実施の形態と同一部分の説明については省略し、第1の実施の形態ないし第3の実施の形態と異なる箇所について説明する。
【0146】
ここで、図21は第4の実施の形態にかかる画面入出力部301が表示する質問応答設定画面Xの一例を示す図である。画面入出力部301は、質問応答情報を設定する画面であって、質問応答情報に対応付けて登録させるシナリオ情報を指定可能な質問応答設定画面Xを、UIとしてユーザ端末3に表示させる。
【0147】
図21に示す質問応答設定画面Xの例は、チャットボットによって会話するにあたり必要な質問応答情報の追加例を示すものである。
【0148】
図21に示す質問応答設定画面Xでは、カテゴリ選択部aと、質問入力部bと、応答入力部cと、連携先のカスタムシナリオ選択部dと、追加メッセージ入力部eと、登録ボタンfと、キャンセルボタンgと、を備える。
【0149】
また、本実施形態においては、図5に示す質問応答設定画面Xに加えて、連携先のカスタムシナリオ選択部dとは別の連携先のカスタムシナリオ選択部hと、追加メッセージ入力部eとは別の追加メッセージ入力部jと、を備える。
【0150】
連携先のカスタムシナリオ選択部hは、連携先の外部システム6と連携して応答情報を取得するためのカスタムシナリオのユーザからの入力を受け付ける。図21に示す質問応答設定画面Xでは、プルダウンリストによって「会員登録」が選択されている。なお、プルダウンリストは、「会員登録」の他、「資料請求」「有給休暇申請」などの各種のカスタムシナリオを選択可能とする。
【0151】
追加メッセージ入力部jは、カスタムシナリオを表示する際に、併せて表示するメッセージのユーザからの入力を受け付ける。図21に示す質問応答設定画面Xでは、
「○○会員登録すると、再配達の申し込みが簡単にできます。会員登録される場合は、「会員登録」ボタンをクリックしてください。」
が入力されている。
【0152】
図22は、FAQテーブル131のデータ構成の一例を示す図である。図22に示すように、本実施形態のFAQテーブル131は、「質問応答ID」、「更新日時」、「カテゴリ」、「質問テキスト」、「応答テキスト」、連携シナリオ1(「連携シナリオID」及び「追加メッセージ」)、連携シナリオ2(「連携シナリオID」及び「追加メッセージ」)、を対応付けている。
【0153】
「連携シナリオID」は、質問応答設定画面Xの連携先のカスタムシナリオ選択部dで選択された連携するカスタムシナリオを特定するための識別情報、および質問応答設定画面Xの連携先のカスタムシナリオ選択部hで選択された連携するカスタムシナリオを特定するための識別情報である。
【0154】
「追加メッセージ」は、質問応答設定画面Xの追加メッセージ入力部eを介して入力されたメッセージ、および、質問応答設定画面Xの追加メッセージ入力部jを介して入力されたメッセージである。
【0155】
ここで、図23はチャットボットサービスにより表示されるチャット画面の一例を示す図である。本実施の形態では、画面入出力部301は、図23に示すように、チャット画面G3をユーザ端末3に表示する。
【0156】
画面入出力部301は、カードC11をチャット画面G3に表示させる。
【0157】
カードC11は、配達状況確認に関する質問情報(例えば、「追跡番号をお持ちの場合は、こちらのページからご確認いただけます。https://○○○/aaa ・・・・)と、カスタムシナリオで設定された追加メッセージ「チャットで確認される場合は、「配達状況確認」ボタンをクリックしてください。」およびカスタムシナリオで設定された「配達状況確認」ボタンB11と、を含む。
【0158】
また、カードC11は、カスタムシナリオで設定された追加メッセージ「○○会員登録すると、再配達の申し込みが簡単にできます。会員登録される場合は、「会員登録」ボタンをクリックしてください。」およびカスタムシナリオで設定された「会員登録」ボタンB13と、を含む。
【0159】
画面入出力部301は、ユーザにより「配達状況確認」ボタンB11を押された場合、ユーザにより「配達状況確認」ボタンB11を押されたことを示すメッセージ情報M1(例えば、「配達状況確認」)をチャット画面G3に表示させる。
【0160】
なお、画面入出力部301は、ユーザにより「会員登録」ボタンB13を押された場合、ユーザにより「会員登録」ボタンB13を押されたことを示すメッセージ情報(図示せず)(例えば、「会員登録」)をチャット画面G3に表示させる。
【0161】
このように本実施形態によれば、チャットボット機能において、応答に対してユーザが所定の作業を行うことで表示される情報を、所定の作業を行う必要なく、適切に取り扱うことができる。
【0162】
なお、本実施の形態のチャットボットサービスサーバ11で実行されるプログラムは、ROM22等に予め組み込まれて提供される。本実施の形態のチャットボットサービスサーバ11で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD-ROM、フレキシブルディスク(FD)、CD-R、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【0163】
さらに、本実施の形態のチャットボットサービスサーバ11で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施の形態のチャットボットサービスサーバ11で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【0164】
本実施の形態のチャットボットサービスサーバ11で実行されるプログラムは、上述した各部(通信部101、連携判断部102、検索部103、連携部104、登録部105)を含むモジュール構成となっており、実際のハードウェアとしてはCPU21(プロセッサの一例)が上記ROM22からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、通信部101、連携判断部102、検索部103、連携部104、登録部105が主記憶装置上に生成されるようになっている。
【0165】
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)や従来の回路モジュール等のデバイスを含むものとする。
【0166】
実施例に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものにすぎない。ある実施形態では、チャットボットサービスサーバ11は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。同様に、外部連携サーバ12は、互いに通信するように構成された複数のコンピューティングデバイスを含むことができる。また、チャットボットサービスサーバ11と外部連携サーバ12の各要素は、1つのサーバ装置にまとめられていても良いし、複数の装置に分けられていても良い。
【0167】
なお、チャットボットサービスサーバ11は、通信機能を備えた装置であれば、PCに限られない。チャットボットサービスサーバ11は、例えば、PJ(Projector:プロジェクタ)、IWB(Interactive White Board:相互通信が可能な電子式の黒板機能を有する白板)、デジタルサイネージ等の出力装置、HUD(Head Up Display)装置、産業機械、撮像装置、集音装置、医療機器、ネットワーク家電、自動車(Connected Car)、ノートPC(Personal Computer)、携帯電話、スマートフォン、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPCまたはデスクトップPC等であってもよい。
【0168】
明細書中のテーブル(表)は、機械学習の学習効果によって生成されたものでもよい。ここで、機械学習とは、コンピュータに人のような学習能力を獲得させるための技術であり、コンピュータが、データ識別等の判断に必要なアルゴリズムを、事前に取り込まれる学習データから自律的に生成し、新たなデータについてこれを適用して予測を行う技術のことをいう。機械学習のための学習方法は、教師あり学習、教師なし学習、半教師学習、強化学習、深層学習のいずれかの方法でもよく、さらに、これらの学習方法を組み合わせた学習方法でもよく、機械学習のための学習方法は問わない。
【0169】
上述の実施の形態は一例として提示したものであり、本発明の範囲を限定することは意図していない。この新規な実施の形態はその他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことも可能である。また、実施の形態及び実施の形態の変形は発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0170】
3 ユーザ端末
4 管理者端末
11 情報処理装置
100 情報処理システム
105 登録部
301 表示制御部
302 第1の特定部
306 第2の特定部
【先行技術文献】
【特許文献】
【0171】
【特許文献1】特開2022-166258号公報
図1
図2
図3
図4
図5
図6
図7
図8
図9-1】
図9-2】
図9-3】
図9-4】
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23