(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023181204
(43)【公開日】2023-12-21
(54)【発明の名称】情報処理システム、チャットボットシステム、情報管理方法、プログラム
(51)【国際特許分類】
H04L 51/02 20220101AFI20231214BHJP
H04M 11/00 20060101ALI20231214BHJP
【FI】
H04L51/02
H04M11/00 302
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2023173123
(22)【出願日】2023-10-04
(62)【分割の表示】P 2021110763の分割
【原出願日】2021-07-02
(71)【出願人】
【識別番号】000006747
【氏名又は名称】株式会社リコー
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】毛利 隆軌
(57)【要約】
【課題】編集権限があるカテゴリの質問回答情報の編集を受け付ける情報処理システムを提供すること。
【解決手段】第一の端末装置2から送信された質問に対して、質問回答情報に基づいて、回答を前記第一の端末装置に送信する情報処理システム1であって、第二の端末装置からログインしたアカウントに編集権限があるカテゴリの前記質問回答情報の編集を受け付ける管理画面生成部、を有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
第一の端末装置から送信された質問に対して、質問回答情報に基づいて、回答を前記第一の端末装置に送信する情報処理システムであって、
第二の端末装置からログインしたアカウントに編集権限があるカテゴリの前記質問回答情報の編集を受け付ける管理画面生成部、を有する情報処理システム。
【請求項2】
前記管理画面生成部は、前記質問回答情報の編集権限があるカテゴリがアカウントに対応付けられたアカウント情報に基づいて、前記アカウントに編集権限があるカテゴリの前記質問回答情報を表示する制御を含む前記質問回答情報を前記第二の端末装置に送信する請求項1に記載の情報処理システム。
【請求項3】
前記管理画面生成部は、前記質問回答情報の編集権限があるアカウントが管理者に対応付けられたアカウント情報に基づいて、前記アカウントに編集権限があるカテゴリの前記質問回答情報を前記第二の端末装置に送信する請求項1に記載の情報処理システム。
【請求項4】
前記第一の端末装置から送信された質問のカテゴリにチャットで回答するオペレータが存在する場合、前記回答が表示される画面に、前記オペレータとのチャットを受け付ける第一のボタンを表示することを前記第一の端末装置に要求する対話制御部を有する請求項1~3のいずれか1項に記載の情報処理システム。
【請求項5】
前記第一の端末装置から送信された質問のカテゴリにチャットで回答するオペレータが存在する場合、
前記対話制御部は、前記回答が送信された直後、前記オペレータとのチャットを受け付ける第二のボタンを表示すること前記第一の端末装置に要求する対話制御部を有する請求項4に記載の情報処理システム。
【請求項6】
前記対話制御部は、定期的に、前記第一の端末装置から送信された質問のカテゴリにチャットで回答するオペレータが存在するか否かを判断し、前記質問のカテゴリにチャットで回答するオペレータが存在する場合、前記オペレータとのチャットを受け付ける第二のボタンを表示すること前記第一の端末装置に要求する対話制御部を有する請求項4に記載の情報処理システム。
【請求項7】
前記第一の端末装置で表示された前記第一のボタン又は前記第二のボタンが押下され、前記オペレータとのチャット要求を受信した場合、前記対話制御部は、前記第一の端末装置から送信された質問のカテゴリにチャットで回答するオペレータを特定し、
前記オペレータが操作するオペレータ端末を呼び出す呼出部を有する請求項5又は6に記載の情報処理システム。
【請求項8】
前記質問回答情報の編集権限があるカテゴリがアカウントに対応付けられたアカウント情報には、アカウントに対応付けて、有人チャットで対応可能な前記質問回答情報のカテゴリ、又は、編集可能な前記質問回答情報のカテゴリが登録されており、
前記対話制御部は、前記アカウント情報に基づいて、前記第一の端末装置から送信された質問のカテゴリにチャットで回答するオペレータが存在するか否かを判断する請求項4~7のいずれか1項に記載の情報処理システム。
【請求項9】
第一の端末装置から送信された質問に対して、質問回答情報に基づいて、回答を前記第一の端末装置に送信する情報処理システムと、第二の端末装置とを有するチャットボットシステムであって、
前記情報処理システムは、
第二の端末装置からログインしたアカウントに編集権限があるカテゴリの前記質問回答情報の編集を受け付ける管理画面生成部を有し、
前記第二の端末装置は、
前記質問回答情報を受信し、前記アカウントに編集権限があるカテゴリの前記質問回答情報を表示するチャットボットシステム。
【請求項10】
前記情報処理システムは、
前記第一の端末装置から送信された質問のカテゴリにチャットで回答するオペレータが存在する場合、前記回答が表示される画面に、前記オペレータとのチャットを受け付ける第一のボタンを表示することを前記第一の端末装置に要求する対話制御部を有し、
前記第一の端末装置は、
前記回答が表示される画面に、前記オペレータとのチャットを受け付ける第一のボタンを表示する請求項9に記載のチャットボットシステム。
【請求項11】
第一の端末装置から送信された質問に対して、質問回答情報に基づいて、回答を前記第一の端末装置に送信する情報処理システムが行う情報管理方法であって、
第二の端末装置からログインしたアカウントに編集権限があるカテゴリの前記質問回答情報の編集を受け付ける情報管理方法。
【請求項12】
第一の端末装置から送信された質問に対して、質問回答情報に基づいて、回答を前記第一の端末装置に送信する情報処理システムを、
第二の端末装置からログインしたアカウントに編集権限があるカテゴリの前記質問回答情報の編集を受け付ける管理画面生成部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム、チャットボットシステム、情報管理方法、及びプログラムに関する。
【背景技術】
【0002】
情報処理システムが、ネットワーク経由でユーザーが入力するテキスト、音声又は画像等をパターン認識する。次に、情報処理システムがパターン認識の結果に基づいて、質問回答情報を検索してユーザーが行った質問に対する回答や機器制御等を行う、いわゆるチャットボットシステムが知られている。また、チャットボットシステムによっては、ユーザーの指示に応じて、オペレータがチャットを行う有人対応を行うことができる。
【0003】
質問のカテゴリで回答を絞り込むチャットサービスが知られている(例えば、特許文献1参照。)。特許文献1には、ユーザーの選択操作により、問い合わせのキーワード、FAQ情報に関連するカテゴリ、あるいはタグを任意に組み合わせた絞り込み型対話UIによる検索処理を行うチャットサービスが開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の技術では、カテゴリに編集権限が設定されていないという問題があった。ボットが適切な回答をユーザーに応答するために、管理者が質問回答情報の編集(追加・変更・削除など)を行うが、複数の管理者のそれぞれが、異なるカテゴリの質問回答情報の編集を行う場合がある。例えば、総務部の管理者が総務関連の質問回答情報の編集を行い、経理部の管理者が経理関連の質問回答情報の編集を行う場合、他部門の質問回答情報を誤って編集する場合があった。
【0005】
上記課題に鑑み、本発明は、編集権限があるカテゴリの質問回答情報の編集を受け付ける情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題に鑑み、本発明は、第一の端末装置から送信された質問に対して、質問回答情報に基づいて、回答を前記第一の端末装置に送信する情報処理システムであって、第二の端末装置からログインしたアカウントに編集権限があるカテゴリの前記質問回答情報の編集を受け付ける管理画面生成部、を有する。
【発明の効果】
【0007】
編集権限があるカテゴリの質問回答情報の編集を受け付ける情報処理システムを提供できる。
【図面の簡単な説明】
【0008】
【
図1】有人対応が可能なチャットボットシステムの動作の概略を説明する図である。
【
図2】チャットボットシステムの全体構成例を示す図である。
【
図3】コンピュータの一例のハードウェア構成図である。
【
図4】チャットボットシステムが有するサーバー装置、ユーザー端末、管理者端末及びオペレータ端末の機能構成例を示す図である。
【
図5】シナリオ情報に基づく対話の流れの例を示す図である。
【
図6】カテゴリ管理情報記憶部が保持するカテゴリ管理情報の一例を示す図である。
【
図7】質問回答情報記憶部が保持する質問回答情報の一例を示す図である。
【
図8】アカウント情報記憶部が保持するアカウント情報の一例を示す図である。
【
図9】チャット履歴情報記憶部が保持するチャット履歴情報の一例を示す図である。
【
図10】管理者が新規にアカウント情報を登録するアカウント登録画面の一例を示す図である。
【
図11】管理者が既存のアカウント情報を変更するアカウント編集画面の一例を示す図である。
【
図13】管理者が編集可のみボタンを押下した後に表示される質問回答管理画面の一例を示す図である。
【
図15】管理者が質問回答情報を編集する手順を示すシーケンス図の一例である。
【
図16】ユーザー端末が表示するチャット画面の一例を示す図である。
【
図17】オペレータが表示するチャット画面の一例を示す図である。
【
図18】ユーザーがボットとチャットする手順を示すシーケンス図の一例である。
【
図19】ユーザーが有人チャットを開始する手順を示すシーケンス図の一例である。
【
図20】
図18のステップS25の詳細な手順を説明するフローチャート図の一例である。
【
図21】
図19のステップS43の詳細な手順を説明するフローチャート図の一例である。
【
図22】有人対応ボタンを有するチャット画面の一例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明を実施するための形態の一例としてチャットボットシステムと、チャットボットシステムが行う情報管理方法について図面を参照しながら説明する。
【0010】
<チャットボットシステムの概略>
図1は、有人対応が可能なチャットボットシステム100の動作の概略を説明する図である。ユーザー端末2ではWebブラウザが動作しており、サーバー装置1が提供するWebアプリを実行する。Webアプリは、ユーザーの質問に回答するチャットボットを実現している。
【0011】
(1) 例えば、カタログが欲しいユーザー、商品の仕様を知りたいユーザー、又は、購入した商品の使い方が分からないユーザー等は、Webアプリが動作しているユーザー端末2に質問を入力する。
【0012】
(2) サーバー装置1は質問からキーワードを抽出して、質問の内容を理解する。サーバー装置1は質問と回答の対応を学習したAI(Artificial Intelligence)でもよい。
【0013】
(3) サーバー装置1は、質問回答情報記憶部42から質問に対応する回答を取得する。
【0014】
(4) サーバー装置1は対話シナリオや回答の有無を含む回答の数等に基づいて、回答をユーザー端末2(第一の端末装置の一例)に送信する。
【0015】
(5) サーバー装置1は質問と回答の対応など、問い合わせ履歴をチャット履歴情報記憶部45に保存しておく。
【0016】
(6) 一方、サーバー装置1が回答を見つけられない場合(ユーザーが期待した回答がない場合を含む)、ユーザーは有人対応を希望する操作をユーザー端末2に入力する。これにより、過去のチャット内容が、チャット中の質問のカテゴリに対応できるオペレータに転送される。
【0017】
このように、チャットボットシステム100は、ユーザーが質問しているカテゴリに対応できるオペレータを自動的に判断して、チャットを転送できる。
【0018】
(7) オペレータは自分が持つ知識や調べた内容を用いて、質問に対する回答をオペレータ端末5に入力するので、ユーザー端末2はユーザーが期待する回答を受け取りやすくなる。
【0019】
(8) 管理者は管理者端末3(第二の端末装置の一例)を操作して、質問に対する回答を充実させる等のため、質問回答情報を編集できる。編集権限がある質問回答情報のカテゴリが管理者ごとに予め決まっており、管理者は、編集権限があるカテゴリの質問回答情報のみを編集できる。
【0020】
編集権限がある質問回答情報のカテゴリが管理者ごとに決まっているので、管理者は自部門以外の質問回答情報を編集できず、誤って他の部門が管理している質問回答情報を編集することを抑制できる。
【0021】
<用語について>
会話とは、互いに話したり聞いたりして、共通の話を進めることをいう。会話は、質問と回答が交互に繰り返されて進行する場合がある。質問とは、疑問や理由を問いただすこと、又は、そのための情報をいう。回答とは、質問に対する返事である。なお、会話の内容は質問と回答には限らない。
【0022】
会話のうち、リアルタイムに複数の人が文字を入力して(キーボードを使用しても音声入力でもよい)会話を交わすことをチャットという。会話とチャットは厳密には区別されなくてよい。
【0023】
ボットとは、一定のタスクや処理を自動化するためのアプリケーションやプログラムをいう。本実施形態では、チャットボットを略してボットという。
【0024】
管理者は、質問回答情報を編集できる者の便宜的な呼び名であり、編集権限があれば管理者でなくてもよい。また、管理者にカテゴリごとの編集権限が設定されているのでなく、管理者の所属部署でカテゴリの編集権限の有無が決まっていてもよい。例えば、管理者が人事部なら、人事のカテゴリの編集権限がある。
【0025】
<システム構成例>
図2は、チャットボットシステムの全体構成例を示す図である。チャットボットシステム100は、サーバー装置1を有する。サーバー装置1は、ユーザー端末2、管理者端末3及びオペレータ端末5の1つ以上とネットワークを介して通信する場合がある。
【0026】
サーバー装置1は、チャットボットサービスを提供する情報処理システムの例である。サーバーとは、クライアントからの要求に対して情報や処理結果を提供する機能を果たすコンピュータやソフトウェアである。サーバー装置1は、インターネット上に存在してもよいし、オンプレミスに存在してもよい。本実施形態では、サーバー装置1はオンプレミスに存在すると共に、社外からのチャット要求をサーバー装置1に伝達する仕組みを有している。
【0027】
また、サーバー装置1はクラウドコンピューティングに対応していてよい。クラウドとは、特定のハードウェア資源を意図しない場合に用いられる用語である。
【0028】
サーバー装置1は、一台の情報処理装置で構成されても、複数の情報処理装置で構成されてもよい。以下、サーバー装置1が1台でサービスを提供する例で説明する。
【0029】
ユーザー端末2は、チャットボットサービスにおいて、ユーザーが質問を入力したり、回答を閲覧したりする操作を行う情報処理装置である。このユーザーは社員の場合もあるし、社外の一般人の場合もある。ユーザー端末2は、Webブラウザ又はアプリ(Webアプリに対しネイティブアプリという)が動作している。ユーザー端末2は、具体的には、スマートフォン、携帯電話、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPC(Personal Computer)、PC、などであるがこれらには限られない。
【0030】
管理者端末3は、サーバー装置1等を管理するため、管理者等が質問回答情報の編集等の操作を行う情報処理装置である。管理者端末3は、Webブラウザ又はアプリ(Webアプリに対しネイティブアプリという)が動作している。管理者端末3は、具体的には、スマートフォン、携帯電話、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPC(Personal Computer)、PC、などであるがこれらには限られない。
【0031】
オペレータ端末5は、チャットボットサービスにおいて、有人対応を行うオペレータが回答の入力等の操作を行う情報処理装置である。オペレータ端末5は、Webブラウザ又はアプリ(Webアプリに対しネイティブアプリという)が動作している。オペレータ端末5は、具体的には、スマートフォン、携帯電話、タブレット端末、ゲーム機、PDA(Personal Digital Assistant)、デジタルカメラ、ウェアラブルPC(Personal Computer)、PC、などであるがこれらには限られない。また、管理者とオペレータが同じ社員であってもよい(管理者端末3とオペレータ端末5は同じものでもよい)。
【0032】
サーバー装置1、ユーザー端末2、管理者端末3及びオペレータ端末5は、ネットワーク4を介して互いに接続する。例えば、ネットワーク4は、LAN(Local Area Network)、WAN、及びインターネット等の1つ以上の組み合わせにより構築される。ネットワーク4に電話通信網が接続される場合もある。ネットワーク4の一部又は全体が有線又は無線でもよい。更に、可視光通信やBluetooth(登録商標)、赤外線通信等の近距離通信が含まれてもよい。
【0033】
サーバー装置1は、ユーザー端末2、管理者端末3及びオペレータ端末5等と通信を行う。例えば、サーバー装置1は、ユーザーが入力する質問等の入力情報に対して、回答等となる応答情報を応答する、いわゆるチャットボットサービス等を提供する。
【0034】
また、サーバー装置1は、ユーザー端末2及びオペレータ端末5との間、又は複数のユーザー端末間において、メッセージの送受信、いわゆるチャット等のサービスを提供する。すなわち、サーバー装置1は、インスタントメッセージサービス等を提供する。
【0035】
<ハードウェア構成例>
<<コンピュータ>>
図2のサーバー装置1、ユーザー端末2、管理者端末3及びオペレータ端末5は例えば
図3に示すハードウェア構成のコンピュータにより実現される。
図3はコンピュータの一例のハードウェア構成図である。
図3のコンピュータ500はコンピュータによって構築されており、
図3に示されているように、CPU501、ROM502、RAM503、HD504、HDDコントローラ505(Hard Disk Drive)、ディスプレイ506、外部機器接続I/F508(Interface)、ネットワークI/F509、バスライン510、キーボード511、ポインティングデバイス512、光学ドライブ514(Digital Versatile Disk Rewritable)、メディアI/F516を備えている。
【0036】
これらのうち、CPU501は、コンピュータ全体の動作を制御する。ROM502は、IPL等のCPU501の駆動に用いられるプログラムを記憶する。RAM503は、CPU501のワークエリアとして使用される。HD504は、プログラム等の各種データを記憶する。HDDコントローラ505は、CPU501の制御にしたがってHD504に対する各種データの読み出し又は書き込みを制御する。ディスプレイ506は、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。外部機器接続I/F508は、各種の外部機器を接続するためのインターフェースである。この場合の外部機器は、例えば、USB(Universal Serial Bus)メモリやプリンタ等である。ネットワークI/F509は、通信ネットワークを利用してデータ通信をするためのインターフェースである。バスライン510は、
図3に示されているCPU501等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
【0037】
また、キーボード511は、文字、数値、各種指示などの入力のための複数のキーを備えた入力手段の一種である。ポインティングデバイス512は、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行う入力手段の一種である。光学ドライブ514は、着脱可能な記録媒体の一例としての光記憶媒体513に対する各種データの読み出し又は書き込みを制御する。なお、光記憶媒体513は、CD、DVD、Blu-Ray(登録商標)等である。メディアI/F516は、フラッシュメモリ等の記録メディア515に対するデータの読み出し又は書き込み(記憶)を制御する。
【0038】
<機能ブロック図>
図4は、チャットボットシステム100が有するサーバー装置1、ユーザー端末2、管理者端末3及びオペレータ端末5の機能構成例を示す図である。
【0039】
サーバー装置1は、取得部11、検索部12、応答部13、通信部14、対話制御部15、保存部16、呼出部17、管理画面生成部18、及び、認証部19を有する。サーバー装置1が有するこれらの機能は、
図3に示したコンピュータ500が有するCPU501が、HD504からRAM503に展開されたプログラムを実行することで実現される機能又は手段である。
【0040】
対話制御部15は、シナリオに基づいて、ユーザー端末2から質問を受け付け、また、ユーザー端末2に回答を送信するチャットボットサービスの全体を制御する。対話制御部15は、回答の有無や数に応じて、ユーザーが適切な質問を入力できるように対話を制御する。対話制御部15は、質問回答情報のカテゴリと、オペレータが対応可能なカテゴリに基づいて、呼び出すオペレータを決定する。
【0041】
また、対話制御部15は、質問回答情報のカテゴリと、オペレータが対応可能なカテゴリに基づいて、担当者とチャットしたいボタン及び有人対応ボタン171の表示制御をユーザー端末2の出力部22に対して行う。
【0042】
取得部11は、通信部14を介して、ユーザー端末2に入力される質問などの入力情報を取得する。検索部12は、入力情報に形態素解析を行い、質問回答情報記憶部42を検索する。このため、検索部12は、各質問回答情報に含まれる質問を予め形態素解析で複数のキーワードに分解しておく。そして、検索部12は、受信した質問文を形態素解析で複数のキーワードに分解する。また、検索部12は、別途、登録された類義語(例えば、採用の類語として「雇う」などを登録する)を参照し、類義語でも質問回答情報を検索する。検索部12はユーザーの質問と質問回答情報の質問の一致度を算出し、一致度が閾値以上で高い順にN個の回答を決定する。応答部13は、通信部14を介して、検索部12が検索して得た回答を応答情報としてユーザー端末2に応答する。
【0043】
取得部11、検索部12、及び、応答部13によって、入力部21を介して入力される入力情報に対する応答情報が出力部22で出力される。したがって、取得部11、検索部12、及び、応答部13によって、ボット200が実現される。
【0044】
なお、検索部12は、単に形態素解析でキーワードを決定するのでなく、質問とその意図の対応を学習したAIでキーワードを決定してもよい。この場合、意図がキーワードとなるが、質問に含まれないキーワードも抽出可能となる。また、検索部12は、質問だけでなく、時間帯や天候などの状況を考慮してキーワードを決定可能になる。
【0045】
保存部16は、チャットの履歴をチャット履歴情報記憶部45に保存する。呼出部17は、ユーザーが有人対応を望んだ場合に、対話制御部15が決定したオペレータ端末5を呼び出す。呼出部17は、オペレータ端末5から対話開始を取得すると、対話制御部15に通知する。対話制御部15は、ユーザー端末2とオペレータ端末5との間でチャットを開始する。
【0046】
管理画面生成部18は、管理者端末3が表示する管理画面を生成し、その画面情報を管理者端末3に提供する。画面情報は、HTML、XML、スクリプト言語、及びCSS(cascading style sheet)等で記述されたプログラムであり、主にHTMLによりWebページの構造が特定され、スクリプト言語によりWebページの動作が規定され、CSSによりWebページのスタイルが特定される。
【0047】
認証部19は、ユーザー名とパスワード等により管理者を認証する。認証が成功すると、管理者特定される。なお、認証は外部の認証サーバーで行われてもよいし、OAUTHなどのシングルサインオンが使用されてもよい。
【0048】
ユーザー端末2、管理者端末3及びオペレータ端末5は、それぞれ入力部21,31,51、出力部22,32,52、及び、通信部23,33,53を有する。ユーザー端末2、管理者端末3及びオペレータ端末5が有するこれらの機能は、
図3に示したコンピュータ500が有するCPU501が、HD504からRAM503に展開されたプログラムを実行することで実現される機能又は手段である。
【0049】
入力部21,31,51は、ユーザー、管理者又はオペレータからの入力や操作を受け付ける。出力部22,32,52は、サーバー装置1から送信された各種の情報(回答、画面等)をディスプレイに出力する。通信部23,33,53は、サーバー装置1と各種の情報を送受信する。
【0050】
<記憶部の内容>
以下では、
図5~
図9を参照して、サーバー装置1の記憶部40が保持する情報について説明する。
【0051】
図5は、シナリオ情報に基づく対話の流れの例を示す図である。シナリオ情報記憶部は、入力情報に応じた対話を実現するシナリオ情報を記憶する。シナリオ情報は、対話シナリオDBに予め入力されるシナリオに沿って、ユーザーとの対話が実現するように生成される。
【0052】
例えば、取得部11が、ユーザーからの入力情報を受け付けると、質問に対する回答となる応答情報を回答部が応答する流れは、シナリオ情報によって以下のように想定される。
【0053】
ステップS1002では、まず、対話制御部15は、質問の検索方法となる選択メニューをユーザー端末2に表示する。例えば、選択メニューは、「全てのカテゴリから検索」、「カテゴリから選んで検索」及び「よくある質問から検索」の3つの選択肢のうち、1つをユーザーに選択させる操作を受け付けるGUIである。なお、選択メニューは、4つ以上の選択肢又は2つ以下の選択肢を表示させてもよい。
【0054】
選択メニューによって「全てのカテゴリから検索」が選択されると(図における「全てのカテゴリから検索」である。)、シナリオは、ステップS1003に進む。
【0055】
また、選択メニューによって「よくある質問から検索」が選択されると(図における「よくある質問から選ぶ」である。)、シナリオは、ステップS1008に進む。選択メニューによって「カテゴリから選んで検索」(図における「カテゴリから選ぶ」である。)が選択されると、シナリオは、ステップS1010に進む。
【0056】
ステップS1003では、対話制御部15は、ユーザーに文字で質問を入力するように促すメッセージをユーザー端末2に表示させる。また、出力部22は、テキストボックス等のGUIをユーザー端末2に表示させて、入力部21が、質問となる文字を入力する操作を受け付ける。次に、質問が入力されると(図における「任意の質問文字を入力」である。)、シナリオは、ステップS1004に進む。
【0057】
ステップS1004では、検索部12が、質問を示す文字列を解析する。そして、検索部12は、質問回答情報記憶部42を検索して、質問に対して回答となりうる候補(以下単に「候補」という。)を抽出する。なお、検索部12は、検索の結果、候補を複数取得してもよい。
【0058】
ステップS1004による検索の結果、候補が1つ(図における「候補が1つ」である。)である場合、応答部13は、検索された候補を応答情報にして応答する。また、ステップS1004による検索の結果、候補が2つ以上(図における「候補が2つ以上」である。)である場合、シナリオは、ステップS1005に進む。ステップS1004による検索の結果、候補が検出できない場合(図における「候補が検出できなかった」である。)には、シナリオは、ステップS1006に進む。
【0059】
ステップS1005では、出力部22は、複数の候補のうち、いずれかを選択させる操作、又は、いずれの候補も非選択とする操作のうち、いずれかの操作をユーザーに行わせるGUIをユーザー端末2に表示する。
【0060】
ステップS1007では、候補のうち、いずれかを選択する操作が行われると(図における「候補を選択」である。)、対話制御部15は、選択された候補を応答情報にして応答する。一方で、非選択を選択する操作が行われると(図における「該当するものが存在しない」である。)、対話制御部15は、例えば、今の段階では質問に対する回答を表示できない等を示す謝罪のメッセージをユーザー端末2に表示する。
【0061】
ステップS1006では、出力部22が、謝罪を示すメッセージ及び再検索を行う促すメッセージをユーザー端末2に表示して、ステップS1002に戻る。
【0062】
ステップS1008では、対話制御部15は、問い合わせ履歴DBを参照して、他のユーザー等から問い合わせ頻度の高い1つ以上の質問(例えば、3つ程度である。)を抽出する。そして、出力部22は、質問を一覧にしてユーザー端末2に表示する。更に、出力部22は、他の検索方法を選択させるためのGUIをユーザー端末2に表示する。
【0063】
ステップS1009では、質問が選択されると(図における「よくある質問を選択」である。)、検索部12は、選択された質問に対する回答を質問回答情報記憶部42から検索し、応答部13が検索結果を応答情報として応答する。一方で、ステップS1009で他の検索方法が選択されると(図における「別の方法で検索を選択」である。)、シナリオは、ステップS1002に戻る。
【0064】
ステップS1010では、対話制御部15は、カテゴリ名を一覧にしてユーザー端末2に表示する。そして、カテゴリ名の一覧からカテゴリを選択する操作が行われると(図における「カテゴリを選択」である。)、シナリオは、ステップS1011に進む。
【0065】
ステップS1011では、入力部21は、質問となる文字を入力する操作を受け付ける。次に、質問が入力されると(図における「任意の質問文字を入力」である。)、取得部11が、質問を示す入力情報を取得する。そして、シナリオは、ステップS1012に進む。
【0066】
ステップS1012では、検索部12は、質問回答情報記憶部42を検索して、候補を抽出する。次に、候補が1つ(図における「回答が1つ」である。)であると、応答部13は、検索された候補を応答情報にして応答する。また、候補が2つ以上(図における「候補が2つ以上」である。)であると、シナリオは、ステップS1013に進む。候補が検出できない場合(図における「候補が検出できなかった」である。)には、シナリオは、ステップS1014に進む。
【0067】
ステップS1013では、対話制御部15は、複数の候補のうち、いずれかを選択させる操作、又は、いずれの候補も非選択とする操作のうち、いずれかの操作をユーザーに行わせるGUIをユーザー端末2に表示する。
【0068】
ステップS1015では、候補のうち、いずれかを選択する操作が行われると(図における「候補を選択」である。)、対話制御部15が、選択された候補を応答情報にして応答する。一方で、非選択を選択する操作が行われると(図における「該当するものが存在しない」である。)、対話制御部15は、例えば、今の段階では質問に対する回答を表示できない等を示す謝罪のメッセージをユーザー端末2に表示する。
【0069】
ステップS1014では、対話制御部15は、謝罪を示すメッセージ及び再検索を行う促すメッセージをユーザー端末2に表示して、ステップS1002に戻る。
【0070】
シナリオ情報は、例えば、以上のような対話の流れを想定して入力される。すなわち、シナリオ情報は、対話の流れの中で用いられるGUIの種類、メッセージ及びGUI等を出力させる順序等を管理者が設定した結果等を示す。
【0071】
図6は、カテゴリ管理情報記憶部43が保持するカテゴリ管理情報の一例である。カテゴリとは、質問回答情報を区分する上での基本的な分類をいう。カテゴリ管理情報は、質問回答情報が有するカテゴリのリストである。カテゴリ管理情報が有する各項目について説明する。
【0072】
・カテゴリ管理情報は階層構造になっており、1階層に大分類のカテゴリが、2階層に大分類のカテゴリを細分類したカテゴリが登録されている。カテゴリは1階層のみで管理されてもよい。カテゴリ管理情報は、3階層以上で管理されてもよい。
【0073】
・1階層には、商品、会社情報、及び、採用情報等のカテゴリが登録されている。2階層には、商品に対し医療機器、画像機器のカテゴリが対応付けられ、採用情報に対し新卒、キャリアのカテゴリが対応付けられている。どのようなカテゴリがあるかは、企業の業務に応じて様々である。
【0074】
図7は、質問回答情報記憶部42が保持する質問回答情報の一例である。質問回答情報は、ユーザー端末2から送信された質問の検索と、この質問に対応する回答の提供に使用される。質問回答情報が有する各項目について説明する。
【0075】
・IDは、質問回答情報(質問とその回答の対応)を識別する識別情報である。
【0076】
・カテゴリは、管理者がこの質問に対し設定したカテゴリである。管理者は適切なカテゴリを登録することで、検索部12が適切な回答を検索できるようになる。カテゴリは第1階層のものでも第2階層のものでもよい。
【0077】
・質問は、管理者が登録した、ユーザーから想定される問い合わせの具体的な内容である。質問は、上記のように形態素解析でキーワードに分解され、検索部12がユーザー端末2から送信された質問(形態素解析でキーワードに分解される)で検索される対象となる。
【0078】
・回答は、質問に対する回答である。管理者は、質問に対する適切な回答を登録しておく。
【0079】
図8は、アカウント情報記憶部44が保持するアカウント情報の一例である。アカウント情報は、チャットボットシステム100の運営側の人間(オペレータ又は管理者)に関する情報を管理する。アカウント情報が有する各項目について説明する。
【0080】
・ログインIDは、オペレータ又は管理者の識別情報である。
図8ではメールアドレスがログインIDであるが、ログインIDは、数字、アルファベット、記号等の組み合わせでもよいし、生体認証情報でもよいし、ICカード番号等でもよい。
【0081】
・パスワードは、オペレータ又は管理者が本人であることを証明するための数字、アルファベット、又は、記号等の組み合わせである。
【0082】
・名前は、オペレータ又は管理者の氏名、ニックネーム、又はID等である。
【0083】
・編集可能なカテゴリ又は対応可能なカテゴリは、管理者の場合は編集が許可されているカテゴリを示し、オペレータの場合は有人対応が可能なカテゴリを示す。
【0084】
・有人チャット対応可否は、オペレータ又は管理者が有人対応することができるか否かを示す。したがって、主にオペレータの場合は「可」が設定される。
【0085】
以上の各項目は、管理者が予め登録しておく。
【0086】
・有人チャット状態は、現在のオペレータ又は管理者の状態である。離席中は、ログインしていない、又は、操作によって離席中の状態に切り替えた場合に登録される。有人対応中は、オペレータ又は管理者がユーザーとチャット中の状態であることを示す。待機中は、オペレータ又は管理者がログインしたがチャットも離席もしていないことをいう。
【0087】
図9は、チャット履歴情報記憶部45が保持するチャット履歴情報の一例である。チャット履歴情報は、ユーザーとボット又はオペレータがチャットした内容を管理する。チャット履歴情報が有する各項目について説明する。
【0088】
・セッションIDは、ユーザーとオペレータがチャットを開始してから終了するまでの通信の識別情報である。このセッションIDによりユーザー端末2とオペレータ端末5の対応が管理され、質問に対する回答がユーザー端末2に送信される。セッションIDは重複しない番号であればよく、例えばUUIDやハッシュ値でよい。
【0089】
・日時は、ユーザー端末2がチャット画面を表示した日時である。
【0090】
・会話履歴は、発言者と会話内容を対応付けている。発言者は、ユーザー、ボット、又は、オペレータの名前である。ユーザーの発言内容は主に質問であり、ボット又はオペレータの発言内容は主に回答である。
【0091】
・質問者IDは、質問したユーザーに割り当てられた識別情報である。本実施形態のチャットボットシステム100は任意のユーザーが使用できるため、この質問者IDは同じユーザーでもチャットボットシステム100にアクセスするごとに変わる。あるいは、クッキーを利用して、同じユーザーには同じ質問者IDが割り当てられてもよい。ユーザーがサーバー装置1(又はネイティブアプリ)にログインする場合、ログインIDが質問者IDとなる。
【0092】
・カテゴリは、当該チャットの質問から判断されたカテゴリである。カテゴリは、1つとは限らない。また、同じセッションでもカテゴリが変化してよい。
【0093】
・解決フラグは、チャットのフィードバック入力フィールドにユーザーが入力した、解決したか否かを示す情報(はい、いいえ)である。なお、入力なしはユーザーが何も入力しなかったことを示す。
【0094】
<アカウント情報の登録>
図10は、管理者が新規にアカウント情報を登録するアカウント登録画面110を示す。アカウント登録画面110は、
図8に示したアカウント情報に対応する各入力欄(ログインID欄114、パスワード欄115、名前欄116)を有している。これらについては説明を省略する。
【0095】
・制限種類欄111は、このアカウント情報で登録される管理者又はオペレータが、編集できるカテゴリがどのように制限されるかが設定される。例えば、
図10では「指定カテゴリのみ編集可」が設定されている。制限種類欄111で指定可能な種類は以下の4つである。
(i) 全て編集可能:全て編集可能は、質問回答管理テーブルの情報だけでなく、カテゴリそのものの修正・追加・削除が可能(質問回答情報が属するカテゴリの設定もできる)。また、全て編集可能は、ユーザーアカウントの追加・編集権限を有する。以下の(ii)~(iv)は、ユーザーアカウントの追加・編集権限を有しない。
(ii) 質問回答編集可:質問回答編集可は、質問回答管理テーブルに登録された全てのカテゴリの質問回答情報を修正・追加・削除できる(質問回答情報が属するカテゴリの設定もできる)。
(iii) 指定カテゴリの編集可:指定カテゴリの編集可は、アカウント追加画面又はアカウント編集画面で指定された1又は複数のカテゴリに対応する質問回答情報の修正・追加・削除できる(質問回答情報が属するカテゴリの設定はできない)。
(iv) 閲覧のみ:閲覧のみは、質問回答情報記憶部42に登録された全て質問回答情報を閲覧できる(編集はできない)。上記(i)~(iii)についても、質問回答情報記憶部42に登録された全て情報を閲覧できる権限がある。
【0096】
・編集可能なカテゴリ欄112は、このアカウント情報で登録される管理者又はオペレータが、編集可能なカテゴリを選択するための欄である。管理者又はオペレータは、カテゴリの検索結果からカテゴリを選択できる。制限種類欄111で、「指定カテゴリのみ編集可」が選択された場合のみ、編集可能なカテゴリ欄112が有効(入力可能)になる。
【0097】
・「有人チャットに対応する」のチェックボックス113は、
図8に示したアカウント情報の有人チャット対応可否に相当する。主にオペレータではチェックボックス113がチェックされる。
【0098】
図11は、管理者が既存のアカウント情報を変更するアカウント編集画面を示す。アカウント編集画面は、
図11と同様に、制限種類欄111、編集可能なカテゴリ欄112、及び、「有人チャットに対応する」のチェックボックス113を有している。設定方法は
図10と同様でよい。
【0099】
<質問回答管理画面>
管理者は質問回答情報を編集できるが、誤って自分の専門でないカテゴリの質問回答情報を編集してしまう場合があった。そこで、本実施形態の管理画面生成部18は、管理者の編集可能なカテゴリのみ、質問回答情報の編集を許可する。
【0100】
図12は、質問回答管理画面130の一例である。質問回答管理画面130では、質問回答情報記憶部42に記憶されている質問回答情報のリスト132が表示される。ただし、管理者には編集権限が与えられているが、編集できるのは編集可能なカテゴリの質問回答情報のみである。
【0101】
なお、質問回答管理画面130を管理者端末3が表示した直後は、全ての質問回答情報が表示される。管理者が編集可のみボタン131を押下すると、編集権限を有するカテゴリに属する質問回答情報のみ、質問回答管理画面130に表示される。
【0102】
図13は、管理者が編集可のみボタン131を押下した後に表示される質問回答管理画面130である。
図8のアカウント情報によれば、会話次郎という管理者の編集可能なカテゴリは医療機器なので、管理画面生成部18は、医療機器の質問回答情報133のみを管理者端末3の質問回答管理画面130に表示させる。管理者は削除ボタン134でこの質問回答情報を削除できる。
【0103】
こうすることで、管理者が誤って自分の専門でないカテゴリの質問回答情報を編集してしまうことを抑制できる。
【0104】
なお、質問回答管理画面130が、全てのカテゴリの質問回答情報を表示し、管理者が編集した質問回答情報が、管理者が編集可能なカテゴリである場合に、管理画面生成部18が編集を受け付けてもよい。
【0105】
管理者が質問回答管理画面130で編集したい質問回答情報を選択すると、
図14の質問回答編集画面140に遷移する。
【0106】
図14は、質問回答編集画面140の一例である。質問回答編集画面140は、カテゴリ欄141、質問欄142、及び、回答欄143を有している。カテゴリ欄141、質問欄142、及び、回答欄143には、質問回答情報記憶部42に登録済みのカテゴリ、質問、及び回答が表示される。管理者は、カテゴリ、質問、及び、回答を任意に編集できる。また、管理者は、カテゴリ、質問、及び、回答を任意に入力して、新たに質問回答情報を追加できる。
【0107】
<動作手順>
図15は、管理者が質問回答情報を編集する手順を示すシーケンス図の一例である。
【0108】
S1:管理者が管理者端末3にログイン情報(ユーザー名とパスワード)を入力する。管理者端末3の入力部31は入力を受け付ける。
【0109】
S2:通信部33がログイン情報と共にログイン要求をサーバー装置1に送信する。
【0110】
S3:サーバー装置1の通信部14はログイン要求を受信し、認証部19がログイン情報を使って認証を行い、管理者端末3のIPアドレスを記録する。オペレータがログインした時もオペレータ端末5のIPアドレスが記録される。これは、有人チャットの際に、呼出部17が呼び出し先のオペレータ端末5を宛先に通信するためである。
【0111】
S4:サーバー装置1の認証部19は、管理者を特定しアカウント情報から編集可能なカテゴリを取得する。管理画面生成部18は通信部14を介して管理者端末3に初期画面の画面情報を送信する。
【0112】
S5:管理者端末3の通信部33は初期画面の画面情報を受信し、出力部32が初期画面を表示する。初期画面は、チャット履歴、質問回答一覧などでよい。
【0113】
S6:管理者が質問回答管理画面130の表示を管理者端末3に入力する。入力部31は入力を受け付ける。
【0114】
S7:通信部33は質問回答管理画面130をサーバー装置1に要求する。
【0115】
S8:サーバー装置1の通信部14は質問回答管理画面130の要求を受信し、管理画面生成部18は、質問回答情報記憶部42から質問回答情報の一覧(カテゴリを含む)を取得する。この時点では、管理者が編集可能なカテゴリは考慮されない。
【0116】
S9:サーバー装置1の管理画面生成部18は質問回答管理画面130の画面情報を管理者端末3に送信する。
【0117】
S10:管理者端末3の通信部33が質問回答管理画面130の画面情報を受信し、出力部32が質問回答管理画面130を表示する。
【0118】
S11:管理者が任意の質問回答情報を選択する。入力部31は選択を受け付ける。
【0119】
S12:選択された質問回答情報が属するカテゴリが、管理者が編集可能なカテゴリと同一か又は含まれる場合、管理者端末3の出力部32は質問回答編集画面140を表示する。ステップS11で削除ボタンが押下された場合、削除確認ダイアログ(はい、いいえ)が表示され、はいが押下されると当該質問回答情報が削除される。
【0120】
このように、管理者端末3側でカテゴリに応じた表示と、非表示が制御される。このような制御はJavaScript(登録商標)等で可能であり、質問回答管理画面130の画面情報にカテゴリに応じた表示と、非表示の制御が含まれる。
【0121】
また、カテゴリに応じた表示と、非表示をサーバー装置1が行ってもよい。この場合、サーバー装置1の管理画面生成部18は、管理者に編集権限があるカテゴリを有する質問回答情報のみを管理者端末3に送信する。いずれの方法でも、サーバー装置1は、管理者に編集権限があるカテゴリの質問回答情報の編集を受け付ける。
【0122】
S13:選択された質問回答情報が属するカテゴリが、管理者が編集可能なカテゴリと同一でもないし含まれない場合、管理者端末3の出力部32は編集権限がない旨を表示する。ステップS11で削除ボタンが押下された場合、削除権限がない旨を表示する。
【0123】
<ボットとのチャットから有人チャットへの移行>
ボットとのチャットでは、ユーザーが期待する回答を得られない場合がある。この場合、ユーザーは、オペレータと直接にチャットを行うことを要求できる。従来、チャットが転送されるオペレータが、ユーザーの質問に対応する質問回答情報のカテゴリについて詳しいとは限らないという問題があった。本実施形態では、ユーザーの質問に対応する質問回答情報のカテゴリに対応可能なオペレータに繋げることで、チャットボットシステム100がユーザーの満足度を向上できる。
【0124】
図16は、ユーザー端末2が表示するチャット画面150の一例である。ユーザー端末2がサーバー装置1と通信を開始し、チャット画面150を表示すると初期画面に、「質問を直接入力するか、ボタンから調べる方法をお選び下さい。」というメッセージ155、カテゴリ選択ボタン157及びよくある質問ボタン158が表示される。
図16では、ユーザーが質問入力欄154を操作して、直接、「医療」という質問151を入力している。
【0125】
「医療」というユーザーの質問151に対し、回答部による回答152が表示されている。なお、質問151は質問入力欄154から入力される。
【0126】
また、対話制御部15がこの回答に対し、フィードバック入力フィールド153をユーザー端末2に送信している。フィードバック入力フィールド153は回答に対するユーザー評価を受け付ける。フィードバック入力フィールド153は、はいボタン153a、いいえボタン153b、及び、担当者とチャットしたいボタン153c(第一のボタンの一例)をユーザー端末2に表示させている。ユーザーが、オペレータと直接にチャットを行うことを要求する場合、担当者とチャットしたいボタン153cを押下する。
【0127】
対話制御部15は、担当者とチャットしたいボタン153cを表示する際、質問回答情報のカテゴリに対応可能なオペレータをアカウント情報から取得する。当然ながら、このオペレータは、有人チャット対応可否が「可」で、有人チャット状態が「待機中」である。対話制御部15はこのようなオペレータが検出された場合、担当者とチャットしたいボタン153cをユーザー端末2に表示させる。具体的には、対話制御部15は、担当者とチャットしたいボタン153cがある画面の表示と非表示を切り替える。
【0128】
こうすることで、担当者とチャットしたいボタン153cをユーザーが押下した後に、質問回答情報のカテゴリに対応可能なオペレータが見つからないという状況が生じることを抑制できる。
【0129】
図17は、オペレータが表示するチャット画面160の一例である。呼出部17は、対話制御部15が検出したオペレータに、セッションIDで特定される、チャット履歴情報記憶部45から取得したこれまでの会話内容(151と152の符号で示す)を送信する。したがって、
図17のチャット画面160には、
図16の質問151と回答152が表示されている。
【0130】
対話制御部15は、担当者とチャットしたいボタン153cの押下に対し、「担当者とチャットしたい」等のメッセージ161、162をオペレータ端末5とユーザー端末2に表示する。また、オペレータが呼び出しに対し、質問を受け付ける応答を入力すると、対話制御部15は、「担当者におつなぎしました。チャットできます。」というメッセージ163をオペレータ端末5とユーザー端末2に表示する。なお、オペレータ端末5にはこれまでのチャットと同じセッションIDが対応付けられる。オペレータの発言も、セッションIDに対応付けてチャット履歴情報記憶部45に保存される。
【0131】
ユーザーがユーザー端末2に「医療機器の特注について聞きたい。」というメッセージ164を入力すると、入力部21が受け付け、通信部23がサーバー装置1に送信する。サーバー装置1では、対話制御部15がセッションIDで特定されるオペレータ端末5にメッセージを送信し、オペレータ端末5の出力部52がメッセージを出力する。
【0132】
オペレータがオペレータ端末5に「どの医療機器の特注でしょうか。」というメッセージ165を入力すると、入力部51が受け付け、通信部23がサーバー装置1に送信する。サーバー装置1では、対話制御部15がセッションIDで特定されるユーザー端末2にメッセージを送信し、ユーザー端末2の出力部22がメッセージ165を出力する。
【0133】
以降はこの処理の繰り返しにより、ユーザーとオペレータがチャットできる。
【0134】
なお、
図17のメモ欄169は、オペレータが任意のメモや手書き図形等を入力できる欄である。原則的に、メモはユーザー端末2には送信されない。例外的にオペレータが操作した場合、メモ欄169の情報がユーザー端末2に送信される。
【0135】
<チャットの手順>
図18は、ユーザーがボットとチャットする手順を示すシーケンス図の一例である。
図18の処理は、ユーザー端末2がサーバー装置1に接続し、チャット画面を表示した状態からスタートする。
【0136】
S21:ユーザーが質問をユーザー端末2に入力する。入力部21は入力を受け付ける。
【0137】
S22:ユーザー端末2の通信部23は質問をサーバー装置1に送信する。質問には、質問者IDとセッションIDが添付される。セッションIDは、ユーザー端末2とサーバー装置1との接続が確立したタイミングで生成され、ユーザー端末2に送信されている。
【0138】
S23:サーバー装置1の通信部14は質問を受信し、保存部16が質問等をチャット履歴情報記憶部45に記録する。
【0139】
S24:検索部12が質問回答情報を検索して、回答を特定する。
【0140】
S25:ここで、対話制御部15は、担当者とチャットしたいボタン153cの表示可否を判断する。これは、フィードバック入力フィールド153に担当者とチャットしたいボタン153cを表示するかどうかを判断するためである。処理の詳細を
図20にて説明する。
【0141】
S26:応答部13は回答をユーザー端末2に送信する。
【0142】
S27:保存部16は、回答をチャット履歴情報記憶部45に記録する。
【0143】
S28:対話制御部15は、通信部14を介して、フィードバック入力フィールドをユーザー端末2に送信する。
【0144】
S29:担当者とチャットしたいボタン153cの表示可否の判断が可の場合、対話制御部15は、通信部14を介して、担当者とチャットしたいボタン153cの表示をユーザー端末2に指示する。
【0145】
S30:担当者とチャットしたいボタン153cの表示可否の判断が不可の場合、対話制御部15は、通信部14を介して、担当者とチャットしたいボタン153cの非表示をユーザー端末2に指示する。
【0146】
S31:ユーザー端末2の通信部23は、担当者とチャットしたいボタン153cの表示、非表示を受信し、ユーザー端末2の出力部22は、表示、非表示の指示に応じて、チャット画面を更新する。
【0147】
S32:ユーザーがフィードバック入力フィールド153にフィードバック(はい、いいえ)をユーザー端末2に入力する。入力部21が受け付ける。
【0148】
S33:通信部23がフィードバックをサーバー装置1に送信する。
【0149】
S34:サーバー装置1の通信部14はフィードバックを受信し、保存部16が、フィードバックに基づいて解決フラグをチャット履歴情報記憶部45に記録する。
【0150】
図18のステップS25、S29、S30を、ステップS33の後に移動してもよい。この場合、ユーザーがフィードバックフィールドで「いいえ」を選択したことに応じて、ステップS25の処理が実行され、そして、判断の結果に応じて対話制御部15が担当者とチャットしたいボタン153cの表示・非表示を制御する。
【0151】
更に、この場合、ユーザーがはいボタン153aを選択した場合に、対話制御部15は、ユーザーがボットからの回答に満足したと判断し(有人チャットが不要と判断し)、有人チャットに対応できるオペレータの有無にかかわらず、担当者とチャットしたいボタン153cを表示しなくてよい。
【0152】
図19は、ユーザーが有人チャットを開始する手順を示すシーケンス図の一例である。
【0153】
S41:ユーザーが担当者とチャットしたいボタン153cを押下する。入力部21が入力を受け付ける。
【0154】
S42:ユーザー端末2の通信部23が有人チャット要求をサーバー装置1に送信する。
【0155】
S43:サーバー装置1の通信部14は有人チャット要求を受信し、対話制御部15が呼び出し先のオペレータを決定する。決定方法の詳細は
図21にて説明する。
【0156】
S44:呼出部17は、オペレータ端末5のログイン時に記録してあるIPアドレスを宛先にして、決定されたオペレータ端末5を呼び出す。
【0157】
S45:オペレータ端末5の出力部52は呼び出されている旨を表示したり、音で通知したりする。
【0158】
S46:オペレータが有人チャットを受け付ける操作をオペレータ端末5に入力する。入力部51が入力を受け付ける。
【0159】
S47:オペレータ端末5の通信部53は、有人チャットの受け付け通知をサーバー装置1に送信する。受け付け通知にはログインIDが添付される。
【0160】
S48:サーバー装置1の通信部14は受け付け通知を受信し、対話制御部15が、通信部14を介して、有人チャットの開始をユーザー端末2に通知する。
【0161】
S49:ユーザー端末2の通信部23は有人チャットの開始を受信し、出力部22が有人チャットの開始を表示する。
【0162】
S50:ユーザーが質問をユーザー端末2に入力する。入力部21は入力を受け付ける。
【0163】
S51:ユーザー端末2の通信部23は質問をサーバー装置1に送信する。質問には、質問者IDとセッションIDが添付される。
【0164】
S52:サーバー装置1の通信部14は質問を受信し、保存部16が質問等をチャット履歴情報記憶部45に記録する。
【0165】
S53:サーバー装置1の対話制御部15は、通信部14を介して、質問をオペレータ端末5に送信する。なお、このオペレータ端末5のIPアドレスはオペレータのログイン時に記憶されている。
【0166】
S54:オペレータ端末5の通信部53は質問を受信し、出力部52が質問を表示する。
【0167】
S55:オペレータが回答をオペレータ端末5に入力する。入力部51が入力を受け付ける。
【0168】
S56:オペレータ端末5の通信部53は回答をサーバー装置1に送信する。
【0169】
S57:サーバー装置1の通信部14は回答を受信し、対話制御部15が回答をユーザー端末2に送信する。
【0170】
S58:保存部16は、回答をチャット履歴情報記憶部45に記録する。
【0171】
S59:ユーザー端末2の通信部23は回答を受信し、出力部22が回答を表示する。
【0172】
このように、ユーザーはボットとのチャットからオペレータとのチャットに切り替えることができる。
【0173】
<<
図18のステップS25の詳細>>
図20は、
図18のステップS25の詳細な手順を説明するフローチャート図の一例である。
【0174】
まず、対話制御部15は、アカウント情報記憶部44を参照して、待機中のアカウントを特定する(S101)。
【0175】
待機中のアカウントがない場合、対話制御部15は、担当者とチャットしたいボタン153cを非表示と判断する(S108)。
【0176】
待機中のアカウントがある場合、対話制御部15は、チャット履歴情報に発言者がボットの会話内容があるか否かを判断する(S103)。
【0177】
発言者がボットの会話内容がない場合、この場合は、質問回答情報のカテゴリ等が不明なので、処理はステップS107に進む。
【0178】
発言者がボットの会話内容がある場合、対話制御部15は、最新の会話内容に対応するカテゴリをチャット履歴情報から取得する(S104)。対話制御部15は、最新の会話内容でなく、発言者がボットの最初の会話内容に対応するカテゴリを取得してもよい。
【0179】
次に、対話制御部15は、取得したカテゴリの編集権限を有する待機中のアカウントを特定する(S105)。
【0180】
ステップS105でアカウントを特定できた場合(S106のYes)、対話制御部15は、担当者とチャットしたいボタン153cを表示すると判断する(S107)。
【0181】
ステップS105でアカウントを特定できない場合(S106のNo)、対話制御部15は、担当者とチャットしたいボタン153cを表示しないと判断する(S108)。
【0182】
なお、ステップS102とS105の判断は順不同である。
【0183】
<<
図19のステップS43の詳細>>
図21は、
図19のステップS43の詳細な手順を説明するフローチャート図の一例である。なお、
図21の説明では主に
図20との相違を説明する。ステップS201~S206は、
図20のステップS101~S106と同様でよい。
【0184】
ステップS208では、待機中のアカウントがないため、対話制御部15は、有人チャットができない旨をユーザー端末2に通知すると判断する(S208)。
【0185】
また、ステップS207では、対話制御部15は、特定したアカウントを呼び出し先として判断する(S207)。複数のアカウントがある場合は、対話制御部15が任意に選択してよいし、最後のチャットから最も時間が経過したオペレータを選択してもよい。
【0186】
<有人対応ボタンの表示>
図16では、質問と回答という一連のチャットに続いて、対話制御部15が担当者とチャットしたいボタン153cをユーザー端末2に表示した。しかし、このようなボタンは、常に、ユーザー端末2に表示されてもよい。以下、このボタンを担当者とチャットしたいボタン153cと区別して有人対応ボタンという。
【0187】
図22は、有人対応ボタン171を有するチャット画面170の一例である。このチャット画面170では、有人対応ボタン171(第二のボタンの一例)が固定の位置に表示されている。何時でもユーザーが押下できる位置に、有人対応ボタン171が表示される。有人対応ボタン171の表示の際、対話制御部15は、担当者とチャットしたいボタン153cを表示するか否かの判断と同じ判断を行う。判断結果に応じて、対話制御部15は、有人対応ボタン171の表示と非表示を切り替える。
【0188】
なお、有人対応ボタン171の表示と非表示を切り替える判断のタイミングには以下がある。
(i) ユーザー端末2がサーバー装置1と接続し、チャット画面を表示するタイミング
(ii) サーバー装置1が回答をユーザー端末2に送信するタイミング
(iii) フィードバックボタンで「いいえ」が押下されたタイミング(ユーザーが所望する回答を得られなかったとき)
(iv) ユーザー端末2から有人対応ボタン171の表示状態を要求するリクエストをサーバー装置1に送信しておき、サーバー装置1は定期的に(例:10秒に1回)、有人対応ボタン171の表示状態を判断し、表示状態の変化があったら、最新の表示状態をユーザー端末2に応答(レスポンス)する。
【0189】
有人対応ボタン171は、質問のカテゴリに対応したオペレータが存在すれば表示可能なので、回答に続けて表示される担当者とチャットしたいボタン153cよりも、ユーザーがオペレータとのチャットを開始しやすくなる。
【0190】
<主な効果>
本実施形態のチャットボットシステム100は、アカウント情報記憶部に管理者又はオペレータ端末が編集可能なカテゴリ又は対応可能なカテゴリが登録されているので、ユーザーが質問しているカテゴリに対応できるオペレータを自動的に判断して、チャットを転送できる。また、編集権限がある質問回答情報のカテゴリが管理者ごとに決まっているので、管理者は自部門以外の質問回答情報を編集できず、誤って他の部門が管理している質問回答情報を編集することを抑制できる。
【0191】
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【0192】
例えば、
図4などの構成例は、ユーザー端末2,管理者端末3、オペレータ端末5及びサーバー装置1による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。ユーザー端末2,管理者端末3、オペレータ端末5及びサーバー装置1の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
【0193】
また、実施例に記載された装置群は、本明細書に開示された実施形態を実施するための複数のコンピューティング環境のうちの1つを示すものにすぎない。ある実施形態では、サーバー装置1は、サーバクラスタといった複数のコンピューティングデバイスを含む。複数のコンピューティングデバイスは、ネットワークや共有メモリなどを含む任意のタイプの通信リンクを介して互いに通信するように構成されており、本明細書に開示された処理を実施する。
【0194】
更に、サーバー装置1は、本実施形態で開示された処理ステップ、例えば
図15,
図18,
図19を様々な組み合わせで共有するように構成できる。例えば、所定のユニットによって実行されるプロセスは、サーバー装置1が有する複数の情報処理装置によって実行され得る。また、サーバー装置1は、1つのサーバー装置にまとめられていても良いし、複数のサーバー装置に分けられていても良い。
【0195】
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路により実装されるプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)や従来の回路モジュール等のデバイスを含むものとする。
【符号の説明】
【0196】
1 サーバー装置
2 ユーザー端末
3 管理者端末
5 オペレータ端末
100 チャットボットシステム
【先行技術文献】
【特許文献】
【0197】