【文献】
西田 京介,階層的オートタギングによるQ&Aコミュニティの知識整理,日本データベース学会論文誌,日本データベース学会,2010年 6月25日,Vol.9, No.1,pp.47-52
(58)【調査した分野】(Int.Cl.,DB名)
クライアントと、前記クライアントの問い合わせに回答するチャットサーバと、前記クライアントの問い合わせに基づく検索処理を行うFAQサーバとを含むFAQ支援システムにおいて、
前記FAQサーバは、
前記クライアントからの問い合わせを想定した問い合わせと当該問い合わせに関連する回答の文言をFAQ情報として予め複数保持し、
前記クライアントの問い合わせ時の選択操作により、当該問い合わせのキーワード、前記FAQ情報に関連するカテゴリ、あるいはタグを任意に組み合わせた絞り込み型対話UIによる検索処理を行い、前記FAQ情報に含まれない前記クライアントからの問い合わせの文字列を新たな前記タグとして生成し、
前記チャットサーバは、
前記クライアントに対し、チャットによる対話形式で、前記クライアントからの問い合わせに関する情報と、前記検索処理の情報とを送受信する、
ことを特徴とするFAQ支援システム。
【発明を実施するための形態】
【0021】
(実施の形態)
以下に添付図面を参照して、この発明にかかるFAQ支援装置、FAQ支援システム、FAQ支援方法およびFAQ支援プログラムの好適な実施の形態を詳細に説明する。
【0022】
(システムの概要構成)
図1は、実施の形態にかかるFAQ支援システムの概要図である。FAQ支援システムは、FAQ支援装置100と、FAQ支援装置100にインターネット等の通信網を介して通信接続される利用者(ユーザ)U毎のクライアント(端末)105と、を含む。
【0023】
FAQ支援装置100は、チャットサーバ101と、FAQサーバ102とを含む。チャットサーバ101とFAQサーバ102は、企業等の業務センタに設けられ、同一のサーバで構成してもよい。また、チャットサーバ101とFAQサーバ102は、クラウド上に設けることもできる。
図1の例では、便宜上、チャットサーバ101とFAQサーバ102は、通信網を介して接続した構成としているが、これらチャットサーバ101とFAQサーバ102は、それぞれクラウド上の機能(例えばAIエンジン)で構成することができる。
【0024】
クライアント105は、パーソナルコンピュータ(PC)、スマートフォン、タブレット等を用いることができる。
【0025】
以下の説明では、FAQ支援システムは、利用者UがFAQの業務センタに問い合わせを行う例について説明する。なお、以下の説明で説明する「問い合わせ」と「質問」は同じ意味である。
【0026】
チャットサーバ101は、例えば、WebページやWebウィジェット等のUI実行部111によりFAQ(問い合わせおよび回答)用の表示画面を生成して利用者Uのクライアント105との間でチャットを行う。利用者Uのクライアント105は、チャットサーバ101が生成した表示画面を表示し、ユーザ操作によりチャットサーバ101に対して、問い合わせに対する回答を行う。チャットサーバ101は、クライアント105との間でやり取りするFAQのチャットを管理する。
【0027】
チャットサーバ101は、利用者Uのクライアント105からの問い合わせをFAQサーバ102に転送し、FAQサーバ102の回答をクライアント105に転送する。
【0028】
FAQサーバ102は、予め作成されたFAQデータファイル121を保持するFAQデータベース(DB)122と、bot123とを含む。
【0029】
bot123は、問い合わせ(質問)の文言(テキスト等の文字列)に基づき、FAQデータベース122を参照して、問い合わせの文言に対応する回答する文言を検索し、チャットサーバ101に転送する。botとは、自動化プログラムを意味する。
【0030】
FAQデータベース122が保持するFAQデータファイル121は、例えば、表形式のデータファイルであり、予め想定した利用者Uの問い合わせのキーワードおよびキーワードに対応する回答(自然言語情報)を関連づけたFAQ情報を有する。加えて、FAQデータファイル121は、問い合わせのキーワードに関連する複数のカテゴリ別のカテゴリ一覧の情報を有してもよい。さらには、FAQデータファイル121は、キーワードの学習機能により自動生成した複数のタグのタグ一覧の情報を有してもよい。タグ一覧は、FAQ情報に関連づけられる。
【0031】
bot123は、問い合わせ時のキーワード候補を利用者Uに提示し、利用者Uによるキーワード候補のなかからキーワードの選択により、FAQデータファイル121のFAQ情報を参照して、問い合わせ(キーワード)に対応する回答の検索結果(絞り込んだ回答の候補)をチャットサーバ101に転送する。
【0032】
この際、bot123は、カテゴリ一覧を参照して、カテゴリの絞り込みが行える場合、カテゴリに関連したFAQ情報の回答を検索する。カテゴリの絞り込みにより、問い合わせに対応した回答を適切に検索できるようになる。
【0033】
さらに、bot123は、問い合わせ時のキーワードがタグとして自動生成されていれば、問い合わせに関連したタグ一覧を提示するタグ機能を有する。すなわち、bot123は、問い合わせ時のFAQ情報に含まれる特定のキーワードを学習することによりタグを自動生成する機能を有する。自動生成されたタグ一覧により、利用者Uはキーワード(文字列)の入力時にクライアント105上に表示されるタグ一覧のなかからキーワード相当のタグを選択することで、キーワード入力を省力化できるようになる。
【0034】
詳細は後述するが、FAQデータファイル121は、最上位の階層に複数のカテゴリを配置し、各カテゴリの階層下にFAQ情報(問い合わせ+回答の情報)を配置したデータ構造である。また、問い合わせの文言に対応して複数のタグ情報が関連づけされたデータ構造である。
【0035】
bot123は、問い合わせの文言に対応する回答が複数ある場合、複数の選択肢を、例えば、文言(テキスト)を画像化したスタンプとして、利用者Uのクライアント105に送信する。利用者Uによってスタンプを選択させることを繰り返すことで、問い合わせに対応する回答を絞り込むことができる。
【0036】
FAQデータベース(DB)122には、頻度が高いFAQについて、問い合わせの文言と、利用者Uへの回答の文言の組合せが予め複数記憶されている。bot123は、FAQデータベース122を参照して問い合わせの処理を順次実行する。
【0037】
上記の利用者Uは、多数分散してクライアント105を操作し、例えば、一つのチャットサーバ101に問い合わせの通信接続を行う。そして、チャットサーバ101およびFAQサーバ102は、互いの通信接続により、任意の位置に配置可能である。また、チャットサーバ101およびFAQサーバ102は、クラウドシステムを利用する構成とすることもできる。
【0038】
図2は、実施の形態にかかるFAQ支援システムのチャットサーバのハードウェア構成例を示す図である。例えば、
図1に示すチャットサーバ101は、
図2に示す構成を有する。チャットサーバ101は、CPU201、ROM202、RAM203、磁気ディスクドライブ204、磁気ディスク205、光ディスクドライブ206、光ディスク207、入力デバイス208、映像I/F209、ディスプレイ210、通信I/F211、等を含む。各構成部201〜211は、バス220によってそれぞれ接続されている。
【0039】
CPU201は、チャットサーバ101の全体の制御を司る制御部の機能を有する。ROM202は、サーバのブートプログラムを記録している。RAM203は、CPU201のワークエリアとして使用される。すなわち、CPU201は、RAM203をワークエリアとして使用しながら、ROM202に記録された各種プログラムを実行することによって、チャットサーバ101の全体の制御を司る。
【0040】
磁気ディスクドライブ204は、CPU201の制御にしたがって磁気ディスク205に対するデータの読み取り/書き込みを制御する。磁気ディスク205は、磁気ディスクドライブ204の制御で書き込まれたデータを記録する。磁気ディスク205としては、例えば、HD(ハードディスク)を用いることができる。
【0041】
また、光ディスクドライブ206は、CPU201の制御にしたがって光ディスク207に対するデータの読み取り/書き込みを制御する。光ディスク207は、光ディスクドライブ206の制御にしたがってデータが読み出される着脱自在な記録媒体である。光ディスク207は、書き込み可能な記録媒体を利用することもできる。このほか記録媒体として、SSD、メモリカードなどを用いることもできる。
【0042】
入力デバイス208は、文字、数値、各種指示などの入力のための複数のキーを備えたリモコン、キーボード、タッチパネルなどが挙げられる。入力デバイス208は、リモコン、キーボード、タッチパネルのうちいずれか一つの形態によって実現されてもよいが、複数の形態によって実現することも可能である。
【0043】
映像I/F209は、ディスプレイ210に接続される。映像I/F209は、具体的には、例えば、ディスプレイ210全体を制御するグラフィックコントローラと、即時表示可能な画像情報を一時的に記録するVRAM(Video RAM)などのバッファメモリと、グラフィックコントローラから出力される画像データに基づいてディスプレイ210を制御する制御ICなどによって構成される。
【0044】
ディスプレイ210には、アイコン、カーソル、メニュー、ウインドウ、あるいは文字や画像などの各種データが表示される。ディスプレイ210としては、例えば、TFT液晶ディスプレイ、有機ELディスプレイなどを用いることができる。
【0045】
通信I/F211は、ネットワークに接続され、チャットサーバ101およびクライアント105と通信接続するインターフェースとして機能する。ネットワークとして機能する通信網には、有線あるいは無線接続されるインターネット、公衆回線網や携帯電話網、LAN、WANなどがある。
【0046】
図1に示したチャットサーバ101(UI実行部111)は、
図2に記載のROM202、RAM203、磁気ディスク205、光ディスク207などに記録されたプログラムやデータを用いて、CPU201が所定のプログラムを実行することによって、チャットサーバ101の機能を実現する制御部である。
【0047】
また、
図1に記載したFAQサーバ102についても、
図2同様のハードウェア構成を用いることができ、FAQサーバ102のbot123の機能は、
図2に記載のCPU201がプログラム実行することにより制御部としての機能を実現できる。さらに、
図1に示したチャットサーバ101のUI実行部111とFAQサーバ102のbot123の機能は、それぞれ異なるCPU201が機能実行してもよいし、同一サーバ内の一つのCPU201が機能実行してもよい。また、
図1に記載したFAQデータベース122は、
図2に記載のRAM203等を用いて機能実現できる。
【0048】
また、
図1に記載のクライアント105についても、
図2同様の構成を有し、CPU201が制御部として機能し、全体の処理を司る。クライアント105として用いるスマートフォンやタブレット等の携帯機器では、例えば、磁気ディスク205や光ディスク207に代えてフラッシュメモリを用いてもよい。
【0049】
(FAQデータファイルのデータ構造)
図3は、実施の形態にかかるFAQ支援装置のFAQデータファイルのデータ階層を説明する図である。bot123が扱うFAQデータファイル121は、FAQのカテゴリ301、FAQ情報302、タグ303の各情報を含む。
【0050】
カテゴリ301は、FAQを複数のカテゴリに分類したものであり、各分類は階層構造を有する。
図3の例では、気象情報等を提供する企業等におけるFAQの例であり、カテゴリ301の最上位階層(第1階層)には、「気象」、「地震・津波・火山」、「地球環境」、「その他」が設定され、「気象」の第2階層として、「天気予報」、「用語」、「台風」、「気温」等が設定される。
【0051】
FAQ情報302は、複数の問い合わせ(Q)と回答(A)を関連づけた情報である。
図3の例では、カテゴリ301の第2階層の「天気予報」に関連する複数のFAQ情報の一つとして、問い合わせQ「天気はどうやって予想しているのですか?」と、この問い合わせQに対応する返答A「気象衛星の観測と地上や上空の観測データを元にした数値予報を用いて予想しています。」という自然言語情報(テキスト情報)が設定されている。
【0052】
タグ303は、FAQ情報302に含まれるテキスト情報を学習することにより、特定の文言がタグとして自動生成される。
図3の例では、bot123は、FAQ情報302の返答A「気象衛星の観測と地上や上空の観測データを元にした数値予報を用いて予想しています。」とのテキストを学習することで、「衛星」と「観測」の2つの文言をタグとして自動生成する。タグの自動生成については後述する。なお、タグ303は、bot123以外の学習部(不図示)が自動生成する構成としてもよい。
【0053】
(検索の種類について)
上記のように、実施の形態では、FAQデータベース122が保持するFAQデータファイル121は、カテゴリ301と、FAQ情報302と、タグ303とを有する。これらを用いることで、FAQサーバ102(bot123)は、1.カテゴリ検索、2.タグ検索、3.キーワード検索、をそれぞれ実行可能である。
【0054】
1.カテゴリ検索は、現在のカテゴリ(以降、カレントカテゴリ)の直下のカテゴリから選択する検索である。カテゴリ検索では、
図3に示すカテゴリ301の例の場合、「気象」がカレントカテゴリとすると、直下の「天気予報」、「用語」、「台風」、「気温」等を一覧表示させ、利用者Uがいずれかを選択することでFAQ情報302の絞り込みを行う。また、カテゴリ一覧を用いた選択に限らず、他に「category:カテゴリ名」あるいは「>カテゴリ名」を利用者Uが文字列入力することでも検索が可能である。
【0055】
2.タグ検索は、絞り込まれたFAQ情報(質問+回答)302に関連するタグ303のタグ一覧を表示させ、利用者Uが選択する検索である。なお、タグ一覧を用いた選択に限らず、他に「tag:タグ名」あるいは「#タグ名」を文字列入力することでも検索が可能である。この際の検索対象はカテゴリ301とタグ303である。
【0056】
そして、タグ検索では、
a.検索のタグ303の文字列を一部分に持つカテゴリ301に属するFAQ情報(質問+回答)302は、絞り込み対象とする。
b.検索のタグ303の文字列と同じタグを持つFAQ情報(質問+回答)302は、絞り込み対象とする。
c.上記a.b.以外は、絞り込みの対象外とする。
【0057】
3.キーワード検索は、利用者Uの問い合わせで指定された文字列をキーワードとする。検索対象はカテゴリ301、タグ303、FAQ情報(質問+回答)302である。このキーワード検索では、
a.キーワードを一部分に持つカテゴリ301に属するFAQ情報(質問+回答)302は、絞り込み対象とする。
b.キーワードを一部分に持つタグ303を持つFAQ情報(質問+回答)302は、絞り込み対象とする。
c.キーワードを一部分に持つ質問が含まれるFAQ情報(質問+回答)302は、絞り込み対象とする。
d.キーワードを一部分に持つ回答が含まれるFAQ情報(質問+回答)302は、絞り込み対象とする。
e.上記a.〜d.以外は、絞り込みの対象外とする。
【0058】
(異なる種類の検索の連結によるナビゲーション型検索について)
そして、実施の形態のFAQサーバ102(bot123)は、上記1.カテゴリ検索、2.タグ検索、3.キーワード検索、を連結させることで利用者Uが適切な絞り込みを行った検索を支援する。
【0059】
図4は、実施の形態にかかるFAQ支援装置の検索処理例を示すフローチャートである。FAQサーバ102のbot123が行う異なる種類の検索の連結によるナビゲーション型検索の処理例を示す。
【0060】
FAQサーバ102(bot123)は、チャットサーバ101を介して入力される利用者Uによる問い合わせの情報(文字列)と、上記1.カテゴリ検索、2.タグ検索、3.キーワード検索の3つの検索方法の指定を受け付ける(ステップS401)。
【0061】
これにより、FAQサーバ102は、指定された一つの検索方法、すなわち、カテゴリ検索(ステップS402)、タグ検索(ステップS403)、キーワード検索(ステップS404)により、FAQデータベース122を参照して、問い合わせに対応する回答を検索する。FAQサーバ102は、例えば、検索終了までの期間、検索方法が異なる検索毎の結果を保持しておくことで、以前の検索結果に戻すこともできる。
【0062】
この後、FAQサーバ102は、回答の候補が絞り込まれたか判断する(ステップS405)。絞り込まれたと判断した場合には(ステップS405:Yes)、FAQサーバ102は、検索結果である絞り込んだ複数候補の回答をチャットサーバ101を介して利用者Uのクライアント105に送信する(ステップS406)。
【0063】
一方、絞り込みが足りないと判断した場合には(ステップS405:No)、FAQサーバ102は、その時点で適切な他の検索方法の情報をチャットサーバ101を介して利用者Uのクライアント105に送信し、ステップS401の処理に戻る。そして、利用者Uが選択した検索方法による検索を再度実行する。
【0064】
例えば、はじめに、1.カテゴリ検索により絞り込みを行い、次に、2.カテゴリ検索の検索結果のなかから、キーワード検索により絞り込みをし、その後、3.キーワード検索の検索結果のなかのカテゴリから、さらにカテゴリ検索で絞り込みをすることができる。
【0065】
また、検索結果を絞り過ぎてしまった場合、検索処理を一つ戻し、2.カテゴリ検索から検索を再開することもできる。このように、実施の形態では、柔軟な絞り込みが行えるため、利用者Uの問い合わせに対する適切な回答が得られる(目的のFAQ情報302に辿り着きやすくなる)。
【0066】
(タグの自動生成について)
上述した検索時の絞り込みについて、以下に示す手順により絞り込み条件は緩くなる。
1.分類が明確に決まっているカテゴリ301の一覧
2.カテゴリ301に関係なく自由に付加できるタグ303の一覧
3.タグ303による揺らぎの吸収もなければ、キーワードとなる任意の文字列入力
【0067】
図5は、実施の形態にかかるFAQ支援装置のタグの自動生成処理例を示すフローチャートである。例えば、FAQサーバ102のbot123あるいは学習部が行うタグの自動生成の処理例を示す。はじめに、FAQサーバ102は、利用者Uが求める回答が得られたとき(ステップS501)、キーワード検索が行われていたか否かを判断する(ステップS502)。
【0068】
キーワード検索が行われていれば(ステップS502:Yes)、FAQサーバ102は、その際のキーワードがタグになっているか判断する(ステップS503)。キーワードがタグ303になっていなければ(ステップS503:No)、求めたFAQ情報(質問+回答)302にキーワードをタグ303として関連づけを行い(ステップS504)、以上の処理を終了する。また、ステップS502において、キーワード検索が行われていないとき(ステップS502:No)、また、ステップS503において、キーワードがタグ303になっていれば(ステップS503:Yes)、いずれもFAQサーバ102は、以上の処理を終了する。
【0069】
上記の処理によれば、FAQサーバ102は、利用者Uが求める回答が得られたとき、キーワード検索が行われていれば、そのキーワードを検索結果のFAQ情報(質問+回答)302に追加することで、タグ検索の学習を行う。そして、タグ303の追加が行われた後、FAQサーバ102は、FAQ情報(質問+回答)302が属する同じカテゴリ301のなかに、特定の数以上のタグ303が共通して付加されていれば、そのタグ303でサブカテゴリを自動生成することで、カテゴリ検索の学習を行う。
【0070】
上記タグ303の自動生成および学習により、利用者Uは、次回以降の問い合わせ時にキーワードがクライアント105上のタグ一覧に表示されるため文字列の入力をしなくても済むようになる。また、特徴的なタグ303がカテゴリ301として表示されることで、利用者Uが数多くのタグ303のなかから最適なタグ303を探す手間を省くことができるようになる。
【0071】
(FAQの具体例)
図6は、実施の形態にかかるFAQ支援装置のFAQデータファイルのデータ構造例を示す図である。以下、気象情報等を提供する企業等のFAQを例に具体的な構成および処理例を説明する。以下の説明では、FAQサーバ102は、
図6に示すFAQデータファイル121をFAQデータベース122に保持し、bot123がFAQデータファイル121を参照して検索を行う。
【0072】
FAQデータファイル121は、FAQのカテゴリ301、FAQ情報302、タグ303の各データを含む。カテゴリ301は、上位のカテゴリ301aと、カテゴリ301aの下層のサブカテゴリ301bを含む。
【0073】
図6の例では、上位のカテゴリ301aには、「災害」、「気象」、「環境」、「施設」等のデータ(値)が設定され、「気象」のサブカテゴリ301bには、「季節情報」、「天気予報」、「用語」、「観測機器」等のデータが設定されている。さらに、「天気予報」のサブカテゴリ301bとして、「予測」、「確率」、「日時」、「地域」等のデータが設定されている。サブカテゴリ301bはさらに下層を有し複数の階層を設定することができる。
【0074】
そして、
図6の例では、カテゴリ301aのデータ「気象」601の下層のサブカテゴリ301bのデータ「天気予報」611にはさらにサブカテゴリ301bとしてデータ「確率」612が設定されている。確率612に関連するFAQ情報302は、複数の質問(Q1〜Q4)621と、回答(A1〜A4)622のデータが設定されている。
【0075】
例えば、質問Q1(621)のデータは「降水確率はどのように決定するのでしょうか?」に対し、回答A1(622)のデータは「指定された時間帯に1ミリ以上の降水がある確率で…」と設定されている。また、このFAQ情報302(Q1,A1)には、タグ303のデータとして「降水」631と「1ミリ」632が設定されている。
【0076】
図7は、実施の形態にかかるFAQ支援装置のFAQデータファイルのデータフォーマット例を示す図である。
図6に示したFAQデータファイル121のデータフォーマット例を示す。FAQデータファイル121は、
図7に示すように表形式のデータフォーマットで設定することができる。
【0077】
図7に示すように、「FAQ」の名称のシート701に
図6に示したFAQデータファイル121のデータが設定される。
図7のシート701は、縦横マトリクス状の行列を有し、上半部の行(1〜3行)には、A列にカテゴリ301aの「#気象」601、「##天気予報」611、「###確率」612のデータが設定される。データは#からはじまり#の数は階層を示す。
【0078】
また、下半部の行(4〜7行)には、FAQ情報(質問+回答)302と、このFAQ情報に関連するタグ303のデータが設定される。A列には質問(Q1〜Q4)のデータ621が設定され、B列には回答(A1〜A4)のデータ622が設定される。C列以降は、FAQ情報302に関連するタグ303のデータ623,624が設定される。
【0079】
このように、A列のデータが「#」からはじまらない行は、FAQ情報302とタグ303であることを示す。これにより、bot123は、
図6に示す階層構造を一つのシート701上でカテゴリ301a、サブカテゴリ301b、FAQ情報302、タグ303をそれぞれ識別でき、必要なデータを検索し取り出すことができる。
【0080】
図8は、実施の形態にかかるFAQ支援装置の環境設定例を示す図である。bot123の動作環境の設定例を示す。bot123の動作環境についても、
図7に示す表形式のデータフォーマットで設定することができる。
【0081】
図8に示す環境設定表801は、「_config_」の名称のシート802に設定される。A列には環境変数が設定され、B列にはデータ(値)が設定可能である。1行目には、bot123が回答できなかった(問い合わせに対する回答が検索できなかった)ときのメッセージが設定される。
図8の例では、B列に「お問い合わせの回答が見つかりませんでした」と設定されている。初期値(デフォルト値)は、「該当する候補が見つかりませんでした」である。
【0082】
2行目には、カテゴリ301毎に回答できなかったときのメッセージであり、この例では、A列で設定した「気象」に対する回答ができなかった場合のメッセージがB列に「お問い合わせの回答が見つかりませんでした。再検索をするか、気象についてのページをご覧ください。」と設定されている。
【0083】
3行目には、bot123で絞り込み表示を終了する候補数「1〜8」が設定される。デフォルト値は「5」である。4行目には、利用者Uによるタグ303を用いたタグ付けの可否「on/off」が設定される。デフォルト値は「on」である。
【0084】
(FAQ問い合わせ時の画面表示例)
図9〜
図14は、実施の形態にかかるFAQ支援装置の動作処理例を示す表示画面例である。次に、利用者Uによる問い合わせ時のFAQ支援装置100の動作処理を説明する。これらの図では、FAQ支援装置100からクライアント105に送信され、クライアント105の表示画面上に表示された情報の表示例を示す。各表示画面は、bot123の検索処理に基づき、UI実行部111が利用者U(クライアント105)との間でチャット用のスタンプを表示する。
【0085】
以下、
図6に示した例に対応したカテゴリ301、FAQ情報302、タグ303を用い、FAQ支援装置100は、利用者Uにカテゴリ301、タグ303を選択させた後、FAQ情報302(質問621)を選択させるチャット順で利用者Uに対する検索を操作案内する例を説明する。
【0086】
図9には、トップ画面901を示す。トップ画面901の最上部には利用者Uの問い合わせに対する回答の候補数902「候補:1000」を表示し、その下部には、利用者Uに対するメッセージ903「カテゴリを選択するか、キーワードを入力して絞り込みをしてください。」と表示する。
【0087】
メッセージ903の下部には、カテゴリ301a選択の各項目が複数(例えば最大6つ)の「災害」、「気象」、…、「施設」のスタンプ904を表示する。また、前後のページがあれば上下位置にそれぞれ「前のカテゴリ」、「次のカテゴリ」のスタンプ904を表示する。
【0088】
図10は、
図9のカテゴリ301aで「気象」611のスタンプ904を選択した後のサブカテゴリ選択画面1001である。サブカテゴリ選択画面1001の最上部には、カテゴリ301aの選択により絞り込んだ「気象>天気予報」の候補数1002「候補:253」を表示する。その下部には、さらに下層のサブカテゴリ301bがある場合、利用者Uに対するメッセージ1003「カテゴリを選択するか、キーワードを入力して絞り込みをしてください。」と表示する。
【0089】
メッセージ1003の下部には、サブカテゴリ301b選択の各項目が複数(例えば最大6つ)の「予測」、「確率」、…、「地域」のスタンプ1004を表示する。また、前後のページがあれば上下位置にそれぞれ「前のカテゴリ」、「次のカテゴリ」のスタンプ1004を表示する。最下部には、上位のカテゴリに戻すスタンプ「絞り込みを一つ減らす」1004を表示し、選択時には、
図9のトップ画面901に戻すことができる。
【0090】
図11は、
図10のサブカテゴリ301bで「確率」612のスタンプ1004を選択した後のタグ選択画面1101である。タグ選択画面1101の最上部には、サブカテゴリ301bの選択により絞り込んだ「気象>天気予報>確率」の候補数1102「候補:61」を表示する。その下部には、タグ303がある場合、利用者Uに対するメッセージ1103「タグを選択するか、キーワードを入力して絞り込みをしてください。」と表示する。
【0091】
メッセージ1103の下部には、タグ303選択の各項目が複数(例えば最大7つ)のタグ303の「#降水」、「#1ミリ」、…、「#成績」のスタンプ1104を表示する。この例では、画面の上部から下部にタグ数の多い順に整列して1ページに表示可能な所定数のみ表示させ、前後のページのスタンプ1104は表示しない。スタンプ1104の下部には、表示されているタグ301を含まないものが候補として表示する(図の例では「該当タグなし」)。最下部には、上位のカテゴリに戻すスタンプ「絞り込みを一つ減らす」1104を表示し、選択時には、
図10のサブカテゴリ選択画面1001に戻すことができる。
【0092】
図12は、
図11のタグ303で「#降水」631のスタンプ1104を選択した際のキーワード入力画面1201である。このキーワード入力画面1201の最上部には、上記の絞り込み「気象>天気予報>確率>#降水」の候補数1202「候補:13」を表示する。その下部には、さらなる絞り込みのためのカテゴリ301あるいはタグ303の候補がない場合、利用者Uに対するメッセージ1203「キーワードを入力して絞り込みをしてください。」と表示する。メッセージ1203の下部には、上位のカテゴリに戻すスタンプ「絞り込みを一つ減らす」1204を表示し、選択時には、
図11のタグ選択画面1101に戻すことができる。
【0093】
図13は、FAQ情報302の質問621の候補表示画面1301である。FAQ支援装置100(bot123)は、上述したカテゴリ301とタグ303により候補が所定数(例えば5つ以下)に絞り込まれると、候補表示画面1301にFAQ情報302の質問621の候補を表示する。
【0094】
この候補表示画面1301の最上部には、上記の絞り込み「気象>天気予報>確率>#降水>“時間”」の候補数1302「候補:5」を表示する。その下部には、FAQ情報302(質問)の候補が絞り込まれたことを示すメッセージ1303「候補が絞り込まれました。」と表示する。メッセージ1303の下部には、絞り込んだFAQ情報302の質問621の「降水確率はどのように決定するのでしょうか?」、「降水確率はどういう意味ですか?」、…、「天気予報の当たる確率はどれくらいですか?」のスタンプ1304を表示する。最下部には、上位のカテゴリに戻すスタンプ「絞り込みを一つ減らす」1304を表示し、選択時には、
図12のキーワード入力画面1201に戻すことができる。
【0095】
この後、利用者UがFAQ情報302のいずれかの質問621のスタンプ1304を選択することにより、利用者Uのクライアント105は、選択したスタンプ1304をFAQ支援装置100に問い合わせとして出力し、FAQ支援装置100(bot123)は、選択したスタンプ1304の質問621に対応する回答622を利用者U(クライアント105)に送信する。
【0096】
図14は、絞り込み結果、FAQ情報302の質問621の候補がなかった場合の候補なし表示画面1401である。FAQ支援装置100(bot123)は、上述したカテゴリ301とタグ303による絞り込みで候補がない場合、はじめに、利用者U(クライアント105)への送信メッセージ1402として、上記の絞り込み「気象>天気予報>確率>#降水」の候補数1403「候補:13」を表示し、その下部には、FAQ情報302(質問)の候補がないため、メッセージ1404として「キーワードを入力して絞り込みをしてください。」表示する。メッセージ1404の下部には、上位のカテゴリに戻すスタンプ「絞り込みを一つ減らす」1405を表示する。
【0097】
この後、利用者Uがクライアント105を操作し、絞り込みのためのキーワード「早朝」1413を入力したとする。
【0098】
FAQ支援装置100(bot123)は、このキーワード「早朝」を検索したが、該当するFAQ情報302(質問621)を検索できなかった場合、メッセージ1404「該当する候補が見つかりませんでした」と利用者U(クライアント105)に送信する。また、FAQ支援装置100(bot123)は、上記同様に利用者U(クライアント105)への次の送信メッセージ1405として、上記の絞り込み「気象>天気予報>確率>#降水」の候補数1403「候補:13」を表示し、その下部には、FAQ情報302(質問)の候補がないため、メッセージ1404として「キーワードを入力して絞り込みをしてください。」を表示する。メッセージ1403の下部には、上位のカテゴリに戻すスタンプ「絞り込みを一つ減らす」1405を表示する。
【0099】
上記処理によれば、FAQ支援装置100(bot123)は、利用者U(クライアント105)との間でチャットにより、カテゴリ301、タグ303を用いてFAQ情報302の質問621の候補を絞り込むことができ、この絞り込みの際、利用者Uはキーワード入力をせずともFAQ支援装置100(bot123)が送信するスタンプを選択する簡単な操作で、問い合わせを行う質問621に容易に辿り着くことができる。
【0100】
図15は、実施の形態にかかるFAQ支援装置による絞り込みの動作処理を説明する図である。FAQデータファイル121の階層構造を用いて、FAQ支援装置100(bot123)が行う上記絞り込みの動作例を説明する。
【0101】
FAQ支援装置100(bot123)は、
図15(a)〜(c)に示すように3種類の検索方法を組合せて絞り込みを行う。
図15(a)に示すカテゴリ検索では、bot123は、利用者Uによる最上位のカテゴリ301aの所定のデータ(上記例では「気象」)601の選択により、この「気象」601の下層のサブカテゴリ301bのデータ(上記例では「季節予報」、「天気予報」等)611を選択対象とする。またサブカテゴリが複数階層ある場合、同様に選択したサブカテゴリ301bの下層のデータ(上記例では「天気予報」の下層の「予測」、「確率」等)612を選択対象とする。
【0102】
カテゴリ検索では、利用者Uがクライアント105上に表示されているスタンプを選択するか、あるいは「category:カテゴリ名」あるいは「>カテゴリ名」をテキスト入力することにより、bot123は絞り込みを行う。この際、候補が複数あるカテゴリの最上位層が対象となる。
【0103】
また、
図15(b)に示すタグ検索では、利用者Uがクライアント105上に表示されているタグ303のデータ(上記例では「降水」631、「1ミリ」632等)を選択するか、「tag:タグ名」あるいは「#タグ名」をテキスト入力することにより、bot123は、絞り込みを行う。タグ検索時、bot123は、タグを対象として絞り込みを行うが、利用者Uが入力した文字が2文字以上の場合、カテゴリ301(カテゴリ301aおよびサブカテゴリ301b)も部分一致検索による絞り込みの対象とする。
【0104】
また、
図15(c)に示すキーワード検索では、利用者Uがクライアント105上でキーワードをテキスト入力することで、対応するFAQ情報302のデータ(「質問」621,「回答」622)を絞り込む。キーワードがFAQ情報の(「質問」621および「回答」622)に含まれていると、bot123は絞り込みの選択対象とする。キーワード検索時、bot123は、FAQ情報(質問+回答)302を対象として絞り込みを行うが、利用者Uが入力した文字が2文字以上の場合、カテゴリ301(カテゴリ301aおよびサブカテゴリ301b)と、タグ303も部分一致検索による絞り込みの対象とする。
【0105】
図16は、実施の形態にかかるFAQ支援装置による各検索方法を組合せた絞り込み例を説明する図である。
図16には、上述した3つの検索方法を組合せた検索結果の候補(
図13参照)が得られた状態の図を示す。
【0106】
候補表示画面1301の最上部には、上記の絞り込み「気象>天気予報>確率>#降水>“時間”」の候補数1302「候補:5」が表示されている。この際、bot123は、カテゴリ301aの「気象」601で絞り込み、サブカテゴリ301bの「天気予報」611および「確率」612で絞り込む。さらに、bot123は、タグ303の「#降水」631で絞り込み、「“時間”」のキーワードで絞り込む。
【0107】
この結果、bot123は、
図16に示すように、選択候補が5つに絞り込まれたことを表示する。なお、bot123は、「#」が先頭に付加されたものがタグ303であり、「“”」で囲まれたテキストはキーワードと認識し、その他はカテゴリ301(カテゴリ301aあるいはサブカテゴリ301b)と認識する。なお、利用者Uは、キーワードのみを入力すればよく、bot123は利用者Uが入力したキーワードの前後に「“」と「”」を付与する。
【0108】
図17は、実施の形態にかかるFAQ支援装置による利用者のテキスト入力例を示す図である。利用者Uがクライアント105上で文字(テキスト)入力する際の入力文字を示す。
図17に示すように、カテゴリ301指定時には、利用者Uは、「category:」あるいは「?」を先頭に付加して入力する。タグ303指定時には、利用者Uは、「tag:」あるいは「#」を先頭に付加して入力する。カテゴリ301あるいはタグ303の指定、絞り込み解除以外は、キーワードそのものを入力する。
【0109】
複数の絞り込み指定時には、スペースで区切り入力する。例えば、図示の例では、キーワード「時間」の後にスペースを入力し、その後、カテゴリ301「category:気象 確率」を入力した後にスペースを入力し、その後、タグ303「#降水」を入力する。この際、bot123は入力されたテキスト(文字列)を先頭から処理し、該当する候補がない入力は絞り込みの処理をスキップする。
【0110】
また、先頭に「<」が入力(
図10等の「<」のスタンプ選択)されたときには、絞り込みを一つ減らす(絞り込みを一つ解除する)。また、任意数の絞り込み解除を行う場合には、「<」の入力を繰り返す。図示の例では、3つ解除時には「<<<」と入力する。あるいは、「<」の後に絞り込みを解除する個数を指定する。図示の例では、3つ解除時には「<3」と入力する。
【0111】
また、絞り込みを全解除する場合には、「<all」と入力する。bot123は、これら利用者Uのテキスト入力を認識し、対応した絞り込み、あるいは絞り込み解除を行う。
【0112】
図18は、実施の形態にかかるFAQ支援装置による検索処理時の利用者が各検索方法を利用できる時期を示す図表である。横軸は時間であり、
図18(a)に示すように、FAQ支援装置100(bot123)は、利用者U(クライアント105)に対し、操作可能な検索方法を案内表示する。
【0113】
検索処理開始時には、利用者Uに対し、bot123は、カテゴリ301aの選択をメッセージ表示し(ステップS1801)、次に、サブカテゴリ301bの選択をメッセージ表示する(ステップS1802)。この後、bot123は、タグ303の選択をメッセージ表示し(ステップS1803)、その後キーワード入力のみ可能な旨をメッセージ表示し(ステップS1804)、絞り込みの検索結果の候補を利用者Uに表示する(ステップS1805)。
【0114】
上記検索処理時、bot123は、利用者U(クライアント105)による文字入力可能な時期を説明する。カテゴリ301選択の文字入力可能な時期T1は、カテゴリ301aおよびサブカテゴリ301bの選択完了までの期間である。タグ303選択の文字入力可能な時期T2は、カテゴリ301a〜タグ303の選択完了までの期間である。キーワードの文字入力可能な時期T3は、カテゴリ301a〜候補表示された全期間で可能である。絞り込みの解除が可能な時期T4は、サブカテゴリ301b〜候補表示までの期間である。
【0115】
図19は、実施の形態にかかるFAQ支援装置による検索結果に対する利用者への回答確認の処理例を説明する図である。上記検索結果表示後の利用者U(クライアント105による確認後のFAQ支援装置100(bot123)の処理例を説明する。
【0116】
図19に示すように、bot123は、上述した3つの検索方法を組合せた検索結果の候補(
図13参照)を候補表示画面1901に表示する。符号1902は、候補表示のうち一つのスタンプによる回答表示である。
【0117】
続いて、bot123は、候補表示画面1901が示す絞り込んだ回答表示1902について利用者Uに対し「求める回答でしたか?」と問い合わせる問い合わせ画面1903を表示する。問い合わせ画面1903上には、「はい」1911、「いいえ」1912のスタンプを表示する。
【0118】
利用者Uが「いいえ」1912のスタンプを選択したときには、候補表示画面1901に戻り、他の回答の候補表示を選択可能にする。利用者Uが「はい」1911のスタンプを選択したときには、利用者Uによるタグ付けの処理1921を行う。このタグ付けの処理1921は、上述したように、bot123が自動学習およびタグの生成を行う。そして、bot123は、カテゴリ選択に戻り、トップ画面901(
図9参照)を表示させる。
【0119】
図20は、実施の形態にかかるFAQ支援装置によるタグ付けの処理例を説明する図である。
図19に示した検索結果の回答表示1902に対し、利用者Uが求める回答である「はい」1911を選択した場合、bot123は、タグ付けの処理を行う。この際、bot123は、タグ付けの表示画面2001を利用者U(クライアント105)に送信する。タグ付けの表示画面2001には、メッセージ2002として「タグ付けをしてください。文字入力で任意のタグ付けもできます。」を表示する。
【0120】
ここで、利用者Uが、回答表示1902に含まれる文字列(テキスト)のなかから、タグ付けしたいキーワードとして、「#時間」2011を入力した場合、bot123は、このキーワード「#時間」を新たなタグ303として生成し、このタグ303を回答表示1902に関連するタグにする。例えば、FAQデータベース122(
図7に示すFAQデータファイル121)にタグ303のデータ623,624として追加更新する。
【0121】
ここで、bot123は、利用者Uによるキーワード入力がなければ、タグ付けの処理を行わない。また、環境設定(
図8参照)でタグ付けが「off」設定時にもタグ付けは行わない。
【0122】
以上説明した実施の形態によれば、検索処理時、キーワード検索に加えて、カテゴリ検索とタグ検索とを任意に選択して組合せることで、適切な絞り込みを行うことができ、利用者が求める回答を精度よく提供できるようになる。
【0123】
FAQ支援装置は、想定した利用者の問い合わせ(質問)と回答のFAQ情報に、カテゴリとタグを関連づけたFAQデータファイルをデータベースとして保持する。そして、利用者によるカテゴリやタグの選択により、利用者が問い合わせしたいFAQ情報(質問)の候補を適切に絞り込み利用者に提供できる。これにより、FAQ支援装置は、利用者によるキーワードの操作入力がなくても、利用者に対し、問い合わせ(質問)そのものを提供できるようになり、利用者の検索の手間を省力化しつつ、検索精度を向上できるようになる。また、問い合わせに関連する適切な回答を利用者に提供できるようになる。
【0124】
また、カテゴリに複数階層を設定することにより、検索時の絞り込みの精度を向上できる。さらに、FAQ情報(質問+回答)に含まれる文字列(テキスト)からタグを生成することで、検索時に新たなタグを候補として提示し検索を行うことができるようになる。また、FAQの検索を行う毎に検索精度を向上でき、加えて、利用者の検索の手間をより省力化できるようになる。
【0125】
そして、タグが追加された場合、対応するFAQ情報(質問+回答)が属する同じカテゴリのなかに、特定の数以上のタグが共通して付加されている場合、そのタグで下層のカテゴリ(サブカテゴリ)を自動生成してもよい。これにより、利用者によるカテゴリ選択によりキーワード入力がなくても目的の検索結果を得ることができる。また、特徴的なタグがカテゴリとして表示されるので、数多くのタグのなかから所望のタグを探す手間を省いた検索が行えるようになる。
【0126】
また、FAQ支援装置は、チャットのスタンプを用いて利用者に送信することで、利用者はテキスト入力等の操作を極力簡略化し、スタンプの選択だけで検索を進めることができるようになる。これにより、検索を効率的に遂行できるようになる。
【0127】
また、実施の形態によれば、FAQの業務をオペレータ等の人手を介することなく自動応答を行うことができ、24時間のFAQ業務を行うこともできる。
【0128】
上述した実施の形態では、ある企業の利用者からの問い合わせを受けるFAQの業務を例に説明したが、本願発明は、各企業の各現場からの連絡等で複数ユーザ問い合わせおよび回答による業務遂行、外食産業の複数店舗における定期的な品質管理の問い合わせおよび回答による品質管理、飲食店の予約、パート・アルバイトの管理者に対する定期的なシフト依頼および回答によるシフト勤務管理、タクシー等の運転日誌や車両情報、立替金等の日報管理等、多様な業務に適用することができる。
【0129】
なお、本実施の形態で説明したFAQの業務支援にかかるプログラムは、予め用意されたプログラムをコンピュータで実行することにより実現することができる。また、このプログラムは、半導体メモリ、ハードディスク、フレキシブルディスク、CD−ROM、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、このプログラムは、インターネット等のネットワークを介して配布してもよい。