(57)【要約】【課題】買いたい商品が当初からはっきりしていない場合でも、実店舗での販売形態に近い態様によるシステムとユーザとの対話を通じて、よりユーザの嗜好に合った商品を提案できるようにする。【解決手段】様々な商品を提案してユーザに購買候補の商品を選ばせる第１ステージ、購買候補の商品をユーザに吟味させる第２ステージ、商品の購買決定を促す第３ステージにおいて、複数種類の対話テンプレートから対話文を生成してユーザに順次提供し、ユーザが肯定の応答をした場合に、商品の検索キーワードを生成して商品情報記憶部を検索し、検索キーワードに合致する商品を抽出してユーザに提示することにより、色んな商品を見ながら購買候補をいくつか選び、それらを更に吟味して、購入する商品を決定するといった実際の購買プロセスに沿った対話を実現し、よりユーザの嗜好に合った商品を提案できるようにする。【選択図】図１
2014182548.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに対話文を提供する際に使用する複数種類の対話テンプレートを記憶する対話テンプレート記憶部と、
上記ユーザに提案する商品の情報を記憶する商品情報記憶部と、
上記対話テンプレート記憶部に記憶されている上記複数種類の対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、ユーザに提供する対話文提供部と、
上記対話文提供部により提供された対話文に対してユーザが肯定の応答をした場合に、当該対話文に関連して商品の検索キーワードを生成するキーワード生成部と、
上記キーワード生成部により生成された検索キーワードを用いて上記商品情報記憶部を検索し、上記検索キーワードに合致する商品を抽出してユーザに提示する商品提示部とを備え、
上記対話テンプレート記憶部に記憶されている上記対話テンプレートは、様々な商品を提案してユーザに購買候補の商品を選ばせるための第１ステージの対話テンプレートと、上記第１ステージで選ばれた上記購買候補の商品をユーザに吟味させるための第２ステージの対話テンプレートと、上記第２ステージで吟味された上記購買候補の商品の購買決定をユーザに促すための第３ステージの対話テンプレートとを含み、
上記対話文提供部は、上記第１ステージから上記第３ステージのうち現在設定されているステージの対話テンプレートを上記対話テンプレート記憶部から上記所定のシナリオに沿って順次読み出して上記対話文を生成し、ユーザに提供することを特徴とする商品情報提供システム。
【請求項２】
上記対話テンプレート記憶部に記憶されている上記対話テンプレートは、上記第１ステージと上記第２ステージとの間および上記第２ステージと上記第３ステージとの間の遷移を促す対話文を生成するためのステージ間遷移の対話テンプレートを含み、
上記対話文提供部は、上記ステージ間遷移の対話テンプレートに基づき提供した対話文に対してユーザが肯定の応答をした場合に、上記現在設定されているステージを遷移させることを特徴とする請求項１に記載の商品情報提供システム。
【請求項３】
対話テンプレート記憶部に記憶されている複数種類の対話テンプレートであって、様々な商品を提案してユーザに購買候補の商品を選ばせるための第１ステージの対話テンプレート、上記第１ステージで選ばれた上記購買候補の商品をユーザに吟味させるための第２ステージの対話テンプレート、および上記第２ステージで吟味された上記購買候補の商品の購買決定をユーザに促すための第３ステージの対話テンプレートのうち、現在設定されているステージの対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、ユーザに提供する対話文提供部手段、
上記対話文提供手段により提供された対話文に対してユーザが肯定の応答をした場合に、当該対話文に関連して商品の検索キーワードを生成するキーワード生成手段、および
上記キーワード生成手段により生成された検索キーワードを用いて、商品の情報を記憶した商品情報記憶部を検索し、上記検索キーワードに合致する商品を抽出してユーザに提示する商品提示手段
としてコンピュータを機能させるための商品情報提供用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、商品情報提供システムおよび商品情報提供用プログラムに関し、特に、対話を通じてユーザの嗜好に合った商品を提案するシステムに用いて好適なものである。
【背景技術】
【０００２】
インターネット上には様々なショッピングサイトが存在する。ユーザは、これらのショッピングサイトを利用することで、店頭に出向く必要もなく好きな商品を購入することができる。この便利さがうけて、現在ではショッピングサイトが多くのユーザに広く利用されている。
【０００３】
様々な商品を販売しているモールのようなショッピングサイトでは、様々な商品がジャンル別に分類して表示されている。そのため、ユーザが好みのジャンルを選択して商品一覧を表示させることにより、好みに合った商品を容易に探すことができるようになっている。
【０００４】
また、サイト内の情報をキーワードにより検索できるようになされたショッピングサイトも多い。このような検索機能を備えたショッピングサイトでは、商品に関連したキーワードを用いてサイト内を検索することにより、ユーザの好みに合った商品をより簡単に探すことができるようになっている。
【０００５】
このような形態のショッピングサイトは、ユーザの買いたい商品が明確となっている場合には適している。ユーザが自らの意思で選択したジャンルや検索窓に入力したキーワードをもとにして該当する商品の情報を提供する、いわゆるＰＵＬＬ型の情報提供をベースとしているからである。
【０００６】
しかし、ユーザの買いたい商品が明確に決まっていない場合や、商品検索時に自らの好みが曖昧な場合などは、ジャンルを選択したりキーワードを入力して検索したりすること自体が困難である。そのため、ＰＵＬＬ型の情報提供の仕組みではユーザに有益な情報を提供することができないという問題があった。
【０００７】
これに対して、ユーザの個人情報や過去の購買履歴に関する情報などに基づいて、ユーザが欲すると思われる商品の情報を提供する、いわゆるＰＵＳＨ型の情報提供の仕組みを採用したシステムも存在する。しかしながら、この種のシステムでは、システム側に設定された所定のアルゴリズムに基づいて、情報提供側の論理で抽出される商品をユーザに提案する仕組みを採用している。そのため、提案される商品は画一的なものとなり、ユーザにとって必ずしも好みの商品や興味を引く商品であるとは限らないという問題があった。
【０００８】
このような問題に対して、より顧客に合った商品を的確な提案形態により紹介することを目的とした技術が提供されている（例えば、特許文献１参照）。的確な提案形態とは、実店舗において販売員が顧客の外見（年齢、性別など）や顧客の振る舞いをもとに勧める商品を選択するのと同様の形態をいう。例えば、実店舗において販売員は、顧客の性格（内面）や反応などの違いに応じて、強く商品を勧めたり、あるいはさりげなく商品を勧めたり、または商品の特徴の伝え方を変えたりしている。
【０００９】
上述のような目的を達成するために、特許文献１に記載の技術では、顧客の心理特性と顧客の商品に対する対応の違いを表すコミュニケーションタイプとの相関に基づいて決定されたモデルごとの商品の提案形態を作成するためのルールをルールデータベースに登録しておく。そして、ログインしてきた顧客に対して、属性情報（年齢、性別など）とコミュニケーションタイプとに応じてルールに従って商品の提案形態を作成し、作成した提案形態により商品を紹介する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００３−３４６０４６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記特許文献１に記載の技術では、顧客のコミュニケーションタイプを把握するために、ログインしてきた顧客に対して心理テストを実行する必要がある。このような心理テストは、実店舗における商品販売の場面で行われることはない。したがって、特許文献１に記載の技術は、顧客に対して余計な負担を強いるものであり、実店舗での販売形態に近い態様で商品の提案をすることができないという問題があった。
【００１２】
また、ユーザの買いたい商品が明確に決まっていない場合、ユーザは商品選びに迷うことが多い。実際には、色んな商品を見ながら購買候補をいくつか選び、それらを更に吟味して、購入する商品を決定する。このような思考のプロセスを経ることにより、ユーザは自分の好みに合った商品を納得して購入することができるのである。しかし、上記特許文献１に記載の技術は、このような実際の購入プロセスを考慮したものではなく、推定したユーザの心理状態に応じてどのような形態でどのような商品を提案するかを決めているに過ぎない。そのため、必ずしもユーザが納得する商品を提案することができないという問題があった。
【００１３】
本発明は、このような問題を解決するために成されたものであり、ユーザの買いたい商品が当初からはっきりしていない場合などでも、実店舗での販売形態に近い態様によるシステムとユーザとの対話を通じて、よりユーザの嗜好に合った商品を提案することができるようにすることを目的とする。
【課題を解決するための手段】
【００１４】
上記した課題を解決するために、本発明では、複数種類の対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、ユーザに提供する。そして、提供された対話文に対してユーザが肯定の応答をした場合に、商品の検索キーワードを生成して商品情報記憶部を検索し、当該検索キーワードに合致する商品を抽出してユーザに提示するようにしている。
ここで、対話テンプレートは、様々な商品を提案してユーザに購買候補の商品を選ばせるための第１ステージの対話テンプレートと、第１ステージで選ばれた購買候補の商品をユーザに吟味させるための第２ステージの対話テンプレートと、第２ステージで吟味された購買候補の商品の購買決定をユーザに促すための第３ステージの対話テンプレートとを含み、現在設定されているステージの対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、ユーザに提供するようにしている。
【発明の効果】
【００１５】
上記のように構成した本発明によれば、色んな商品を見ながら購買候補をいくつか選び、それらを更に吟味して、購入する商品を決定するといった実際の購買プロセスに沿って、システムとユーザとの間で対話が行われる。そして、その繰り返しの対話の中でユーザが肯定の応答をしたときに、その対話文に関連して商品の検索キーワードが生成され、当該検索キーワードに合致する商品がユーザに提案されることとなる。
【００１６】
このとき提案される商品は、ユーザが対話文に対して肯定の応答をすることによって興味を示した事柄に沿った商品である。これにより、ユーザの買いたい商品が当初からはっきりしていない場合などでも、実店舗での販売形態に近い態様によるシステムとユーザとの対話を通じて、よりユーザの嗜好に合った商品を提案することができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態による商品情報提供システムの機能構成例を示すブロック図である。
【図２Ａ】本実施形態の対話テンプレート記憶部に記憶される第１ステージの対話テンプレートＤＢの一例を示す図である。
【図２Ｂ】本実施形態の対話テンプレート記憶部に記憶される第２ステージの対話テンプレートＤＢの一例を示す図である。
【図２Ｃ】本実施形態の対話テンプレート記憶部に記憶される第３ステージの対話テンプレートＤＢの一例を示す図である。
【図３】本実施形態の対話画面の一例を示す図である。
【図４】本実施形態の対話画面にタイムラインが表示された状態を示す図である。
【図５】本実施形態の対話ログ記憶部に記憶される対話応答ログＤＢの一例を示す図である。
【図６】本実施形態による対話応答ログＤＢの集計結果の一例を示す図である。
【図７】本実施形態によるクライアント端末の動作例を示すフローチャートである。
【図８】本実施形態による商品情報提供システムの動作例であって、対話取得ＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。
【図９】本実施形態による商品情報提供システムの動作例であって、商品検索ＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。
【図１０】本実施形態による商品情報提供システムの動作例であって、対話応答ログＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。
【図１１】本実施形態による商品情報提供システムの動作例であって、ステージ間遷移ＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。
【図１２】本実施形態による商品情報提供システムの動作例であって、所定の時間間隔毎に実行されるバッチ処理の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態による商品情報提供システムの機能構成例を示すブロック図である。図１に示すように、本実施形態の商品情報提供システム１００は、その機能構成として、対話テンプレート記憶部１、商品情報記憶部２、対話文提供部３、キーワード生成部４、商品提示部５、ユーザ情報管理部６、ユーザ情報記憶部７、関連キーワード記憶部８、キーワード変換部９、対話ログ管理部１０および対話ログ記憶部１１を備えている。
【００１９】
商品情報提供システム１００が備える対話文提供部３、キーワード生成部４、商品提示部５、ユーザ情報管理部６、キーワード変換部９および対話ログ管理部１０の各機能は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、これらの各機能は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶された商品情報提供用プログラムが動作することによって実現される。
【００２０】
本実施形態の商品情報提供システム１００は、インターネット等の通信ネットワークに接続可能になされたサーバ装置で構成されており、当該通信ネットワークを介してクライアント端末２００およびソーシャルネットワーキングサービス（ＳＮＳ）を提供するサーバ装置（以下、ＳＮＳサーバ３００という）と接続されている。クライアント端末２００は、その機能構成として、ユーザインタフェース部（ＵＩ部）２１を備えている。
【００２１】
ＵＩ部２１は、ユーザが商品情報提供システム１００と対話をするためのユーザインタフェースを提供するためのものである。具体的には、ＵＩ部２１は、商品情報提供システム１００が生成する対話画面をディスプレイに表示させるとともに、当該対話画面を通じてユーザから商品情報提供システム１００に対して所望の応答や指示を行うためのユーザインタフェースを提供する。
【００２２】
対話テンプレート記憶部１は、ＵＩ部２１を通じてユーザに対話文を提供する際に使用する複数種類の対話テンプレートを記憶する。本実施形態では、対話テンプレート記憶部１に記憶する対話テンプレートとして、様々な商品を提案してユーザに購買候補の商品を選ばせるための第１ステージの対話テンプレートと、第１ステージで選ばれた購買候補の商品（後述するピンボードエリアに取り置きされた商品）をユーザに吟味させるための第２ステージの対話テンプレートと、第２ステージで吟味された購買候補の商品の購買決定をユーザに促すための第３ステージの対話テンプレートとを備えている。
【００２３】
また、本実施形態では、対話テンプレート記憶部１に記憶する対話テンプレートとして、定型対話のテンプレート、置換対話のテンプレート、自由発言のテンプレート、視点変換のテンプレートおよびステージ間遷移のテンプレートを備えている。
【００２４】
ここで、ステージ間遷移のテンプレートは、少なくとも第１ステージおよび第２ステージの対話テンプレートとして必須のものである。これに対し、定型対話のテンプレート、置換対話のテンプレート、自由発言のテンプレート、視点変換のテンプレートは、ステージ毎に任意のものを備えている。様々な商品を提案する第１ステージに関しては、定型対話のテンプレート、置換対話のテンプレート、自由発言のテンプレート、視点変換のテンプレートの全てを備えるのが好ましい。
【００２５】
定型対話のテンプレートは、あらかじめ決められた文言による対話文を生成するためのテンプレートである。置換対話のテンプレートは、あらかじめ決められた文言の中に対話文提供部３が生成する挿入キーワードを挿入することによって対話文を生成するためのテンプレートである。自由発言のテンプレートは、ユーザに対してテキスト文の入力による自由発言を促す対話文を生成するためのテンプレートである。視点変換のテンプレートは、ユーザに対して視点を変えた商品検索を促す対話文を生成するためのテンプレートである。ステージ間遷移のテンプレートは、第１ステージと第２ステージとの間および第２ステージと第３ステージとの間の遷移を促す対話文を生成するためのテンプレートである。
【００２６】
図２Ａ〜図２Ｃは、対話テンプレート記憶部１に記憶される対話テンプレートのデータベース（ＤＢ）の一例を示す図である。このうち、図２Ａは第１ステージの対話テンプレート、図２Ｂは第２ステージの対話テンプレート、図２Ｃは第３ステージの対話テンプレートを示している。
【００２７】
図２Ａ〜図２Ｃに示すように、対話テンプレートＤＢは、レコードＩＤ、対話シナリオＩＤ、対話テキスト、検索キーワード、応答テキスト、応答への応答テキストを項目として含んでいる。このうち、レコードＩＤは、対話テンプレートＤＢを構成する各レコードに対して付与される昇順の番号である。
【００２８】
対話シナリオＩＤは、ユーザに対話文を順次提供していく際に使用する対話テンプレートのシーケンスを特定するためのＩＤである。図２Ａ〜図２Ｃの例において、対話シナリオＩＤの先頭にある数字は、ステージ番号を示している。また、対話シナリオＩＤの２番目にあるアルファベットは、対話テンプレートの種類を示している。Ａは定型対話のテンプレート、Ｂは置換対話のテンプレート、Ｃは自由発言のテンプレート、Ｄは視点変換のテンプレート、Ｅはステージ間遷移のテンプレートである。
【００２９】
また、対話シナリオＩＤの末尾にある数字がシナリオ番号に相当する。対話文提供部３が対話文を生成する際には、このシナリオ番号の昇順に従ってレコードが１つずつ順次取得される。シナリオ番号の末尾までレコードが取得されると、再びシナリオ番号の先頭に戻って次のレコードが取得される。なお、このシナリオ番号は、ステージ毎に個別に設定されている。
【００３０】
対話テキストの項目には、ユーザに提示する対話文の文言がテキスト文として記述されている。置換対話のテンプレートの場合、文言の中に置換対象タグ[ｎ]（ｎ＝１，２，・・・）が埋め込まれている。この置換対象タグ[ｎ]が、対話文提供部３により生成される挿入キーワードに置換されて対話文が生成されるようになっている。
【００３１】
検索キーワードは、定型対話のテンプレートに対して設定されている。定型対話のテンプレートに基づいて生成された対話文に対してユーザが肯定の応答をした場合に、図２Ａ〜図２Ｃの対話テンプレートＤＢに設定されている検索キーワードがキーワード生成部４により抽出され、新たな検索キーワードとして生成されるようになっている。
【００３２】
応答テキストは、対話テキストから生成された対話文に対してユーザが肯定または否定の応答するための選択肢として使われる回答文の文言がテキスト文として記述されている。また、応答への応答テキストは、ユーザが肯定または否定の応答をした場合に、更にその応答としてシステムがユーザに提示する対話文の文言がテキスト文として記述されている。
【００３３】
なお、図２Ａ〜図２Ｃに示す対話テンプレートＤＢでは、複数種類の対話テンプレートを対話シナリオのシーケンスに沿った順番で各レコードに格納する例を示しているが、この構造に限定されるものではない。例えば、複数の対話テンプレートをその種類毎にグルーピングし、種類毎に分けてレコードに格納する構造としてもよい。このようにしても、対話シナリオＩＤの末尾にあるシナリオ番号に従って、複数の対話テンプレートを対話シナリオのシーケンスに沿って順次取得していくことが可能である。
【００３４】
また、図２Ａ〜図２Ｃに示す対話テンプレートＤＢでは、対話シナリオＩＤの末尾にあるシナリオ番号が全て異なる数字で示されているが、同じ数字の対話シナリオＩＤが複数あってもよい。シナリオ番号の同じレコードが複数ある場合、対話文提供部３がシーケンスに従って１つの対話文を生成する際には、同じシナリオ番号が付された複数のレコードの中から何れか１つのレコードをランダムに、あるいは所定のルールに従って取得する。
【００３５】
商品情報記憶部２は、ＵＩ部２１によりディスプレイに表示される対話画面を通じてユーザに提案する商品の情報を記憶する。商品情報記憶部２に記憶する商品情報は、例えば、商品名、商品属性（色、サイズ、男性用か女性用かの性別など）、商品画像、商品の説明文、価格などを含んでいる。
【００３６】
図３は、ＵＩ部２１によりディスプレイに表示される対話画面の一例を示す図である。図３に示すように、本実施形態の対話画面は、対話エリア３１、検索条件エリア３５、商品一覧エリア３７、ピンボードエリア３８および自由発言エリア３９を備えている。
【００３７】
対話エリア３１の中には仮想店員３２が表示され、対話文提供部３により生成される対話文３３が仮想店員３２からの発言として（吹き出しとして）提示されるようになっている。吹き出しの中には、対話テンプレートＤＢの対話テキストや応答への応答テキストから生成される対話文３３が表示されるとともに、対話テンプレートＤＢの応答テキストから生成される肯定および否定の回答文３４が表示されている。回答文３４は、ＵＩ部２１を通じて操作可能なボタンとなっている。
【００３８】
検索条件エリア３５には、ユーザに提示する商品を検索する際の検索キーワードが設定されている。この検索キーワードは、後述するようにキーワード生成部４により生成されるものである。検索条件エリア３５に複数の検索キーワードが設定されている場合、本実施形態ではそれら複数の検索キーワードを用いたＯＲ検索を行う。
【００３９】
検索条件エリア３５には、ＵＩ部２１を通じて操作可能な編集ボタン３６が表示されている。編集ボタン３６を操作することにより、設定されている検索キーワードの詳細画面を表示させ、不要となった検索キーワードを削除することができるようになっている。また、個々の検索キーワードに対して所望の重みを設定することも可能である。検索キーワードに重みを設定した場合、ＯＲ検索の結果として商品一覧エリア３７に表示される商品一覧において、大きな重みを設定した検索キーワードに合致する商品ほど上位の位置に表示されるようになる。
【００４０】
商品一覧エリア３７には、検索条件エリア３５に設定されている１以上の検索キーワードを用いたＯＲ検索により抽出された商品が一覧として表示される。図３の例では、ＯＲ検索の検索条件に合致する複数の商品の画像が一覧表示されている。なお、ログイン時や検索キーワードの削除時など、検索キーワードの数が０の場合もある。その場合は全商品の一部が一覧として表示さる。ユーザがＵＩ部２１を通じて所望の商品画像を選択すると、その商品に関する詳細な情報（商品属性や説明文など）が表示されるようになっている。
【００４１】
ピンボードエリア３８には、ＵＩ部２１を通じてユーザにより指定された取り置き商品の画像が表示される。取り置き商品とは、興味はあるけれども購入するかどうかをまだ迷っているときにユーザにより指定される購買候補の商品のことであり、ショッピングカートにはまだ入れられていない状態の商品である。商品の取り置きは、例えば、商品一覧エリア３７に表示された商品一覧の中から所望の商品画像をピンボードエリア３８にドラッグ操作することによって行うことが可能である。
【００４２】
自由発言エリア３９は、ユーザがＵＩ部２１を通じて所望のテキスト文を自由発言として入力するためのエリアである。この自由発言エリア３９にテキスト文を入力して発言ボタン４０を押下することにより、商品情報提供システム１００に対してユーザの自由発言を入力することが可能である。
【００４３】
図３に示す対話画面には、以上説明した各エリアの他に、タイムラインボタン４１およびカートボタン４２が表示されている。タイムラインボタン４１を押下すると、それまでに行われた対話応答のログがタイムラインとして一覧表示されるようになっている。
【００４４】
図４は、当該タイムラインが表示された状態の画面例を示す図である。図４に示す例では、対話エリア３１に表示された過去の対話文３３が時系列で表示されている。各々の対話文３３にはリプレイボタン４３が表示されている。ユーザがこのリプレイボタン４３を押下すると、その対話文が対話エリア３１に再び表示されるようになっている。
【００４５】
カートボタン４２は、商品をショッピングカートに入れることを指示するためのボタンである。本実施形態では、ピンボードエリア３８に商品画像が貼り付けられている状態でカートボタン４２を押下することにより、ピンボードエリア３８上の商品をショッピングカードに移すことができるようになっている。
【００４６】
図１に戻って説明を続ける。対話文提供部３は、対話テンプレート記憶部１に記憶されている複数種類の対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、ＵＩ部２１を通じてユーザに提供する。図２Ａ〜図２Ｃで説明したように、本実施形態では、対話テンプレートＤＢの対話シナリオＩＤに従って、複数種類の対話テンプレートを順次読み出して対話文を生成し、ユーザに提供する。対話文のユーザに対する提示は、図３に示したように対話画面に表示させた仮想店員３２からの発言として行うようにする。
【００４７】
本実施形態では、対話文提供部３は、第１ステージ〜第３ステージのうち、現在設定されているステージの対話テンプレートを対話テンプレート記憶部１から所定のシナリオに沿って順次読み出して対話文３３を生成し、ユーザに提供する。また、対話文提供部３は、ステージ間遷移の対話テンプレートに基づき提供した対話文３３に対してユーザが肯定の応答をした場合に、現在設定されているステージを遷移させる。なお、現在設定されているステージの情報は、ユーザ情報記憶部７に記憶されている（詳しくは後述する）。
【００４８】
例えば、図２Ａに示した対話シナリオＩＤ“１Ｅｘｘｉ”の対話テンプレートは、第１ステージから第２ステージへの遷移を促す対話文を生成するためのテンプレートである。この対話テンプレートから生成された対話文３３に対してユーザが肯定の応答をすると、対話文提供部３は現在設定されているステージを第１ステージから第２ステージへ遷移させる。
【００４９】
また、図２Ｂに示した対話シナリオＩＤ“２Ｅｘｘｉ”の対話テンプレートは、第２ステージから第３ステージへの遷移を促す対話文を生成するためのテンプレートである。この対話テンプレートから生成された対話文３３に対してユーザが肯定の応答をすると、対話文提供部３は現在設定されているステージを第２ステージから第３ステージへ遷移させる。
【００５０】
さらに、図２Ｂに示した対話シナリオＩＤ“２Ｅｘｘｉ＋１”の対話テンプレートは、第２ステージから第１ステージへの遷移を促す対話文を生成するためのテンプレートである。この対話テンプレートから生成された対話文３３に対してユーザが肯定の応答をすると、対話文提供部３は現在設定されているステージを第２ステージから第１ステージへ遷移させる。
【００５１】
定型対話のテンプレートを使用する場合、対話文提供部３は、対話テンプレート記憶部１の対話テンプレートＤＢから取得した対話テキストをそのまま対話文３３として生成し、仮想店員３２が発言する態様でユーザに提示する。このとき対話文提供部３は、対話テンプレートＤＢの対話テキストと同じレコードから取得した応答テキストを用いて回答文３４を生成し、対話文３３と一緒に回答の選択肢としてユーザに提示する。
【００５２】
そして、ユーザが回答文３４の何れかを押下して対話に応答した場合、対話文提供部３は、対話テンプレートＤＢの同じレコードから取得した応答への応答テキストを用いて、仮想店員３２が応答として発言する対話文３３を生成し、ユーザに提示する。これで１セットの対話（１レコードの対話シナリオＩＤに関する対話）が終了する。なお、ユーザが何れの回答文３４も押下しない場合は、所定時間の経過をもってタイムアウトとし、その対話文３３に関する吹き出しを対話エリア３１から消去する。
【００５３】
また、置換対話のテンプレートを使用する場合、対話文提供部３は、対話テンプレート記憶部１の対話テンプレートＤＢから取得した対話テキストに埋め込まれている置換対象タグ[ｎ]の部分を、対話文提供部３が生成した挿入キーワードで置換することによって対話文３３を生成し、仮想店員３２が発言する態様でユーザに提示する。このとき対話文提供部３は、対話テンプレートＤＢの対話テキストと同じレコードから取得した応答テキストを用いて回答文３４を生成し、対話文３３と一緒に回答の選択肢としてユーザに提示する。ユーザが回答文３４の何れかを押下して対話に応答した場合、または対話に応答しなかった場合の処理については、定型対話のテンプレートを使用する場合と同様である。
【００５４】
対話文提供部３が置換対象タグ[ｎ]に対する挿入キーワードを生成する方法として、本実施形態では５つの方法を用意している。対話文提供部３が１つの対話文を生成する際は、５つの方法の中から何れか１つを任意に選択して実施する。あるいは、個々の対話シナリオＩＤに対して、どの生成方法を適用するかをあらかじめ定めておいてもよい。
【００５５】
置換対象タグ[ｎ]に対する挿入キーワードを生成する５つの方法とは、(1)ＳＮＳからのプロフィール取得、(2)ＳＮＳからの特徴語取得、(3)ピンボードからの共通特徴取得、(4)ＳＮＳからのプロフィール取得と関連キーワードへの変換、(5)現在設定中の検索キーワードの関連キーワードへの変換、の５つである。以下、これらを１つずつ説明する。
【００５６】
(1)ＳＮＳからのプロフィール取得
対話文提供部３は、ユーザが使用しているＳＮＳサーバ３００にインターネットを介してアクセスし、当該ＳＮＳサーバ３００に登録されているプロフィール情報からユーザの興味情報を抽出し、当該興味情報から挿入キーワードを生成する。例えば、対話文提供部３は、Facebook graph API（Facebookは登録商標。以下同様）でユーザの“interests”や“activities”を興味情報として取得し、その中からランダムに取得した１つのキーワードを置換対象タグ[ｎ]に対する挿入キーワードとして生成する。
【００５７】
(2)ＳＮＳからの特徴語取得
対話文提供部３は、ユーザが使用しているＳＮＳサーバ３００にインターネットを介してアクセスし、当該ＳＮＳサーバ３００から直近の発言情報を抽出し、当該発言情報から挿入キーワードを生成する。例えば、対話文提供部３は、Facebook graph APIでユーザの直近の発言情報（テキスト文）をｍ件取得して結合する。そして、結合したテキスト文から特徴語を抽出し、これを置換対象タグ[ｎ]に対する挿入キーワードとして生成する。
【００５８】
ここで、テキスト文から抽出する特徴語とは、例えば、そのテキスト文の中に頻出する単語である。あるいは、そのテキスト文の中で使われている単語のうち他のユーザがあまり使用していない単語である。後者の場合、例えば、複数のユーザに対する対話文を生成する際に頻出単語として抽出した特徴語をデータベースとして保存しておく。そして、このデータベースに登録されていない単語を、他のユーザがあまり使用していない特徴語としてテキスト文から抽出する。あるいは、多くのドキュメントに出現する語（一般的な語）は値が低くなり、特定のドキュメントにしか出現しない語は値が高くなるような指標を用いて、その指標がある閾値より大きいものを特徴語として抽出するようにしてもよい。
【００５９】
(3)ピンボードからの共通特徴取得
対話文提供部３は、ピンボードエリア３８に取り置きされた商品の説明文を商品情報記憶部２から取得し、当該商品の説明文から挿入キーワードを生成する。例えば、対話文提供部３は、ピンボードエリア３８に取り置きされた商品の説明テキスト文を全て結合する。そして、結合したテキスト文から特徴語を抽出し、これを置換対象タグ[ｎ]に対する挿入キーワードとして生成する。ここで、テキスト文から抽出する特徴語は、上述の特徴語と同様である。
【００６０】
(4)ＳＮＳからのプロフィール取得と関連キーワードへの変換
この方法では、関連キーワード記憶部８およびキーワード変換部９を使用する。関連キーワード記憶部８は、一のキーワードとそれに対する関連キーワードとを対応付けて関連キーワード情報として記憶する。ここで、１つのキーワードに対して１つの関連キーワードを対応付けてもよいし、１つのキーワードに対して複数の関連キーワードを対応付けてもよい。
【００６１】
キーワード変換部９は、一のキーワードを入力して、それを関連キーワード記憶部８に記憶されている関連キーワード情報に基づいて関連キーワードに変換する。ここで、関連キーワード記憶部８の関連キーワード情報において、キーワード変換部９に入力された１つのキーワードに対して複数の関連キーワードが対応付けられている場合、キーワード変換部９は複数の関連キーワードの中から何れか１つをランダムに選択する。
【００６２】
対話文提供部３は、(1)ＳＮＳからのプロフィール取得のところで説明した方法によって、ＳＮＳサーバ３００からユーザの興味情報を取得してキーワードを生成する。さらに、対話文提供部３は、当該生成したキーワードをキーワード変換部９に供給してキーワード変換を実行させ、キーワード変換部９より出力された関連キーワードを最終的に置換対象タグ[ｎ]に対する挿入キーワードとして生成する。
【００６３】
ここでは、まずＳＮＳサーバ３００からのプロフィール取得によってキーワードを生成し、それを関連キーワードに変換する例について説明したが、本発明はこれに限定されない。例えば、(2)ＳＮＳからの特徴語取得、または(3)ピンボードからの共通特徴取得のとこで説明した方法によってキーワードを生成し、それを関連キーワードに変換することによって挿入キーワードを生成するようにしてもよい。
【００６４】
(5)現在設定中の検索キーワードの関連キーワードへの変換
対話文提供部３は、検索条件エリア３５に設定されている１以上の検索キーワードの中から何れか１つをランダムに抽出する。そして、抽出した検索キーワードをキーワード変換部９に供給してキーワード変換を実行させ、キーワード変換部９より出力された関連キーワードを置換対象タグ[ｎ]に対する挿入キーワードとして生成する。なお、検索条件エリア３５に設定されている１以上の検索キーワードは、ユーザ情報記憶部７に記憶されている（詳しくは後述する）。
【００６５】
対話文提供部３は、自由発言のテンプレートを使用する場合、対話テンプレート記憶部１の対話テンプレートＤＢから取得した対話テキストをそのまま対話文３３として生成し、仮想店員３２が発言する態様でユーザに提示する。このときも対話文提供部３は、対話テンプレートＤＢの対話テキストと同じレコードから取得した応答テキストを用いて回答文３４を生成し、対話文３３と一緒に回答の選択肢としてユーザに提示する。
【００６６】
ここで、ユーザが肯定の回答文３４を押下して対話に応答した場合、対話文提供部３は、その後ユーザにより入力された自由発言のテキスト文からキーワードを抽出し、抽出したキーワードを置換対象タグ[ｎ]に対する挿入キーワードとして用いることにより、置換対話の対話文３３を生成して提供する。一方、自由発言を促す対話に対してユーザが否定の回答文３４を押下して応答した場合、および当該対話に対して何ら応答しなかった場合の処理については、定型対話のテンプレートを使用する場合と同様である。
【００６７】
なお、テキスト文からのキーワードの抽出は、例えば以下のようにして行う。すなわち、対話文提供部３は、自由発言として入力されたテキスト文を形態素解析してあらかじめ設定した品詞（例えば、名詞および形容詞）を抽出し、その中から何れか１つまたは複数個をランダムに選択して検索キーワードとする。
【００６８】
また、対話文提供部３は、視点変換のテンプレートを使用する場合、対話テンプレート記憶部１の対話テンプレートＤＢから取得した対話テキストをそのまま対話文３３として生成し、仮想店員３２が発言する態様でユーザに提示する。このとき対話文提供部３は、対話テンプレートＤＢの対話テキストと同じレコードから取得した応答テキストを用いて回答文３４を生成し、対話文３３と一緒に回答の選択肢としてユーザに提示する。ユーザが回答文３４の何れかを押下して対話に応答した場合、または対話に応答しなかった場合の処理については、定型対話のテンプレートを使用する場合と同様である。
【００６９】
また、対話文提供部３は、ステージ間遷移のテンプレートを使用する場合、対話テンプレート記憶部１の対話テンプレートＤＢから取得した対話テキストをそのまま対話文３３として生成し、仮想店員３２が発言する態様でユーザに提示する。このとき対話文提供部３は、対話テンプレートＤＢの対話テキストと同じレコードから取得した応答テキストを用いて回答文３４を生成し、対話文３３と一緒に回答の選択肢としてユーザに提示する。
【００７０】
ここで、ユーザが否定の回答文３４を押下して対話に応答した場合、または対話に応答しなかった場合の処理については、定型対話のテンプレートを使用する場合と同様である。一方、ユーザが肯定の回答文３４を押下して対話に応答した場合、対話文提供部３は、対話テンプレートＤＢの同じレコードから取得した応答への応答テキストを用いて、仮想店員３２が応答として発言する対話文３３を生成し、ユーザに提示する。さらに、対話文提供部３は、現在設定されているステージを遷移させるとともに、ユーザ情報管理部６を介してユーザ情報記憶部７に遷移後のステージを記憶させる。
【００７１】
様々な商品を提案してユーザに購買候補の商品を選ばせる第１ステージでは、以上に説明した定型対話、置換対話、自由発言、視点変換の対話テンプレートを全て用いるのが好ましい。また、置換対話の対話テンプレートでは、置換対象タグ[ｎ]に対する挿入キーワードを生成する方法として５つの方法を全て用いるのが好ましい。
【００７２】
このように、第１ステージでは、複数種類の対話テンプレートと複数の挿入キーワード生成法を駆使することにより、様々な観点から商品を提案する。例えば、対話を通じてユーザの好みの条件を探したり、トレンド情報や店員ノウハウ等で誘引したり、ユーザが探していそうな商品を先回りしたり、パーソナライズされた情報で誘引したりする。あるいは、対話を通じて検索キーワードの重みを変えたり、ピンボードエリア３８にある商品から新たな検索キーワードを設定したりもする。
【００７３】
これに対して、第１ステージでピンボードエリア３８に取り置きされた商品をユーザに吟味させる第２ステージでは、主に定型対話や置換対話の対話テンプレートを用い、取り置きされた商品を深堀するような対話を実現する。置換対話の対話テンプレートにおいても、置換対象タグ[ｎ]に対する挿入キーワードを生成する方法として５つの方法を全て用いることは必須でない。
【００７４】
例えば、第２ステージでは、対話を通じて、ピンボードエリア３８に取り置きされている商品の利用シーンをイメージさせたり、取り置き商品の説明文から共通特徴を抽出して設定した検索キーワードで検索可能な類似商品を提案したり、取り置き商品の異なる属性を提示して勧めるなどして、ユーザが迷っていることへの理解・共感を演出したりする。
【００７５】
また、ピンボードエリア３８に取り置きされた商品の購買決定をユーザに促す第３ステージでは、主に定型対話の対話テンプレートに基づく対話文を通じて、商品の利用シーンにおける不安要素を取り除いたり、購入意欲を高める最後の一押しをしたりする。
【００７６】
キーワード生成部４は、対話文提供部３により提供された対話文（ステージ間遷移のテンプレートに基づくものを除く）に対してユーザが肯定の応答をした場合に、当該対話文から検索キーワードを生成する（その生成方法の詳細は後述する）。そして、検索キーワードを生成した旨を商品提示部５に通知するとともに、ユーザ情報管理部６を介してユーザ情報記憶部７に検索キーワードを記憶させる。商品提示部５は、キーワード生成部４により生成された検索キーワードを用いて商品情報記憶部２を検索し、検索キーワードに合致する商品を抽出してユーザに提示する。
【００７７】
本実施形態では、商品提示部５は、繰り返しの対話を通じてキーワード生成部４により順次生成されて検索条件エリア３５に設定された１以上の検索キーワードを用いたＯＲ検索により、商品情報記憶部２の中から当該ＯＲ検索の検索条件に合致する商品を抽出してユーザに提示する。すなわち、検索条件に合致した商品を商品一覧エリア３７に表示させる。
【００７８】
上述したように、キーワード生成部４により生成された検索キーワードは、ユーザ情報管理部６を介してユーザ情報記憶部７に順次記憶される。商品提示部５は、キーワード生成部４により新たに１つの検索キーワードが生成されたときに、その新たな検索キーワードも含めてユーザ情報記憶部７に記憶された１以上の検索キーワードを用いてＯＲ検索を行い、その検索でヒットした商品を商品一覧エリア３７に表示させる。
【００７９】
すなわち、対話文提供部３により提供された何らかの対話文に対してユーザが肯定の応答をすると、当該対話文から１つの検索キーワードがキーワード生成部４により生成されて、検索条件エリア３５に追加設定される（ユーザ情報記憶部７に追加登録される）。そして、当該設定された１以上の検索キーワードを用いたＯＲ検索が商品提示部５により実行されて、商品一覧エリア３７に一覧表示される。このように、本実施形態では、対話文に対してユーザが肯定の応答をすると、商品一覧エリア３７の表示内容がダイナミックに変わるようになっている。
【００８０】
ここで、キーワード生成部４による検索キーワードの生成方法について詳しく説明する。例えば、対話文提供部３により定型対話のテンプレートから生成された対話文に対してユーザが肯定の応答をした場合、キーワード生成部４は、当該記定型対話のテンプレートによりあらかじめ定められたキーワード（対話テンプレートＤＢに登録されているもの）を抽出し、これを検索キーワードとして生成する。
【００８１】
また、対話文提供部３により置換対話のテンプレートから生成された対話文に対してユーザが肯定の応答をした場合、キーワード生成部４は、対話文提供部３が生成して対話文の文言中に挿入した挿入キーワードを検索キーワードとして生成する。
【００８２】
また、キーワード生成部４は、対話文提供部３により自由発言のテンプレートから生成された対話文に対してユーザが肯定の応答をしてテキスト文を入力した場合には、当該テキスト文の中から検索キーワードを生成する。具体的には、上述したように、対話文提供部３によってテキスト文の中からキーワードが抽出されて置換対話の対話文が改めて生成され、その対話文に対してユーザが肯定の応答をしたときに、置換対話の対話文に挿入されたキーワード（つまり、テキスト文から抽出されたキーワード）を検索キーワードとして生成する。
【００８３】
また、キーワード生成部４は、対話文提供部３により視点変換のテンプレートから生成された対話文に対してユーザが肯定の応答をした場合には、検索条件エリア３５に設定されている（つまり、ユーザ情報記憶部７に記憶されている）１以上の検索キーワードを用いたＯＲ検索とは異なる検索条件を生成する。この場合、新たな検索キーワードは追加しない。
【００８４】
上述したように、ユーザ情報記憶部７に記憶されている１以上の検索キーワードを用いたＯＲ検索が、通常の検索条件として設定されている。これに対して、視点変換の対話文に対してユーザが肯定の応答をした場合、キーワード生成部４は、上述のＯＲ検索とは異なる一過性の検索条件を生成する。例えば、ユーザ情報記憶部７に記憶されている１以上の検索キーワードに設定されている重みを任意に変更した検索条件を生成する。あるいは、ピンボードエリア３８に取り置きされた商品の説明文から特徴語を抽出し、抽出した特徴語を一過性の検索キーワードとして生成するようにしてもよい。
【００８５】
キーワード生成部４により一過性の検索条件が生成された場合、商品提示部５はその一過性の検索条件に従って商品情報記憶部２を検索し、その検索条件に合致する商品を抽出して商品一覧エリア３７に表示させる。ただし、この場合はあくまでも一過性の検索なので、商品一覧エリア３７に表示中の商品一覧を更新するのではなく、表示中の商品一覧の上に一過性の商品一覧をオーバーレイ表示したり、別画面を立ち上げてポップアップ表示したりするのが好ましい。また、ここで表示する商品は、一過性の検索条件に合致する商品の中から更に特定したｋ個（例えば、ｋ＝３）の商品であるとする。
【００８６】
ユーザ情報管理部６は、本実施形態の商品情報提供システム１００を利用するユーザの情報をユーザ情報記憶部７に記憶させて管理する。本実施形態の商品情報提供システム１００は、ユーザがＵＩ部２１を通じてログインをすることによって利用可能となる。ユーザ情報管理部６は、そのログインに必要なユーザＩＤやパスワードを管理する。
【００８７】
また、ユーザ情報管理部６は、対話文提供部３により設定されている現在のステージや、キーワード生成部４により生成される検索キーワードをユーザＩＤに関連付けてユーザ情報記憶部７に記憶させる。また、ＵＩ部２１を通じて検索キーワードの削除が行われた場合、ユーザ情報管理部６はユーザ情報記憶部７から該当する検索キーワードを削除する。また、ＵＩ部２１を通じて検索キーワードに対する重みの設定が変更された場合、ユーザ情報管理部６は変更された重みをユーザ情報記憶部７に記憶させる。
【００８８】
また、ＵＩ部２１を通じて所望の商品がピンボードエリア３８に取り置きされた場合、ユーザ情報管理部６は、その取り置きされた商品の情報を商品情報記憶部２から取得し、ユーザＩＤに関連付けてユーザ情報記憶部７に記憶させる。また、ＵＩ部２１を通じてカートボタン４２が押下された場合、ユーザ情報管理部６は、ピンボードエリア３８に取り置きされている商品をショッピングカートに移すようにユーザ情報記憶部７の情報を更新する。
【００８９】
対話ログ管理部１０は、対話文提供部３により提示された対話文と、その対話文に対してＵＩ部２１を通じて行われたユーザによる応答と、その対話文からキーワード生成部４により生成された検索キーワードとを対応付けて対話応答ログとして対話ログ記憶部１１に記憶させる。図４を用いて上述したように、対話ログ記憶部１１に記憶された対話応答ログは対話文提供部３により利用され、タイムラインボタン４１の押下により画面表示させることができ、リプレイボタン４３の押下により対話文の再表示が可能となっている。
【００９０】
なお、タイムラインには、ユーザが何ら応答しなかった対話文３３を表示させることも可能である。例えば、商品情報提供システム１００の対話ログ記憶部１１に記憶されている対話応答ログを利用せずに、クライアント端末２００側のキャッシュメモリに対話の履歴を保持し、それを利用してライムラインに対話文３３を表示する。
【００９１】
図５は、対話ログ記憶部１１に記憶される対話応答ログＤＢの一例を示す図である。図５に示すように、対話応答ログＤＢは、対話ＩＤ、対話シナリオＩＤ、ユーザＩＤ、応答種別、パラメータ１、パラメータ２を項目として含んでいる。このうち、対話ＩＤは、対話応答ログＤＢを構成する各レコードに対して付与される昇順の番号である。
【００９２】
対話シナリオＩＤは、図２Ａ〜図２Ｃに示したものと同じである。ユーザＩＤは、ユーザを一意に特定するためのログインＩＤである。応答種別は、対話文に対してユーザが肯定の応答をしたのか否定の応答をしたのかを種別を表すものである。本実施形態では、対話文に対してユーザが肯定も否定もせずにそのまま無視した場合（タイムアウトとなった場合）、その対話文は対話応答ログに登録されない。
【００９３】
パラメータ１およびパラメータ２は、その対話文に関連した検索キーワードである。例えば、定型対話の場合は対話テンプレートＤＢに記憶されている検索キーワードであり、これがパラメータ１として記憶される。また、置換対話の場合は対話文提供部３により生成された挿入キーワードであり、これがパラメータ１として記憶される。ただし、関連キーワードへのキーワード変換により挿入キーワードが生成された場合は、変換前の元キーワードがパラメータ１として、変換後の関連キーワードがパラメータ２として記憶される。
【００９４】
上述したキーワード生成部４は、対話ログ記憶部１１に記憶された対話応答ログＤＢを利用して検索キーワードの生成を制御している。すなわち、キーワード生成部４は、例えば所定の時間間隔毎にバッチ処理を起動させ、対話応答ログＤＢに記憶されている対話文について、対話シナリオＩＤごとに肯定の応答数と否定の応答数とを集計する。そして、肯定の応答数に比べて否定の応答数が所定数以上多くなった場合、その対話文に対応付けられた検索キーワードは以降の対話の中で検索キーワードとして生成しないようにする。
【００９５】
図６は、対話応答ログＤＢの集計結果の一例を示す図である。図６の例では、対話シナリオＩＤ“ＸＸＸＸ１”の対話文に対して肯定の応答数が４、否定の応答数が２となっている。一方、対話シナリオＩＤ“ＸＸＸＸ２”の対話文に対して肯定の応答数が３、否定の応答数が１５となっている。
【００９６】
前者の場合、“ＸＸＸＸ１”の対話文は肯定の応答数が否定の応答数を上回っているので、バッチ処理が行われた以降もパラメータ１とパラメータ２とのセットで検索キーワードの生成が行われる。一方、後者の場合、“ＸＸＸＸ２”の対話文は肯定の応答数に比べて否定の応答数が所定数ｊ（例えば、ｊ＝５）以上多くなっているので、“ＸＸＸＸ２”の対話文においてそれ以降はパラメータ１の“犬”というキーワードは検索キーワードとして生成しない。
【００９７】
次に、上記のように構成した本実施形態による商品情報提供システム１００およびクライアント端末２００の動作について説明する。図７は、クライアント端末２００の動作例を示すフローチャートである。また、図８〜図１２は、商品情報提供システム１００の動作例を示すフローチャートである。なお、図７に示すフローチャートは、ユーザがクライアント端末２００から商品情報提供システム１００のサーバ装置にアクセスしてログインをしたときに開始する。
【００９８】
まず、図７を用いてクライアント端末２００の動作を説明する。まず、クライアント端末２００は、商品情報提供システム１００に対して対話取得ＡＰＩ（Application Programming Interface）の呼び出しを行う（ステップＳ１）。この対話取得ＡＰＩの呼び出しを商品情報提供システム１００が受け取ると、所定のシナリオに従って対話文３３およびその対話文３３に対する応答の選択肢となる回答文３４が商品情報提供システム１００にて生成され、クライアント端末２００に送信される。クライアント端末２００では、ＵＩ部２１を通じて、商品情報提供システム１００から受信した対話文３３および回答文３４を、対話エリア３１において仮想店員３２の吹き出し中に表示させる（ステップＳ２）。
【００９９】
クライアント端末２００は、この対話文３３に対してユーザが肯定の応答をしたか否かを判定する（ステップＳ３）。ここでは、ＵＩ部２１を通じて肯定の回答文３４を選択する操作が行われたか否かを判定する。ユーザにより肯定の応答が行われた場合、クライアント端末２００は、その応答が、ステージ間遷移を促す対話文３３に対するものであったか否かを判定する（ステップＳ４）。
【０１００】
ここで、ユーザによる応答が、ステージ間遷移を促す対話文３３に対する応答であった場合、クライアント端末２００は、商品情報提供システム１００に対してステージ間遷移ＡＰＩの呼び出しを行う（ステップＳ５）。その後、処理はステップＳ１に戻る。一方、ステージ間遷移を促す対話文３３に対する応答でなかった場合、クライアント端末２００は、自由発言を促す対話文３３に対する応答であったか否かを判定する（ステップＳ６）。
【０１０１】
ここで、自由発言を促す対話文３３に対する肯定の応答であった場合、クライアント端末２００は、自由発言エリア３９をハイライトさせてユーザに自由発言の入力を促す。その後、ユーザが自由発言エリア３９にテキスト文を入力して発言ボタン４０を押下したタイミングで、クライアント端末２００は、商品情報提供システム１００に対して置換対話の対話取得ＡＰＩの呼び出しを行う（ステップＳ７）。
【０１０２】
この対話取得ＡＰＩの呼び出しを商品情報提供システム１００が受け取ると、ユーザにより入力された自由発言のテキスト文からキーワードが抽出される。そして、そのキーワードを挿入キーワードとして置換対話の対話文３３および回答文３４が生成され、クライアント端末２００に送信される。その後、処理はステップＳ２に戻り、クライアント端末２００では、ＵＩ部２１を通じて、商品情報提供システム１００から受信した置換対話の対話文３３および回答文３４が、対話エリア３１において仮想店員３２の吹き出し中に表示される。
【０１０３】
一方、ステップＳ６において、対話文３３に対してユーザにより行われた肯定の応答が、自由発言を促す対話文３３に対するものではないと判定された場合、クライアント端末２００は、商品情報提供システム１００に対して商品検索ＡＰＩおよび対話応答ログＡＰＩの呼び出しを行う（ステップＳ８）。
【０１０４】
商品検索ＡＰＩの呼び出しを商品情報提供システム１００が受け取ると、商品情報提供システム１００にて商品の検索が行われ、その検索結果がクライアント端末２００に送信される。クライアント端末２００では、商品情報提供システム１００から送られてくる検索結果をＵＩ部２１を通じて表示させる（ステップＳ９）。そして、処理はステップＳ１５に進む。
【０１０５】
このステップＳ９において、商品情報提供システム１００から受信した検索結果が、定型対話または置換対話の対話文に対してユーザが肯定の応答をした結果として送られてきたものである場合は、商品一覧エリア３７に表示中の商品一覧が更新して表示される。一方、検索結果が、視点変換の対話文に対してユーザが肯定の応答をした結果として送られてきたもの（一過性の商品一覧）である場合は、商品一覧エリア３７に表示中の商品一覧の上に、一過性の商品一覧がオーバーレイ表示される。
【０１０６】
上記ステップＳ３において、ユーザにより肯定の応答が行われていないと判断した場合、クライアント端末２００は、対話文３３に対してユーザが否定の応答をしたか否か、つまりＵＩ部２１を通じて否定の回答文３４を選択する操作が行われたか否かを更に判定する（ステップＳ１０）。ユーザにより否定の応答が行われた場合、クライアント端末２００は、商品情報提供システム１００に対して対話応答ログＡＰＩの呼び出しを行う（ステップＳ１１）。そして、処理はステップＳ１５に進む。
【０１０７】
一方、ユーザにより否定の応答も行われていないと判断した場合、クライアント端末２００は、ステップＳ２で対話エリア３１に対話文を表示してから、ユーザによる何の応答もなく所定時間のタイムアウトが生じたか否かを判定する（ステップＳ１２）。タイムアウトが生じた場合、処理はステップＳ１に戻る。
【０１０８】
一方、タイムアウトが生じていない場合、クライアント端末２００は、ＵＩ部２１を通じてユーザによりその他の操作が行われたか否かを判定する（ステップＳ１３）。その他の操作とは、商品一覧エリア３７の中から何れかの商品をピンボードエリア３８に取り置きする操作、タイムラインボタン４１を押下して過去の対話応答ログを表示させる操作、タイムライン上でリプレイボタン４３を押下して対話文を再表示させる操作、編集ボタン３６を押下して検索キーワードを編集する操作、カートボタン４２を押下してピンボードエリア３８に取り置きされている商品をショッピングカートに移動させる操作などである。
【０１０９】
これらの操作のうち何れかの操作が行われた場合、クライアント端末２００は、商品情報提供システム１００に対してその操作内容に応じたＡＰＩの呼び出しを行う（ステップＳ１４）。そして、処理はステップＳ１５に進む。ステップＳ１５において、クライアント端末２００は、ログオフの操作が行われたか否かを判定する。ログオフの操作が行われていない場合、所定はステップＳ１に戻る。一方、ログオフの操作が行われた場合、図７に示すフローチャートの処理は終了する。
【０１１０】
次に、図８〜図１２を用いて商品情報提供システム１００の動作を説明する。図８は、対話取得ＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。まず、対話文提供部３は、対話テンプレート記憶部１に記憶されている対話テンプレートＤＢから１つのレコード（対話テンプレート）を所定のシナリオに沿って読み出す（ステップＳ２１）。
【０１１１】
そして、対話文提供部３は、読み出した対話テンプレートが置換対話のテンプレートか否かを判定する（ステップＳ２２）。読み出した対話テンプレートが置換対話のテンプレートであった場合、対話文提供部３は、置換対話のテンプレートの対話テキストに埋め込まれている置換対象タグ[ｎ]に対する挿入キーワードを生成する（ステップＳ２３）。
【０１１２】
上述したように、挿入キーワードを生成する方法は５つ用意されているので、対話文提供部３はこの５つの方法の中から何れか１つを任意に選択して挿入キーワードを生成する。あるいは、ステップＳ２１で読み出したレコードの対話シナリオＩＤに対してあらかじめ定めされた方法を適用して挿入キーワードを生成する。
【０１１３】
続いて、対話文提供部３は、ステップＳ２１で読み出した対話テンプレートの対話テキストに埋め込まれている置換対象タグ[ｎ]の部分を、ステップＳ２２で生成した挿入キーワードで置換することによって対話文を生成する（ステップＳ２４）。そして、このようにして生成した対話文と、同じ対話テンプレートの応答テキストを用いて生成した回答文とを、対話取得ＡＰＩの呼び出しに対するレスポンスとしてクライアント端末２００に送信する（ステップＳ２５）。これにより、図８に示すフローチャートの処理は終了する。
【０１１４】
上記ステップＳ２２において、ステップＳ２１で読み出した対話テンプレートが置換対話のテンプレートではないと対話文提供部３にて判断した場合、対話文提供部３は、その対話テンプレートの対話テキストをそのまま対話文として生成するとともに、応答テキストを用いて回答文を生成し、対話取得ＡＰＩの呼び出しに対するレスポンスとしてクライアント端末２００に送信する（ステップＳ２５）。これにより、図８に示すフローチャートの処理は終了する。
【０１１５】
図９は、商品検索ＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。まず、キーワード生成部４は、商品検索ＡＰＩの呼び出しが、視点変換の対話文に対してユーザが肯定の応答をした結果としてクライアント端末２００から送られてきたものか否かを判定する（ステップＳ３１）。
【０１１６】
ここで、商品検索ＡＰＩの呼び出しが視点変換の対話文に基づくものでない場合、つまり、定型対話または置換対話に基づくものである場合、キーワード生成部４は、対話文から検索キーワードを生成してユーザ情報記憶部７に記憶させることにより、検索条件エリア３５に現在設定中の検索キーワードに新たな検索キーワードを１つ追加する（ステップＳ３２）。
【０１１７】
そして、商品提示部５は、追加された検索キーワードを含めて検索条件エリア３５に設定された１以上の検索キーワードを用いたＯＲ検索により、商品情報記憶部２の中から当該ＯＲ検索の検索条件に合致する商品を抽出する（ステップＳ３３）。さらに、商品提示部５は、以上の検索により抽出した商品の一覧を、商品検索ＡＰＩの呼び出しに対するレスポンスとしてクライアント端末２００に送信する（ステップＳ３４）。これにより、図９に示すフローチャートの処理は終了する。
【０１１８】
上記ステップＳ３１において、商品検索ＡＰＩの呼び出しが視点変換の対話文に基づくものであるとキーワード生成部４にて判断した場合、キーワード生成部４は、検索条件エリア３５に設定されている（つまり、ユーザ情報記憶部７に記憶されている）１以上の検索キーワードを用いたＯＲ検索とは異なる一過性の検索条件を生成する（ステップＳ３５）。
【０１１９】
そして、商品提示部５は、キーワード生成部４により生成された一過性の検索条件に合致する商品を商品情報記憶部２の中から抽出する（ステップＳ３６）。さらに、商品提示部５は、以上の検索により抽出したｋ個の商品を、商品検索ＡＰＩの呼び出しに対するレスポンスとしてクライアント端末２００に送信する（ステップＳ３７）。これにより、図９に示すフローチャートの処理は終了する。
【０１２０】
図１０は、対話応答ログＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。対話応答ログＡＰＩの呼び出しが行われた場合、対話ログ管理部１０は、図５のように、対話文提供部３により提示された対話文の対話シナリオＩＤと、その対話文に対してＵＩ部２１を通じて行われたユーザによる肯定または否定の応答の種別と、キーワード生成部４により生成された検索キーワード（パラメータ１，２）とを対応付けて、対話応答ログとして対話ログ記憶部１１に記憶させる（ステップＳ４１）。これにより、図１０に示すフローチャートの処理は終了する。
【０１２１】
図１１は、ステージ間遷移ＡＰＩの呼び出しが行われたときの動作例を示すフローチャートである。ステージ間遷移ＡＰＩの呼び出しが行われた場合、対話文提供部３は、現在設定されているステージの遷移を実行し、遷移後のステージをユーザ情報記憶部７に記憶させる（ステップＳ５１）。これにより、図１１に示すフローチャートの処理は終了する。
【０１２２】
図１２は、キーワード生成部４により所定の時間間隔毎に実行されるバッチ処理の動作例を示すフローチャートである。バッチ処理が起動すると、キーワード生成部４は、対話ログ記憶部１１の対話応答ログＤＢに記憶されている各々の対話文について、対話シナリオＩＤごとに肯定の応答数と否定の応答数とを集計する（ステップＳ６１）。
【０１２３】
そして、キーワード生成部４は、肯定の応答数に比べて否定の応答数が所定数ｊ以上多くなっている対話シナリオＩＤが存在するか否かを判定する（ステップＳ６２）。そのような対話シナリオＩＤが存在する場合、キーワード生成部４は、その対話シナリオＩＤのレコードを記憶することにより、当該対話シナリオＩＤに対応付けてパラメータ１，２として記憶されている検索キーワードは以降の対話の中で検索キーワードとして生成しないようにする（ステップＳ６３）。これにより、図１２に示すフローチャートの処理は終了する。
【０１２４】
以上詳しく説明したように、本実施形態の商品情報提供システム１００では、定型対話、置換対話、自由発言、視点変換など複数種類の対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、ユーザに提供する。そして、提供された対話文に対してユーザが肯定の応答をした場合に、当該対話文から検索キーワードを生成して商品情報記憶部２を検索し、当該検索キーワードに合致する商品を抽出してユーザに商品一覧として提示するようにしている。
【０１２５】
ここで、対話テンプレートは、様々な商品を提案してユーザに購買候補の商品を選ばせるための第１ステージの対話テンプレートと、第１ステージで選ばれた購買候補の商品をユーザに吟味させるための第２ステージの対話テンプレートと、第２ステージで吟味された購買候補の商品の購買決定をユーザに促すための第３ステージの対話テンプレートとを有している。
【０１２６】
このように構成した本実施形態によれば、様々な商品を見ながら購買候補をいくつか選び、それらを更に吟味して、購入する商品を決定するといった実際の購買プロセスに沿って、システムとユーザとの間で対話が行われる。すなわち、検索を通じて提示される様々な商品の中から購買候補の商品を選んでピンボードエリア３８に取り置きをする第１ステージ、ピンボードエリア３８に取り置きされた購買候補の商品を更に吟味する第２ステージ、ピンボードエリア３８に取り置きされた購買候補の商品をショッピングカートに移すことを促す第３ステージのそれぞれにおいて、システムとユーザとの間で適切な対話が繰り返される。
【０１２７】
そして、第１ステージおよび第２ステージでは、繰り返しの対話の中でユーザが肯定の応答をしたときに、その対話文に関連して商品の検索キーワードが生成され、当該検索キーワードに合致する商品がユーザに提案されることとなる。このとき提案される商品は、ユーザが対話文に対して肯定の応答をすることによって興味を示した事柄に沿った商品である。
【０１２８】
すなわち、本実施形態の商品情報提供システム１００によれば、システム側に設定された所定のアルゴリズムに基づいてユーザの嗜好性をシステムが勝手に推定した結果として商品が提案されるのではなく、商品情報提供システム１００とユーザとの間の繰り返しの対話の中でユーザが肯定の応答をしたときの対話文から検索キーワードが生成され、当該検索キーワードに合致する商品がユーザに提案されることとなる。つまり、ユーザが肯定の応答をすることによって興味を示した事柄に沿った商品が提案されることとなるので、提案される商品はユーザにとって好みの商品や興味を引く商品である可能性が高くなる。
【０１２９】
また、このような商品の提案は、複数種類の対話テンプレートを利用した様々な内容の対話を通じて行われる。また、置換対話の場合は、商品検索のための検索キーワード（置換対象タグ[ｎ]に対する挿入キーワード）も様々な観点から生成される。そのため、ユーザの買いたい商品が当初からはっきりしていない場合などでも、実店舗での販売形態に近い態様による商品情報提供システム１００とユーザとの対話を通じて、よりユーザの嗜好に合った商品を提案することができる。
【０１３０】
さらに、本実施形態では、ＳＮＳのプロフィール情報や発言情報などから抽出したキーワードのみならず、それに対する関連キーワードも利用して検索キーワードが生成され、商品の検索が実行される。これにより、ユーザにとって想定外の良い商品との出会いを促すことができる。つまり、ユーザにとって関心度が高く、かつ、ユーザ自身では辿り着けない商品の提案も行うことができる。
【０１３１】
以上により、ユーザは、買いたい商品を明確に決めずにモールを歩きながら好みの商品を見つけるような感覚の買い物を、本実施形態の商品情報提供システム１００が提供するショッピングサイト上で実現することができる。
【０１３２】
なお、上記実施形態では、対話テンプレート記憶部１がステージ間遷移の対話テンプレート以外に定型対話、置換対話、自由発言、視点変換の４種類の対話テンプレートを備える構成について説明したが、本発明はこれに限定されない。すなわち、この中の何れか２種類あるいは３種類の対話テンプレートを備える構成であってもよい。ただし、４種類を用いるのが最も好ましい。特に第１ステージでは、４種類の対話テンプレートを用いるのが好ましい。
【０１３３】
また、上記実施形態では、置換対話の対話テンプレートを用いる場合に、置換対象タグ[ｎ]に対する挿入キーワードを生成する方法として５つの方法を用いる構成について説明したが、本発明はこれに限定されない。すなわち、この中の少なくとも１つを用いる構成であってもよい。ただし、５つの方法を適宜用いるのが最も好ましい。特に第１ステージでは、５つの方法を用いるのが好ましい。
【０１３４】
また、上記実施形態では、自由発言の対話テンプレートを用いる場合、ユーザが肯定の応答をしてテキスト文を入力したときに、そのテキスト文から抽出したキーワードを用いて置換対話の対話文を生成して提供し、ユーザがこれに肯定の応答をした場合に検索キーワードを生成する例について説明したが、本発明はこれに限定されない。例えば、置換対話の対話文は生成せず、自由発言のテキスト文から抽出したキーワードをそのまま検索キーワードとして生成するようにしてもよい。
【０１３５】
また、上記実施形態では、検索条件エリア３５に設定中の検索キーワードをユーザ情報記憶部７に記憶する例について説明したが、本発明はこれに限定されない。例えば、ユーザ情報記憶部７とは別に、検索キーワードを専用で記憶する検索キーワード記憶部を設けるようにしてもよい。または、ユーザ毎に設定されている検索キーワードをユーザのクライアント端末２００に記憶させ、その検索キーワードを商品情報提供システム１００がクライアント端末２００から取得して利用するようにしてもよい。
【０１３６】
また、上記実施形態では、対話文提供部３が現在設定中のステージをユーザ情報記憶部７に記憶する例について説明したが、本発明はこれに限定されない。例えば、ユーザ情報記憶部７とは別に、現在設定中のステージを専用で記憶するステージ記憶部を設けるようにしてもよい。または、ユーザ毎に設定されているステージをユーザのクライアント端末２００に記憶させ、そのステージを商品情報提供システム１００がクライアント端末２００から取得して利用するようにしてもよい。
【０１３７】
また、上記実施形態では、関連キーワード記憶部８およびキーワード変換部９を商品情報提供システム１００のサーバ装置が備える構成について説明したが、これとは別のサーバ装置が備える構成としてもよい。
【０１３８】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１３９】
１  対話テンプレート記憶部
２  商品情報記憶部
３  対話文提供部
４  キーワード生成部
５  商品提示部
６  ユーザ情報管理部
７  ユーザ情報記憶部
８  関連キーワード記憶部
９  キーワード変換部
１０  対話ログ管理部
１１  対話ログ記憶部
【図１】
2014182548.tif 000003
【図２Ａ】
2014182548.tif 000004
【図２Ｂ】
2014182548.tif 000005
【図２Ｃ】
2014182548.tif 000006
【図３】
2014182548.tif 000007
【図４】
2014182548.tif 000008
【図５】
2014182548.tif 000009
【図６】
2014182548.tif 000010
【図７】
2014182548.tif 000011
【図８】
2014182548.tif 000012
【図９】
2014182548.tif 000013
【図１０】
2014182548.tif 000014
【図１１】
2014182548.tif 000015
【図１２】
2014182548.tif 000016