JP2021189915A - 情報処理装置、対話装置、情報処理方法、およびプログラム - Google Patents

情報処理装置、対話装置、情報処理方法、およびプログラム Download PDF

Info

Publication number
JP2021189915A
JP2021189915A JP2020096447A JP2020096447A JP2021189915A JP 2021189915 A JP2021189915 A JP 2021189915A JP 2020096447 A JP2020096447 A JP 2020096447A JP 2020096447 A JP2020096447 A JP 2020096447A JP 2021189915 A JP2021189915 A JP 2021189915A
Authority
JP
Japan
Prior art keywords
information
dialogue
processing
voice
product
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020096447A
Other languages
English (en)
Inventor
博 長屋
Hiroshi Nagaya
晴彦 阿保
Haruhiko Abo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ikando Co Ltd
Original Assignee
Ikando Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ikando Co Ltd filed Critical Ikando Co Ltd
Priority to JP2020096447A priority Critical patent/JP2021189915A/ja
Publication of JP2021189915A publication Critical patent/JP2021189915A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】商品に関する処理についての適切な支援を行うことができる情報処理装置を提供する。【解決手段】商品に関する商品情報が格納される商品情報格納部101と、ユーザ識別子に対応付けられた入力情報を対話装置2から受け付ける入力情報受付部103と、入力情報受付部103が受け付けた入力情報に応じた処理であり、商品情報を用いた処理を行い、処理結果を取得する購入支援処理部104と、処理結果を対話装置2に渡す結果引渡部107とを具備し、入力情報は、商品の検索を指示する検索指示情報または、商品の購入を指示する購入指示情報を含み得、購入支援処理部104は、入力情報が検索指示情報を含む場合は、検索指示情報に従った検索処理を行い処理結果を取得する検索手段1041と、入力情報が購入指示情報を含む場合は、購入指示情報に従った購入処理を行い処理結果を取得する購入手段1042とを具備するようにした。【選択図】図1

Description

本発明は、音声を利用して処理を行う装置等に関するものである。
従来の技術として、端末を利用する利用者に情報を入力させるためのサーバであって、ウエブページとして、利用者と自動対話をするための自動対話部と、自動対話部でなされた利用者との対話を取得する対話取得部と、対話取得部で取得された対話に基づいてウエブページ上で入力フォームに情報を入力して示す入力フォーム部と、を有するウエブページを提供するサーバを含むウエブフォーム入力支援システムが知られていた(例えば、特許文献1参照)。
特許第6664536号公報(第1頁、第1図等)
しかしながら、従来の技術においては、ユーザが音声により行った対話に応じて、商品に関する処理についての適切な支援を行うことができない、という課題があった。
本発明の情報処理装置は、ユーザと音声による対話を行う対話装置と、商品の購入を支援する情報処理装置とを具備する情報システムを構成する情報処理装置であって、対話装置は、ユーザの音声を受け付ける対話音声受付部と、ユーザを識別するユーザ識別子に対応付けて、音声に対応する入力情報を情報処理装置に渡す対話引渡部と、入力情報を渡す処理に応じて、情報処理装置における入力情報に対応する処理結果を情報処理装置から受け付ける対話結果受付部と、処理結果に関する出力情報を音声出力する対話音声出力部とを具備し、情報処理装置は、商品に関する1以上の商品情報が格納される商品情報格納部と、ユーザ識別子に対応付けられた入力情報を対話装置から受け付ける入力情報受付部と、入力情報受付部が受け付けた入力情報に応じた処理であり、商品情報を用いた処理を行い、処理結果を取得する購入支援処理部と、処理結果を対話装置に渡す結果引渡部とを具備し、入力情報は、商品の検索を指示する検索指示情報または、商品の購入を指示する購入指示情報を含み得、購入支援処理部は、入力情報が検索指示情報を含む場合は、検索指示情報に従った検索処理を行い、検索結果である処理結果を取得する検索手段と、入力情報が購入指示情報を含む場合は、購入指示情報に従った購入処理を行い、購入処理の結果である処理結果を取得する購入手段とを具備する情報処理装置である。
かかる構成により、ユーザが音声により行った対話に応じて、商品に関する処理についての適切な支援を行うことができる。
また、本発明の情報処理装置は、前記情報処理装置において、対話装置の対話引渡部は、ユーザ識別子に対応付けて、起動信号を情報処理装置に渡し、情報処理装置は、ユーザ識別子に対応付けられた起動信号を対話装置から受け付ける起動信号受付部と、起動信号の受け付けに応じて、予め決められた初期処理を行い、処理結果を取得する初期処理部とをさらに具備し、結果引渡部は、初期処理の処理結果を対話装置に渡すようにしてもよい。
かかる構成により、対話装置の起動時に、適切な初期処理を行って、対話装置から初期処理の処理結果をユーザに提供することができる。
また、本発明の情報処理装置は、前記情報処理装置において、ユーザ識別子とユーザの商品の購入に関する1以上の購入情報とを有する1以上のユーザ情報が格納されるユーザ情報格納部をさらに備え、初期処理部は、起動信号に対応付けられたユーザ識別子と対応付く1以上の購入情報を用いて、ユーザにレコメンドする商品に関する1以上のレコメンド情報である処理結果を取得するようにしてもよい。
かかる構成により、対話装置の起動時に、適切な商品に関する情報を対話装置からユーザに提供することができる。
また、本発明の情報処理装置は、前記情報処理装置において、初期処理部は、環境情報を取得する環境情報取得手段と、起動信号の受け付けに応じて、環境情報を用いて、予め決められた初期処理を行い、処理結果を取得する初期処理手段とを具備するようにしてもよい。
かかる構成により、対話装置の起動時に、ユーザの環境に応じた適切な商品に関する情報を対話装置からユーザに提供することができる。
また、本発明の情報処理装置は、前記情報処理装置において、環境情報は、翌日以降の近日の天候に関する情報であるようにしてもよい。
かかる構成により、対話装置の起動時に、ユーザの居る場所における近日中の天候に応じた適切な商品に関する情報を対話装置からユーザに提供することができる。
本発明の対話装置は、ユーザとの対話のための対話モデルが格納される対話モデル格納部と、ユーザの音声を受け付ける対話音声受付部と、音声が予め決められた条件を満たすか否かを判断する対話判断部と、対話判断部が予め決められた条件を満たすと判断した場合に、ユーザを識別するユーザ識別子に対応付けて、音声に対応する入力情報を情報処理装置に渡す対話引渡部と、対話判断部が予め決められた条件を満たさないと判断した場合に、音声に対応する応答を、対話モデルを用いて取得する対話応答取得部と、入力情報を渡す処理に応じて、情報処理装置における入力情報に対応する処理結果を情報処理装置から受け付ける対話結果受付部と、処理結果に関する出力情報または応答に関する出力情報を音声出力する対話音声出力部とを具備する対話装置である。
かかる構成により、ユーザの音声が予め決められた条件を満たす場合には、音声に対応する入力情報を情報処理装置に送信し、条件を満たさない場合には、対話モデルを用いて適切な応答を行うことができる。
本発明による情報処理装置等によれば、ユーザが音声により行った対話に応じて、商品に関する処理についての適切な支援を行うことができる。
本発明の実施の形態における情報処理システムのブロック図 同情報処理装置の動作について説明するフローチャート 同対話装置の動作について説明するフローチャート 同情報処理システム1000の概念図 同情報処理装置の商品情報管理表を示す図 同情報処理装置のユーザ情報管理表を示す図 同情報処理装置の環境分野管理表を示す図 同コンピュータシステムの外観の一例を示す図 同コンピュータシステムの構成の一例を示す図
以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態)
図1は、本実施の形態における情報処理システム1000のブロック図である。
情報処理システム1000は、情報処理装置1および1または2以上の対話装置2を備える。情報処理装置1および各対話装置2は、例えば、情報の通信が可能となるよう無線または有線の通信回線等を介して接続される。例えば、情報処理装置1および各対話装置2は、インターネット等のネットワークを介して有線や無線等により接続される。ここでは、3以上の対話装置2を備えている情報処理システム1000の例を示している。
情報処理装置1は、商品情報格納部101、ユーザ情報格納部102、入力情報受付部103、購入支援処理部104、起動信号受付部105、初期処理部106、および結果引渡部107を備える。
購入支援処理部104は、検索手段1041、および購入手段1042を備える。
初期処理部106は、環境情報取得手段1061、および環境初期処理手段1062を備える。
対話装置2は、対話音声受付部201、対話モデル格納部202、対話判断部203、対話引渡部204、対話応答取得部205、対話結果受付部206、および対話音声出力部207を備える。
情報処理装置1は、商品の購入を支援する装置である。ここでの商品は、通常、有形物であるが、無形物であるサービス等であってもよい。情報処理装置1は、通常、サーバ装置である。例えば、情報処理装置1は、クラウドサーバや、ASP(アプリケーションサーバ装置)である。例えば、情報処理装置1は、EC(電子商取引)サイトのサーバ装置である。なお、情報処理装置1は、サーバ装置でなくてもよく、例えば、情報処理端末であってもよい。情報処理装置1は、例えば、コンピュータ等により実現される。
商品情報格納部101は、1以上の商品情報が格納される。商品情報は、商品に関する1または2以上の情報である。商品情報は、例えば、1つの商品に関する1または2以上の情報である。商品情報は、例えば、商品識別子、商品名、商品コード、価格、商品画像、商品の仕様や特徴等の商品についての説明、商品の付属品、および商品についてのユーザのコメント等の1以上を有する情報である。商品情報は、少なくとも商品名を有することが好ましい。商品識別子は、例えば、商品に割り当てられたコードや、商品名等である。商品識別子が商品名である場合、商品識別子を商品名としても用いてもよい。また、商品情報は、商品の分類を示す情報を有していてもよい。商品の分類は、例えば、商品の種類や、ジャンル等を示す情報であってもよい。商品の分類の粒度は問わない。
ユーザ情報格納部102には、1以上のユーザ情報が格納される。ユーザ情報は、ユーザに関する情報である。ユーザ情報は、通常、ユーザ識別子と、このユーザ識別子が示すユーザの1以上の購入情報とを有する情報である。ユーザ情報は、ユーザの属性(例えば、性別、年齢、業種等の情報)をさらに有していてもよい。ユーザ識別子は、例えば、ユーザに割り当てられたコードや、ユーザの会員番号や、ユーザのアカウント、ユーザのクレジットカード番号、ユーザの名前や、ユーザのメールアドレス等である。ユーザ識別子は、例えば、ユーザが利用する対話装置2の装置識別子であってもよい。装置識別子は、例えば、対話装置2に割り当てられたコードや、対話装置2のシリアル番号、対話装置2のIPアドレスやMACアドレス等のアドレス情報であってもよい。なお、ユーザ識別子は、ユーザが識別可能な情報であれば、上記の情報に限定されるものではない。また、装置識別子は、対話装置2を識別可能な情報であれば、上記の情報に限定されるものではない。
購入情報は、一の商品の購入に関する情報である。購入情報は、例えば、ユーザが購入した商品を特定する情報を有している。ここでの商品は、例えば、商品情報格納部101に格納されている商品情報に対応する商品である。商品を特定する情報は、例えば、商品名や商品識別子等である。購入情報が有する商品識別子は、例えば、商品情報が有する商品識別子に対応したものである。購入情報は、購入した商品の量(例えば、購入数や、購入した重量等)を特定する情報をさらに有していてもよい。また、購入情報は、商品を購入した日時等の情報を有していてもよい。
なお、購入情報は、例えば、ユーザに商品をレコメンドする際に利用されるユーザが購入を検討した商品や、ユーザが検索した商品の情報であってもよい。
ユーザ情報格納部102には、例えば、購入支援処理部104により、ユーザ情報が蓄積される。ただし、どのようにユーザ情報が蓄積されるかは問わない。例えば、図示しないディスク等から読み出されたユーザ情報が、ユーザ情報格納部102に蓄積されてもよい。
ユーザ情報格納部102は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。かかることは、他の格納部についても同様である。
入力情報受付部103は、ユーザ識別子に対応付けられた入力情報を対話装置2から受け付ける。例えば、入力情報受付部103は、ユーザから受け付けた音声に対応する入力情報を、このユーザを識別するユーザ識別子に対応付けて渡す対話装置2から受け付ける。
入力情報とは、対話装置2が受け付けた音声そのものであってもよく、受け付けた音声を音声認識した文字列であってもよく、音声認識した文字列から取得された1以上の部分文字列であってもよく、音声認識した文字列を用いて構成された関数の情報等であってもよい。入力情報は、例えば、音声から取得された発話の目的を示す情報や、発話の目的を示す情報と、この目的に対応する1以上の変数との組を有する情報であってもよい。
入力情報は、例えば、商品の購入に関連した処理に利用可能な情報を含む情報である。入力情報は、例えば、検索指示情報および購入指示情報の少なくとも一方を含む情報であってもよい。
検索指示情報は、商品の検索を指示する情報である。検索指示情報は、例えば、検索を指示する予め決められた1または2以上の音声であってもよく、検索を指示する予め決められた1または2以上の文字列等であってもよい。検索指示情報は、検索が指示されたことを購入支援処理部104や、購入支援処理部104の検索手段1041が認識可能な情報であればよい。検索指示情報は、例えば、検索条件と対応付けられていてもよい。例えば、検索指示情報は、検索条件を有していてもよく、検索指示情報と検索条件とが同じ入力情報に含まれていてもよい。検索指示情報が有する検索条件は、検索条件の音声であってもよく、音声認識した文字列を用いて構成された検索に利用される検索条件であってもよい。検索条件は、検索に用いられるキーワードであってもよい。また、検索条件は、例えば、検索等に用いられる検索式や、SQL文等であってもよく、検索用の関数であってもよい。なお、検索指示情報は、検索を指示する一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよい。
購入指示情報は、商品の購入を指示する情報である。購入指示情報は、例えば、購入を指示する予め決められた1または2以上の音声であってもよく、購入を指示する予め決められた1または2以上の文字列等であってもよい。購入指示情報は、特定の1以上の商品の購入が指示されたことを購入支援処理部104や、購入支援処理部104の購入手段1042が認識可能な情報であればよい。購入指示情報は、購入する商品を特定する音声や文字列の情報を有していてもよい。例えば、購入する商品を特定する情報や、商品識別子や、商品名等の情報であってもよく、後述する検索手段1041が検索した商品のうちの1以上を指定する情報や、初期処理部106がレコメンドする商品のうちの1以上を特定する情報であってもよい。例えば、検索手段1041が一つの商品を検索した直後に、受け付けた入力情報が有する購入指示情報は、検索された商品を購入対象に指定する購入指示情報として利用してもよい。購入指示情報は、購入する商品の量(例えば、購入数や、購入する重量等)の情報をさらに有していてもよい。なお、購入指示情報は、購入を指示する一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよい。
購入指示情報は、購入時の決済に用いられる決済関連情報をさらに有していてもよい。決済関連情報は、例えば、クレジットカード番号や、電子マネーの識別子等の決済に利用可能な情報である。
ここでの受付は、通常、対話装置2から送信される入力情報の受信であるが、記録媒体等からの情報の読み出し等であってもよい。また、例えば、対話装置2の対話引渡部204を、情報処理装置1を利用して実現する場合、入力情報受付部103は、入力情報を、対話装置2の対話引渡部204から受け付けてもよい。入力情報受付部103は、例えば、有線または無線の通信手段や、記録媒体等から情報を読み出すためのドライバー等により実現され得る。
購入支援処理部104は、入力情報受付部103が受け付けた入力情報に応じた処理であり、商品情報を用いた処理(以下、入力対応処理と呼ぶ場合がある)を行い、処理結果を取得する。例えば、購入支援処理部104が有する検索手段1041と購入手段1042とが、それぞれ入力対応処理を行う。
検索手段1041は、入力情報が検索指示情報を含む場合に、検索指示情報に従った検索処理を行い、検索結果である処理結果を取得する。この検索処理が、検索手段1041が行う入力対応処理の一例である。検索手段1041が行う検索は、例えば、商品情報の検索である。検索手段1041は、例えば、商品情報格納部101に格納されている商品情報について検索指示情報に従った検索を行う。検索指示情報に従った検索は、例えば、検索指示情報が有する検索条件を用いて行われる検索である。例えば、検索手段1041は、商品情報格納部101に格納されている商品情報から、検索指示情報が有する検索条件に合致する商品情報を検索する。検索指示情報が、検索条件を有する音声である場合、検索手段1041は、検索指示情報であることを音声認識し、この検索指示情報を音声認識して検索条件を取得し、取得した検索条件を用いて検索を行う。また、検索指示情報が検索条件を有する場合、検索手段1041は、検索指示情報を認識し、検索指示情報が有する検索条件を用いて検索を行う。
検索手段1041が取得する処理結果は、検索によって検出された1または2以上の商品情報である。処理結果として取得する商品情報は、例えば、検出された商品情報そのものであってもよく、商品識別子や商品名等の検出された商品情報の一部の情報であってもよい。例えば、検索手段1041は、検出された1または2以上の商品情報が有する商品識別子のリストを取得する。ただし、検索手段1041が取得する検索結果の態様等とは問わない。なお、検索条件等を用いて、商品情報を検索する処理や、処理結果を取得する処理は、公知技術であるため、ここでは説明を省略する。
購入手段1042は、入力情報が購入指示情報を含む場合は、購入指示情報に従った購入処理を行い、購入処理の結果である処理結果を取得する。この購入処理が、購入手段1042が行う入力対応処理の一例である。購入指示情報に従った購入処理は、例えば、購入指示情報に対応する商品をユーザが購入するための処理である。例えば、購入処理は、ユーザが商品を購入したことを示す情報や注文したことを示す情報を出力する処理である。購入処理は、例えば、購入指示情報を有する入力情報に対応付けられたユーザ識別子と、購入指示情報に対応する商品を特定する情報を有する購入情報とを対応付けて有するユーザ情報を出力する処理である。例えば、購入手段1042は、このようなユーザ情報を、ユーザ情報格納部102に蓄積する。商品を特定する情報は、例えば、商品識別子や、商品名である。この商品を特定する情報は、例えば、商品情報格納部101に格納されている商品情報が有する商品識別子や商品名に対応する情報である。購入手段1042は、さらに、購入する商品の量(例えば、数や、重量等)や、購入日時を特定する情報を有する購入情報を出力してもよい。購入する商品の量は、例えば、購入指示情報から取得可能である。購入日時は、例えば、図示しない時計等から取得可能である。ここでの出力とは、モニタへの表示、プリンタへの印刷、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。購入処理は、購入指示情報を有する入力情報に対応付けられたユーザ識別子が示すユーザから、購入指示情報により特定される商品の注文を受け付ける処理であってもよい。例えば、購入手段1042が対応付けて出力するユーザ識別子と商品を特定する情報は、注文者のユーザ識別子と、この注文者が注文した商品を特定する購入情報とを有する情報の出力であってもよい。
購入処理は、購入指示情報を有する入力情報に対応付けられたユーザ識別子が示すユーザと対応付けられて図示しない格納部に予め格納されている決済関連情報や、購入指示情報が有する決済関連情報等を用いて、購入指示情報により特定される商品の決済を行う処理を含んでいてもよい。決済を行う処理は、決済の処理等を行うサーバ装置(図示せず)に、商品を購入するユーザの決済関連情報と、購入する商品の金額とを有する情報を送信して、決済結果を受信する処理であってもよい。購入手段1042は、このような情報の送受信を行うための通信手段(図示せず)を有していてもよい。
購入手段1042が出力する購入処理の結果である処理結果は、処理結果を示す情報であれば、どのような情報であってもよい。処理結果は、例えば、購入処理が行われたことを示す予め決められた情報である。例えば、購入手段1042は、購入された商品を特定する情報を有する処理結果を出力してもよい。また、購入手段1042は、購入された商品を特定する情報を用いて、商品情報格納部101を検索して取得した商品情報をさらに有する処理結果を出力してもよい。ここでの商品情報は、検索によって検出された商品情報の全てであってもよく、一部であってもよい。また、処理結果は、購入ができなかったことを示す情報であってもよい。購入手段1042が出力する処理結果は、音声であってもよく、文字列や画像であってもよく、そのデータ構造等は問わない。ただし、処理結果は、音声以外である場合には、音声に変換可能な情報であることが好ましい。処理結果の出力先は、通常、購入処理に対応する購入指示情報を有する入力情報の入力を入力情報受付部103に対して行った対話装置2である。ただし、処理結果の出力先は、これに限定されるものではない。
起動信号受付部105は、ユーザ識別子に対応付けられた起動信号を対話装置2から受け付ける。起動信号は、例えば、対話装置2の電源がオンされたことを示す信号や、対話装置2が起動したことを示す情報である。ここでのユーザ識別子は、起動信号を出力した対話装置2を利用するユーザのユーザ識別子である。ここでのユーザ識別子は、起動信号を出力した対話装置2の装置識別子であってもよい。
ここでの受付は、通常、対話装置2から送信される起動信号の受信である。なお、例えば、対話装置2の対話引渡部204を、情報処理装置1を利用して実現する場合、起動信号受付部105は、起動信号を、対話装置2の対話引渡部204から受け付けてもよい。起動信号受付部105は、例えば、有線または無線の通信手段等により実現され得る。
初期処理部106は、起動信号受付部105による起動信号の受け付けに応じて、予め決められた初期処理を行い、処理結果を取得する。初期処理は、例えば、起動信号に対応付けられたユーザ識別子が示すユーザについて1以上のレコメンド情報を取得する処理であり、初期処理を行って取得する処理結果は、1以上のレコメンド情報である。レコメンド情報とは、ユーザにレコメンドする1以上の商品の情報を有する情報であり、例えば、ユーザにレコメンドする1以上の商品にそれぞれ対応する上述した商品情報を有する情報である。ここでの商品情報は、例えば、商品情報格納部101に格納されている商品情報のうちの1以上の商品情報である。レコメンド情報が有する商品情報は、上述したような商品情報のすべての情報であってもよく、商品情報内の一部の情報であってもよい。レコメンド情報が有する商品情報は、商品識別子や商品名等の、商品を特定する情報を有することが好ましい。ユーザについて取得するレコメンド情報とは、ユーザにレコメンドする商品に関する情報である。レコメンド情報は、レコメンドする複数の商品の優先度を示す情報を有していてもよい。例えば、初期処理部106は、ユーザ情報格納部102に格納された購入情報であって、起動信号に対応付けられたユーザ識別子と対応付けられた1以上の購入情報を用いて、ユーザにレコメンドする商品に関する1以上のレコメンド情報である処理結果を取得する。初期処理部106は、例えば、優先度が最も高い一の商品に関するレコメンド情報だけを取得してもよく、優先度が高い予め決められた数のレコメンド情報だけを取得してもよい。なお、起動信号の受け付けに応じて、予め決められた初期処理を行うことは、起動信号の受け付けた後に、直ちに初期処理を行うことであることは好適である。
初期処理部106は、例えば、ユーザと対応付けられた購入情報を用い、公知のレコメンド技術を利用して、レコメンド情報を取得する。例えば、初期処理部106は、一のユーザ識別子について取得した1または2以上の購入情報が有する商品を特定する情報が示す商品の商品情報と予め決められた条件を満たすほど近似する1または2以上の商品情報を、商品情報格納部101に格納されている商品情報の中から検出し、検出した1または2以上の商品情報に対応する商品をレコメンドするレコメンド情報を、初期処理の結果として取得する。例えば、一のユーザ識別子について取得した1または2以上の購入情報が有する商品を特定する情報が示す商品の商品情報を用いて構成されるベクトルと、商品情報格納部101に格納されている各商品情報を用いて構成されるベクトルとの距離を算出し、当該距離が予め決められた条件を満たすほど短い場合、この1または2以上の商品情報に対応する商品をレコメンドするレコメンド情報を取得する。なお、公知のレコメンド技術とは、例えば、協調フィルタリング、特許第5064063号、特許第5140289号等に記載のレコメンド技術、「情報推薦システム入門−理論と実践−(共立出版)」等の書籍に記載された技術が利用可能である。なお、ユーザと対応付けられたユーザの属性の情報をさらに利用してレコメンド情報を取得してもよい。
また、初期処理部106は、環境情報取得手段1061と環境初期処理手段1062とを用いて、予め決められた初期処理を行ってもよい。この初期処理については後述する。
環境情報取得手段1061は、環境情報を取得する。環境情報とは、例えば、翌日以降の近日の天候に関する情報である。環境情報は、天候を予報する情報であってもよい。例えば、天候を予報する情報は、天気予報の情報であってもよい。ここでの天候は、晴雨・気温・湿度・風などの状態や状況である。環境情報取得手段1061が取得する天候に関する情報は、例えば、起動信号を出力した対話装置2の位置を含む地域における天候に関する情報であってもよく、予め決められた複数の箇所の天候に関する情報であってもよい。対話装置2の位置を示す情報は、例えば、図示しない格納部に予め格納されていてもよく、対話装置2がGPS(グローバルポジショニングシステム)機能等を有するようにし、このGPS機能等を用いて取得した位置情報を、対話装置2が起動信号とともに送信し、環境情報取得手段1061がこの位置情報を用いて環境情報を取得するようにしてもよい。また、対話装置2のIPアドレス等から位置情報を取得してもよい。位置情報は、例えば、緯度と経度とで表される座標や、住所である。環境情報取得手段1061は、例えば、天候情報を提供するサーバ装置(図示せず)等から、対話装置2の位置情報を用いて天候情報を取得する。ただし、天候情報をどのように取得するかは問わない。
環境情報取得手段1061が環境情報を取得するタイミングやトリガー等は問わない。例えば、環境情報取得手段1061は、毎日予め決められた時刻等に環境情報を取得してもよい。また、環境情報取得手段1061は、ランダムなタイミングで環境情報を取得してもよい。また、環境情報取得手段1061は、起動信号を受信した場合に、この起動信号を出力した対話装置の位置を含む地域の天候に関する情報を取得してもよい。
環境初期処理手段1062は、起動信号の受け付けに応じて、環境情報取得手段1061が取得した環境情報を用いて、予め決められた初期処理を行い、処理結果を取得する。初期処理は、例えば、起動信号に対応付けられたユーザ識別子が示すユーザについて、1以上のレコメンド情報を取得する処理であり、初期処理を行って取得する処理結果は、1以上のレコメンド情報である。ここでの処理は、環境情報取得手段1061が取得した起動信号を出力した対話装置2の位置を含む地域の天候に関する情報を用いて、起動信号に対応付けられたユーザ識別子が示すユーザについて、1以上のレコメンド情報を取得する処理である。
例えば、図示しない格納部に、予め、環境(例えば、天候)についての条件とレコメンドする1以上の商品を特定する情報を対応付けて蓄積しておくようにし、環境初期処理手段1062は、環境情報取得手段1061が取得した環境情報(例えば、天候に関する情報)が満たしている条件と対応付いている商品を特定する情報を図示しない格納部から取得し、当該商品を特定する情報により特定される商品情報を有するレコメンド情報を取得する。商品を特定する情報は、上述したような商品識別子や、商品名である。ここでの商品情報は、例えば、商品情報格納部101から商品を特定する情報を用いて取得すればよい。なお、環境(例えば、天候)についての条件を、商品情報格納部101に格納されている1または2以上の商品情報に対応付けておくようにし、この環境(例えば、天候)についての条件を用いて、商品情報の中から、環境情報取得手段1061が取得した環境情報(天候に関する情報)が条件を満たしている環境(例えば、天候)についての条件と対応付けられた商品情報を取得し、この商品情報を有するレコメンド情報を取得してもよい。レコメンド情報が有する商品情報は、商品情報格納部101に格納されている各商品に対応する商品情報のうちの一部であっても全部であってもよい。例えば、レコメンド情報が有する商品情報は、商品名または商品識別子のみであってもよい。
例えば、図示しない格納部に、天候が雨である、という条件と、特定のカッパの商品識別子とが対応付けて格納されている場合において、環境情報取得手段1061が、起動信号受付部105が受け付けた起動信号と対応付けられたユーザ識別子と対応付けられた対話装置2の位置を含む地域について取得した天候に関する情報が雨であった場合、上記の天候が雨である、という条件と対応付けられた特定のカッパの商品識別子や、この商品識別子と対応付けられた商品情報を有するレコメンド情報を取得する。なお、取得される天候に関する情報は、翌日以降の天候に関する情報であることは好適である。当日の天候に基づいたレコメンドでは商品注文後の配送が合わず、商品の配送期間を考慮すれば、翌日以降の天候を考慮したレコメンドが望ましいからである。
また、例えば、図示しない格納部に、予め、環境(例えば、天候)についての条件とレコメンドする商品についての条件(例えば、商品の分野等を指定する情報)を対応付けて蓄積しておくようにし、環境初期処理手段1062は、この格納部から、対応する環境(例えば、天候)についての条件を、環境情報取得手段1061が取得した環境情報(例えば、天候に関する情報)が満たしているレコメンドする商品についての条件を取得し、この条件を満たす商品の商品情報の中から、起動指示に対応付けられたユーザ識別子と対応付けられた購入情報等を用いて上記のような公知のレコメンドの技術を用いて、レコメンド情報を取得してもよい。例えば、図示しない格納部に、予め、環境(例えば、天候)についての条件とレコメンドする商品の分類を対応付けて蓄積しておくようにし、環境初期処理手段1062は、この格納部から、対応する環境(例えば、天候)についての条件を、環境情報取得手段1061が取得した環境情報(例えば、天候に関する情報)が満たしている商品の分類を取得し、この商品の分類を有する商品情報の中から、起動指示に対応付けられたユーザ識別子と対応付けられた購入情報等を用いて上記のような公知のレコメンドの技術を用いて、レコメンド情報を取得してもよい。
例えば、図示しない格納部に、気温が35度以上である、という条件と、「ファン付き防護服」という商品の分類を示す情報とが対応付けて格納されている場合において、環境情報取得手段1061が、起動信号受付部105が受け付けた起動信号と対応付けられたユーザ識別子と対応付けられた対話装置2の位置を含む地域について取得した天候に関する情報が、気温が35度以上であった場合、上記の気温が35度以上である、という条件と対応付けられた「ファン付き防護服」という商品の分類を取得し、商品情報格納部101に格納されている情報のうちの、この分類を有する商品情報の中から、ユーザの購入情報を用いて、公知のレコメンドの処理を行って、「ファン付き防護服」についてのレコメンド情報を取得する。
なお、上記で説明した環境初期処理手段1062が、環境情報を用いてレコメンド情報を取得する処理は一例であり、環境初期処理手段1062は、上記以外の処理により、環境情報を用いてレコメンド情報を取得してもよい。
結果引渡部107は、処理結果を対話装置2に渡す。例えば、結果引渡部107は、入力情報受付部103が受け付けた入力情報に応じて購入支援処理部104が入力対応処理を行って取得した処理結果を、この入力情報に対応付けられたユーザ識別子が示すユーザが利用する対話装置2に渡す。処理結果を渡す先となる対話装置2は、例えば、入力情報を入力した対話装置2である。処理結果を渡す先となる対話装置2は、例えば、入力情報に対応付けられたユーザ識別子と対応付けられた対話装置2であってもよい。購入支援処理部104が取得した処理結果は、例えば、検索手段1041が取得した検索結果である。また、購入支援処理部104が取得した処理結果は、例えば、購入手段1042が取得した購入処理の結果である。
また、結果引渡部107は、初期処理部106が取得した初期処理の処理結果を対話装置2に渡す。例えば、結果引渡部107は、起動信号受付部105が受け付けた起動信号に応じて初期処理部106が取得した初期処理の処理結果を、この起動信号に対応付けられたユーザ識別子が示すユーザが利用する対話装置2に渡す。処理結果を渡す先となる対話装置2は、例えば、起動信号を出力した対話装置2である。処理結果を渡す先となる対話装置2は、例えば、起動信号と対応付けられたユーザ識別子と対応付けられた対話装置2であってもよい。初期処理部106が取得した初期処理の処理結果は、例えば、初期処理部106が、起動信号に対応付けられたユーザ識別子が示すユーザについて、購入情報等を用いて取得したレコメンド情報である。また、初期処理部106が取得した初期処理の処理結果は、例えば、環境初期処理手段1062が取得したレコメンド情報や、レコメンド情報に対応する商品の商品情報である。
結果引渡部107が処理結果を渡すということは、通常、処理結果を対話装置2に送信することである。なお、例えば、対話装置2の対話結果受付部206を、情報処理装置1を利用して実現する場合、結果引渡部107は、処理結果を、対話装置2の対話結果受付部206に出力してもよい。結果引渡部107は、例えば、有線または無線の通信手段等により実現され得る。
対話装置2は、ユーザと音声による対話を行う装置である。対話装置2は、例えば、音声の入出力が可能な、いわゆるチャットボットを実行する端末装置である。チャットボットとは、例えば、人工知能を利用した自動会話を実現するプログラムである。対話装置2は、例えば、チャットボットを実行するコンピュータや、いわゆるスマートフォンや、タブレット型端末や、いわゆるスマートスピーカーで実現される。スマートスピーカーとは、対話型の音声操作に対応したスピーカーであって、内蔵されているマイクで音声を認識し、音声に応じて情報の検索や連携家電の操作等を行うスピーカーである。
対話音声受付部201は、ユーザの音声を受け付ける。対話音声受付部201は、例えば、受け付けた音声をサンプリングして、音声データを取得してもよい。また、対話音声受付部201は、例えば、受け付けた音声を音声認識して、音声に対応する文字列を取得してもよい。音声認識は、音声をサンプリングする処理を含んでいてもよい。ユーザから受け付ける音声は、ユーザから受け付ける発話と考えてもよい。対話音声受付部201は、音声を受け付けるためのマイクロフォン等の入力手段を備えていてもよく、備えていなくてもよい。例えば、対話音声受付部201は、外部の音声入力手段(図示せず)が受け付けた音声の入力を受け付けてもよい。対話音声受付部201は、入力手段のデバイスドライバー等で実現され得る。
対話モデル格納部202は、ユーザとの対話のための対話モデルが格納される。対話モデルとは、例えば、ユーザからの入力に対して取得するデータや、ユーザからの入力に対して返す応答を定義する情報である。ユーザからの入力とは、対話音声受付部201が受け付けた音声から取得される入力情報である。入力情報は、ユーザの発話の情報と考えてもよく、発話の情報は、入力情報と考えてもよい。例えば、入力情報は、対話音声受付部201が受け付けるユーザの音声から音声認識により取得される文字列である。例えば、対話モデルは、サンプルとなる発話の情報と、この発話の情報に対応する応答の情報との1以上の組である。ここでの応答の情報は、例えば、応答に用いられる情報であり、応答する文字列等の情報であってもよく、応答として実行される処理等を示す情報や、処理の実行を指示する情報等であってもよい。応答の情報は、例えば、一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよく、予め決められた判断処理等を行うためのアルゴリズムであっても良い。また、対話モデルは、例えば、サンプルとなる複数の発話の情報を用いて機械学習を行うことにより取得した学習データ(例えば、学習器)と、これに対応する発話の目的や、発話内の変数等を定義する情報と、の1または2以上の組を有する情報である。発話の目的を示す情報や、応答の情報の1以上は、検索指示情報や、購入指示情報であってもよい。検索指示情報は、発話内の変数を示す情報を、検索条件として用いるものであってもよい。また、購入指示情報は、発話内の変数を示す情報を、購入対象を特定する情報として用いるものであってもよい。また、対話モデルは、ユーザからの入力について、対応する応答や、目的を示す情報を取得できない場合の応答に利用される応答の情報を有していてもよい。対話モデルについては、チャットボット等の対話システム等の技術として公知であるため、ここでは詳細な説明を省略する。
対話判断部203は、対話音声受付部201が受け付けた音声が予め決められた条件を満たすか否かを判断する。予め決められた条件は、例えば、受け付けた音声に対応する入力情報が、情報処理装置1において処理可能な入力情報であるか判断するための条件である。予め決められた条件は、例えば、対話判断部203が、対話音声受付部201が受け付けた音声から、これに対応する応答の情報や、発話の目的の情報を取得可能であるという条件であってもよい。また、予め決められた条件は、対話判断部203が取得した応答の情報や、発話の目的を示す情報や変数等が、対話装置2を利用するユーザが情報処理装置1に対して出力してもよい情報である、という条件であってもよい。例えば、対話判断部203が取得した購入指示情報が、対話装置2を利用するユーザが購入してもよい商品を購入する購入指示情報であるか否かという条件であってもよい。
対話判断部203は、例えば、対話音声受付部201が受け付けた音声に対応する文字列を取得し、この文字列が、予め決められた条件を満たすか判断することにより、受け付けた音声が条件を満たすか判断する。この場合、対話音声受付部201が受け付けた音声に対応する文字列は、どのように取得されたものであってもよく、例えば、対話音声受付部201が受け付けた音声から、音声認識を行って音声に対応する文字列を取得してもよい。
対話判断部203が、どのように、対話音声受付部201が受け付けた音声が予め決められた条件を満たすか否か判断するかは問わない。例えば、対話判断部203は、音声に対応する文字列に、予め決められた1または2以上の文字列の情報が含まれる場合に、予め決められた条件を満たすと判断してもよい。予め決められた文字列(用語と言っても良い)は、例えば、対話装置2に予め格納されている。予め決められた文字列は、例えば、「検索」、「購入」である。予め決められた文字列は、例えば、予め決められた商品名である。予め決められた商品名は、情報処理装置1の商品情報格納部101に格納されている商品情報が有する商品名である。
また、対話判断部203は、受け付けた音声を音声認識できなかった場合に、予め決められた条件を満たさないと判断してもよい。
対話引渡部204は、ユーザ識別子に対応付けて、対話音声受付部201が受け付けた音声に対応する入力情報を情報処理装置1に渡す。対話引渡部204は、例えば、対話判断部203が予め決められた条件を満たすと判断した場合に、ユーザを識別するユーザ識別子に対応付けて、対話音声受付部201が受け付けた音声に対応する入力情報を情報処理装置1に渡すようにしてもよい。
対話引渡部204が渡す入力情報は、例えば、入力情報受付部103が受け付ける入力情報と同様の入力情報である。対話引渡部204が渡す入力情報は、対話音声受付部201が受け付けた音声そのものや、受け付けた音声をサンプリングした音声データや、受け付けた音声を音声認識した文字列や、この文字列から取得された部分文字列や、音声認識した文字列を用いて構成された関数の情報等である。対話引渡部204が渡す入力情報は、対話音声受付部201が取得した入力情報であってもよく、対話音声受付部201が受け付けた音声や音声のデータから対話引渡部204が取得した入力情報であってもよい。また、対話引渡部204が渡す音声に対応する入力情報は、対話音声受付部201が受け付けた音声から、対話モデルを用いて取得した発話の目的を示す情報や、発話の目的を示す情報と1以上の変数とを有する情報であってもよく、対話モデルを用いて取得された応答の情報であってもよい。対話モデルを用いて、音声等から、発話の目的を示す情報や、変数等を取得する処理や、応答の情報を取得する処理は、公知技術であるため、ここでは詳細な説明を省略する。
また、対話引渡部204は、例えば、ユーザ識別子に対応付けて、起動信号を情報処理装置1に渡す。対話引渡部204は、例えば、ユーザ識別子に対応付けて、対話音声受付部201が受け付けた音声に応じて起動信号を情報処理装置1に渡す。例えば、対話音声受付部201が受け付けた音声が、起動指示である場合に、対話引渡部204は、ユーザ識別子に対応付けて、起動信号を情報処理装置1に渡す。例えば、対話音声受付部201が受け付けた音声から音声認識等により取得した文字列等の情報が、起動指示である音声を示す文字列と一致する場合に、ユーザ識別子に対応付けて、起動信号を情報処理装置1に渡す。
また、対話引渡部204は、例えば、対話装置2の電源がオンした場合や、オンする操作を図示しない受付部がユーザから受け付けた場合に、ユーザ識別子に対応付けて、起動信号を情報処理装置1に渡すようにしてもよい。また、対話引渡部204は、対話モデルを用いて音声から取得した入力情報が、起動指示を目的とする情報である場合や、起動指示を示す応答の情報である場合、ユーザ識別子に対応付けて、起動信号を情報処理装置1に渡すようにしてもよい。ここでの対話装置の起動とは、起動指示の入力の判断が可能な待機状態から、主電源をオンとする状態に切り替えることも含む概念である。なお、対話引渡部204が、起動信号を送信するタイミング等は上記に限定されるものではない。
対話引渡部204が入力情報に対応付けて引き渡すユーザ識別子は、対話装置2を利用するユーザのユーザ識別子である。ユーザ識別子は、対話装置2の装置識別子であってもよい。対話引渡部204は、通常、図示しない格納部に予め格納されているユーザ識別子を読み出し、入力情報に対応付けて引き渡す。ただし、対話音声受付部201が受け付けた音声から、ユーザ識別子を取得してもよい。かかることは、起動信号に対応づけるユーザ識別子についても同様である。
対話引渡部204が入力情報を情報処理装置1に渡すということは、通常、入力情報を情報処理装置1に送信することである。なお、例えば、対話装置2の対話引渡部204を、情報処理装置1を利用して実現する場合、対話引渡部204は、情報処理装置1に入力情報を出力すると考えてもよい。かかることは、起動信号についても同様である。対話引渡部204は、例えば、有線または無線の通信手段等により実現され得る。
なお、例えば、上述した対話判断部203が、音声から入力情報として検索指示情報や購入指示情報を取得して、この検索指示情報や購入指示情報が、予め決められた条件を満たすか判断するようにし、予め決められた条件を満たすと判断された場合に、対話引渡部203が、取得した入力情報をユーザ識別子と対応付けて情報処理装置1に渡すようにしてもよい。例えば、検索指示情報が示す検索対象が、予め決められた検索対象のいずれかと一致する場合に条件を満たすと判断してもよい。また、購入指示情報が示す購入対象が、予め決められた購入対象のいずれかと一致する場合に条件を満たすと判断してもよい。
また、例えば、上述した対話判断部203が、対話モデル格納部202に格納されている対話モデルを用いて、音声が、予め決められた条件を満たすか判断し、条件を満たす場合に、音声から対話モデルを利用して取得した入力情報を、ユーザ識別子と対応付けて情報処理装置1に送信してもよい。例えば、上述した対話判断部203が、対話モデル格納部202に格納されている対話モデルを用いて、音声に対応する文字列から、発話の目的を示す情報や変数等を取得し、取得した目的や変数等が、予め決められた条件を満たすか判断し、条件を満たす場合に、音声に対応する文字列から取得した発話の目的を示す情報や、発話の目的を示す情報と変数とを有する入力情報をユーザ識別子と対応付けて送信してもよい。ここでの予め決められた条件を満たすかの判断は、取得した目的や変数等が、予め決められた1以上の発話の目的や変数等のいずれかと一致するか否かの判断であってもよい。また、入力情報に対応する発話の目的や変数等が取得できない場合や、入力情報に対応する応答の情報を取得できない場合に、予め決められた条件を満たさないと判断してもよい。
対話応答取得部205は、対話判断部203が予め決められた条件を満たさないと判断した場合に、音声に対応する応答を、対話モデルを用いて取得する。例えば、対話応答取得部205は、対話モデルを用いて、対話音声受付部201が受け付けた音声について取得した文字列に対応づけられた応答を取得する。また、予め決められた条件を満たさない場合に、この条件に対して、対話モデルにより対応付けられた応答の情報を取得してもよい。なお、音声に対応する応答を、対話モデルを用いて取得する処理は、チャットボット等の対話システム等の技術において公知であるため、ここでは詳細な説明を省略する。
なお、対話応答取得部205は、予め決められた条件を満たすか否かにかかわらず、入力された音声に応じた応答が、対話モデルを用いて取得された場合であって、この応答が、対話装置2で音声出力すべき情報である場合に、この取得した応答を出力するようにしてもよい。この場合、対話判断部203を省略することも可能である。
対話結果受付部206は、入力情報を渡す処理に応じて、情報処理装置1における入力情報に対応する処理結果を情報処理装置1から受け付ける。情報処理装置1における入力情報に対応する処理結果とは、例えば、結果引渡部107が対話装置2に渡す処理結果である。
ここでの受付は、通常、情報処理装置1から送信される処理結果の受信であるが、記録媒体等からの情報の読み出し等であってもよい。また、例えば、対話装置2の対話結果受付部206を、情報処理装置1を利用して実現する場合、対話結果受付部206は、情報処理装置1から処理結果の入力を受け付けてもよい。対話結果受付部206は、例えば、有線または無線の通信手段や、記録媒体等から情報を読み出すためのドライバー等により実現され得る。
対話音声出力部207は、対話結果受付部206が受け付けた処理結果に関する出力情報を音声出力する。ここでの出力情報とは、処理結果そのものでもよく、処理結果が得られたことを示す情報でもよく、処理結果を加工した情報でもよい。対話音声出力部207は、例えば、処理結果を音声合成し、構成した音声を出力する。
また、対話音声出力部207は、対話応答取得部205が取得した応答に関する出力情報を音声出力する。ここでの出力情報とは、対話応答取得部205が取得した応答そのものでもよく、応答が得られたことを示す情報でもよく、応答を加工した情報でもよい。
対話音声出力部207は、音声を出力するためのスピーカーやヘッドホン等の出力手段を備えていてもよく、備えていなくてもよい。例えば、対話音声出力部207は、外部の音声出力手段(図示せず)に音声情報を出力してもよい。対話音声出力部207は、出力手段のデバイスドライバー等で実現され得る。
なお、対話装置2の一部の処理は、情報処理装置1や、外部のサーバ装置(図示せず)により実行するようにしてもよい。例えば、対話装置2の一部の処理を実行するために必要な情報を、対話装置の送信部(図示せず)が情報処理装置1やサーバ装置に送信し、情報処理装置1やサーバ装置がこの情報を用いて行った処理結果を、対話装置2の受信部(図示せず)が受信するようにしてもよい。この場合、対話装置2の、情報処理装置1や外部のサーバ装置で行うことが可能な処理を行う処理部等は省略してもよい。例えば、対話モデル格納部202に格納されているような対話モデルを情報処理装置1や外部のサーバ装置が有するようにし、対話モデルを用いた処理を、この情報処理装置1やサーバ装置が有する対話モデル格納部に格納された対話モデルを用いて行う場合、対話モデル格納部202を設けないようにしてもよい。また、音声が予め決められた条件を満たすかの判断を、情報処理装置1やサーバ装置で行う場合、対話判断部203等は省略してもよい。
次に、情報処理システム1000の情報処理装置1の動作の一例について図2のフローチャートを用いて説明する。
(ステップS101)起動信号受付部105は、ユーザ識別子と対応付けられた起動信号を受け付けたか判断する。受け付けた場合、ステップS102に進み、受け付けていない場合、ステップS105に進む。
(ステップS102)環境情報取得手段1061は、環境情報を取得する。例えば、環境情報取得手段1061は、ステップS101で受け付けたユーザ識別子が示すユーザがいる地域の環境情報を取得する。
(ステップS103)環境初期処理手段1062は、ステップS102で取得した環境情報を用いて、予め決められた初期処理を行い、処理結果を取得する。
(ステップS104)結果引渡部107は、初期処理の結果である処理結果を、起動信号の入力を行った対話装置2に渡す。そして、ステップS101に戻る。
(ステップS105)入力情報受付部103は、対話装置2から、ユーザ識別子と対応付けられた入力情報を受け付けたか判断する。受信した場合、ステップS106に進み、受信していない場合、ステップS101に戻る。ここでは、受信する入力情報が、例えば、文字列の情報であるとする。なお、受信する入力情報が、音声である場合、入力情報受付部103等が、音声認識等を行って入力情報に対応する文字列を取得すればよい。
(ステップS106)購入支援処理部104は、ステップS105で受信した入力情報が、検索指示情報であるか判断する。検索指示情報である場合、ステップS107に進み、検索指示情報でない場合、ステップS109に進む。
(ステップS107)購入支援処理部104の検索手段1041は、ステップS105で受信した検索指示情報に応じて、入力対応処理である商品の検索処理を行う。例えば、検索手段1041は、商品情報格納部101に格納されている商品情報が示す商品について検索処理を行う。例えば、検索指示情報に対応付けられた検索キーワードや検索式を用いて、商品の検索処理を行う。そして、検索結果である処理結果を取得する。
(ステップS108)結果引渡部107は、検索結果である処理結果を、入力情報の入力を行った対話装置2に渡す。そして、ステップS101に戻る。
(ステップS109)購入支援処理部104は、ステップS105で受信した入力情報が、購入指示情報であるか判断する。購入指示情報である場合、ステップS110に進み、購入指示情報でない場合、ステップS101に戻る。なお、ステップS101に戻る代わりに、検索処理や購入処理以外の、受信した入力情報に応じた処理を行うようにしてもよい。
(ステップS110)購入支援処理部104の購入手段1042は、ステップS105で受信した購入指示情報に応じて、入力対応処理である商品の購入処理を行う。例えば、購入指示情報に対応付けられた商品を特定する情報により特定される商品の購入処理を行う。そして、購入処理の結果である処理結果を取得する。
(ステップS111)結果引渡部107は、購入処理の結果である処理結果を、入力情報の入力を行った対話装置2に渡す。
(ステップS112)購入支援処理部104の購入手段1042は、購入処理に応じて、ユーザの購入に関する購入情報を取得し、入力情報に対応付けられたユーザ識別子と購入情報とを有するユーザ情報を、ユーザ情報格納部102に蓄積する。そして、ステップS101に戻る。
図2のフローチャートにおいて、ステップS103における初期処理において、環境情報を利用しない初期処理を行ってもよく、この場合、ステップS102の環境情報を取得する処理は省略してよい。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
次に、情報処理システム1000の対話装置2の動作の一例について図3のフローチャートを用いて説明する。
(ステップS201)対話音声受付部201は、音声による起動指示を受け付けたか否かを判断する。音声による起動指示は、例えば、予め決められた語句で構成される音声であり、対話音声受付部201は、音声認識で取得した音声が予め決められた語句であるか判断し、予め決められた語句である場合、起動指示を受け付けたと判断し、予め決められた語句でない場合、起動指示の受付ではないと判断する。起動指示を受け付けた場合、ステップS202に進み、受け付けていない場合、ステップS201に戻る。なお、音声による起動指示を受け付ける代わりに、図示しないボタンのオン等の、起動操作を受け付けるようにしてもよい。
(ステップS202)対話音声受付部201は、対話装置2に起動指示を与えて、対話装置2を起動させる。
(ステップS203)対話引渡部204は、起動信号を格納部(図示せず)に予め格納されているユーザ識別子と対応付けて、情報処理装置1に送信する。
(ステップS204)対話音声受付部201は、ユーザから音声を受け付けたか判断する。受け付けた場合、ステップS205に進み、受け付けていない場合、ステップS209に進む。対話音声受付部201は、例えば、受け付けた音声に対して、音声認識を行って、受け付けた音声に対応する文字列を取得してもよい。
(ステップS205)対話判断部203は、ステップS204で受け付けた音声が、予め決められた条件を満たすか判断する。条件を満たす場合、ステップS206に進み、満たさない場合、ステップS207に進む。
(ステップS206)対話引渡部204は、ステップS204で受け付けた音声に対応する入力情報を取得し、取得した入力情報を情報処理装置1に渡す。ここで取得する入力情報は、例えば、検索指示情報や、購入指示情報である。そして、ステップS204に戻る。
(ステップS207)対話応答取得部205は、対話モデル格納部202に格納されている対話モデルを用いて、ステップS204で受け付けた音声に対応する応答を取得する。
(ステップS208)対話音声出力部207は、ステップS207で取得した応答に対応する音声出力を行う。そして、ステップS204に戻る。
(ステップS209)対話結果受付部206は、情報処理装置1から入力情報に対応する処理結果、または、初期処理の処理結果を受け付けたか判断する。受け付けた場合、ステップS210に進み、受け付けていない場合、ステップS211に進む。
(ステップS210)対話音声出力部207は、ステップS209で受け付けた処理結果に関する出力情報を音声出力する。そして、ステップS204に戻る。
(ステップS211)対話音声受付部201は、自装置である対話装置2の電源をオフにするタイミングであるか判断する。例えば、対話音声受付部201は、最後に音声の入力を受け付けてから、予め決められた時間が経過した場合に、電源オフのタイミングであると判断する。ただし、対話音声受付部201がどのように電源オフのタイミングを判断するかは問わない。電源オフのタイミングである場合、電源をオフにして処理を終了し、電源オフのタイミングでない場合、ステップS204に戻る。ここでの電源オフは、主電源をオフにして、待機状態とすることであってもよい。
なお、図3のフローチャートにおいて、対話装置2の起動や、電源オフのタイミングの判断は、対話音声受付部201以外の処理部が行っても良い。また、どのような処理部がどのようなタイミングで対話装置2の電源オフを行うようにしてもよい。
以下、本実施の形態における情報処理システム1000の具体的な動作について説明する。情報処理システム1000の概念図は図4である。ここでは、各対話装置2が、いわゆるスマートスピーカーであるとする。また、対話装置2と情報処理装置1とはインターネットにより接続されているものとする。
図5は、情報処理装置1の商品情報格納部101に格納された商品情報を管理する商品情報管理表である。商品情報管理表は、商品識別子である「商品ID」、商品名である「商品名」、商品のメーカー名である「メーカー」、商品の価格である「価格」、商品の分類である「分類」等の属性を有している。ここでは、各レコード(行)が各商品情報であるとする。
図6は、情報処理装置1のユーザ情報格納部102に格納されているユーザ情報を管理するユーザ情報管理表である。ユーザ情報管理表は、ユーザ識別子である「ユーザID」、ユーザが購入した商品の商品識別子である「購入商品ID」、ユーザが購入した商品の数である「購入数」、およびユーザが商品を購入した日付である「購入日」という属性を有している。「購入商品ID」の属性値は、図5の「商品ID」に対応している。
図7は、情報処理装置1の格納部(図示せず)に予め格納されている環境分野管理表である。環境分野管理表は、環境情報についての条件と、レコメンドする商品の分野とを対応付けて管理する環境分野管理表である。環境分野管理表において、「環境条件」は、環境情報についての条件であり、環境情報の属性名と、その属性についての条件を示す値とを「:」(コロン)で接続している。環境の属性名とは、例えば、「天気」や「気温」等の環境情報を構成する属性の属性名である。「分野」は、レコメンドする商品の分野である。ここでは、一例として、環境情報が、天候の情報であり、環境情報についての条件は、天候の情報についての条件であるとする。
まず、ユーザAのユーザ識別子「U101」が予め登録されている対話装置2であって、待機電源で動作している対話装置2に対して、ユーザAがこの対話装置2を起動させるための予め決められた「こんにちはスピーカー」という音声を発話したとする。以下、この対話装置2をユーザAの対話装置2と呼ぶ場合がある。ユーザ識別子は、例えば、対話装置2の図示しない格納部に格納されている。なお、ユーザ識別子が、対話装置2の装置識別子と対応付けて情報処理装置1等の図示しない格納部に格納されているようにするとともに、対話装置2には装置識別子が格納されているようにして、この装置識別子を、後述する対話引渡部204等が、ユーザ識別子の代わりに送信するようにしてもよい。
ユーザAの対話装置2の対話音声受付部201が、上記の音声を受け付けると、音声認識を行って、「こんにちはスピーカー」という文字列を取得する。
対話判断部203は、対話音声受付部2、01が受け付けた音声から取得した文字列が、予め用意された起動指示の文字列と一致するか判断する。ここでは、起動を指示するための文字列と一致すると判断されたとする。
対話判断部203は、入力された音声が起動指示であると判断し、対話引渡部204は、格納部(図示せず)に格納されているユーザAのユーザ識別子「U101」と対応付けて起動信号を、情報処理装置1に送信する。また、対話装置2の図示しない処理部等は、音声に対応する文字列が起動を指示する文字列であるため、対話装置2を起動する。
なお、対話判断部203が、音声から取得した文字列を、起動を指示するための文字列でないと判断した場合、図示しない処理部は、対話装置2の起動を行わず、対話引渡部204も起動信号を出力しない。
情報処理装置1の起動信号受付部105が起動信号とユーザ識別子「U101」とを受信すると、初期処理部106の環境情報取得手段1061は、起動信号等とともに受信したIPアドレスを用いて、起動信号を送信した対話装置2の位置情報を取得する。取得した位置情報が、「A県B市」であったとする。IPアドレスから機器の位置情報を取得する処理等は公知技術であるため、ここでは詳細な説明を省略する。なお、ユーザ識別子と、ユーザが利用する対話装置の位置情報とを対応付けた情報を、予め図示しない格納部に蓄積しておくようにして、この対応付けた情報から、受信したユーザ識別子に対応する位置情報を取得してもよい。
環境情報取得手段1061は、受信した位置情報「A県B市」の、2日後の環境情報を、環境情報を提供するサーバ装置(図示せず)等から取得する。ここでは、2日後の環境情報である天候の情報を、天候の情報を提供するサーバ装置からインターネット経由で取得する。例えば、環境情報取得手段1061は、受信した位置情報「A県B市」が示す位置の環境情報を要求する情報を、サーバ装置に送信し、この情報に応じて送信される環境情報を取得する。ここで取得する環境情報は、2日後の天気の予報が「雨」である、という情報、および予想最高気温が「18度」という情報であったとする。
環境初期処理手段1062は、図7に示した環境分野管理表を用いて、環境情報取得手段1061が取得した環境情報である2日後の天気の予報を示す値「雨」と、予想最高気温「18度」とから、予め決められた初期処理として、ユーザにレコメンドする商品の分野の属性値を取得する。具体的には、図7に示した環境分野管理表の各レコード(行)の「環境条件」の値が示す属性名の環境情報が、同じ値が示す条件を満たすか判断し、条件を満たすレコードの「分野」の属性値を取得する。例えば、あるレコードの「環境条件」が「天気:晴」である場合、環境情報取得手段1061が取得した2日後の天気の予報を示す値が「晴」であれば、環境情報取得手段1061が取得した環境情報がこのレコードの環境情報についての条件を満たすと判断し、このレコードの「分野」の属性値を取得し、「晴」でなければ、このレコードの「分野」の属性値を取得しない。また、例えば、あるレコードの「環境条件」が「最高気温:30度以上」である場合、環境情報取得手段1061が取得した2日後の予想最高気温の値が「30度以上」であれば、環境情報取得手段1061が取得した環境情報がこのレコードの環境情報についての条件を満たすと判断し、このレコードの「分野」の属性値を取得し、「30度以上」でなければ、このレコードの「分野」の属性値を取得しない。
ここでは、図7の環境分野管理表の上から2行目のレコードの「環境条件」が、「天気:雨」であり、環境情報取得手段1061が取得した2日後の天気の予報を示す値が「雨」であるため、この条件を満たすと判断して、このレコードの「分野」の値「レインウェア」を取得する。また、他のレコードの「環境条件」が示す条件を満たさないため、他のレコードの「分野」の値は取得しない。
環境初期処理手段1062は、取得した「分野」の値「レインウェア」の値と、起動信号受付部105が受信したユーザ識別子「U101」とを用いて、予め決められた初期処理として、ユーザ識別子「U101」が示すユーザAにレコメンドする商品を示すレコメンド情報を取得する処理を行う。具体的には、環境初期処理手段1062は、図6に示したユーザ情報管理表から「ユーザID」が、受信したユーザ識別子「U101」と一致するレコードを検出する。そして、検出したレコードの「購入商品ID」の属性値が示す商品情報と、検出したレコードの「購入数」と、「購入日」とを用いて、図5に示した商品情報管理表で管理されている商品情報のうちの「分野」の値が「レインウェア」である商品情報の中から、ユーザAにレコメンドする商品の商品情報を検出する。「購入商品ID」の属性値が示す商品情報とは、図5に示した商品情報管理表の、「商品ID」の属性値が、「購入商品ID」の属性値と一致するレコードで管理される商品情報である。検出したレコードの「購入商品ID」の属性値が示す商品情報と、検出したレコードの「購入数」と、「購入日」とを用いて、どのようにレコメンドする商品を決定するかは問わない。例えば、公知のレコメンドの技術を用いて、レコメンドする商品を取得する。
例えば、上記のような初期処理を行った処理結果として、図5に示した商品情報管理表で管理される商品から、「商品ID」が「G1001」であるレコードの商品情報を、レコメンドする商品の商品情報として検出したとすると、検出した商品情報に含まれる商品識別子「G1001]を有するレコメンド情報を、起動信号に対応する処理結果として取得する。ここでは、例えば、最もレコメンドの優先度が高い商品の商品識別子を有するレコメンド情報を取得するものとする。
そして、結果引渡部107は、初期処理部106の環境初期処理手段1062が取得した処理結果である商品識別子「G1001」に対応する商品情報を図5に示した商品情報管理表から取得し、取得した商品情報を、商品をユーザにレコメンドするための文字列で構成される予め用意されたテンプレートに配置して、起動信号を送信したユーザAの対話装置2に送信する。ここで送信する商品情報は、図5に示した商品情報管理表で管理されている「商品ID」が「G1001」であるレコードの商品情報のうちの全てであってもよく、予め決められた一部の情報であってもよい。ここでは、例えば、「商品名」、「メーカー」、および「価格」の属性値を含む商品情報を結果引渡部107が送信したとする。なお、結果引渡部107は、環境初期処理手段1062が取得した処理結果の情報である商品識別子「G1001」を、現在、ユーザAにレコメンド中である商品の商品識別子として、ユーザ識別子「U101」と対応付けて、図示しない格納部等に一時記憶する。
ユーザAの対話装置2の対話結果受付部206が、情報処理装置1から、テンプレートに配置された上記の処理結果の情報であるレコメンドする商品情報を受信すると、対話音声出力部207が、このテンプレートに配置されたレコメンドする商品情報を、音声に変換して発音する。例えば、「E社のレインパーカー、25000円をお勧めします。購入なさいますか。」という音声を出力する。
これに対し、仮に、ユーザAが「購入する」という音声を、対話音声受付部201に入力したとすると、上記と同様に、対話音声受付部201は、この音声から音声認識等を行って、「購入する」という文字列を取得する。そして、対話判断部203は、対話モデル格納部202に格納された対話モデルを用いて、取得した文字列について、応答が取得できるか、または、対応する発話の目的や、発話内の変数等を取得可能であるか等を判断する。ここでは、「購入する」という文字列から、対話判断部203が、「商品購入」という目的を示す情報を取得できたとする。これにより、対話判断部203は、入力された音声が、予め決められた条件を満たすと判断する。
このため、対話引渡部204は、ユーザ識別子「U101」と対応付けて、商品の購入を指示する入力情報を、情報処理装置1に送信する。ここで取得された「商品購入」という発話の目的を示す情報は、購入指示情報であるとする。
なお、ここでは、発話の目的を示す情報は、自然言語で表しているが、発話の目的を示す情報は、例えば、これらの自然言語に相当する一以上の関数や、メソッド名や、「if」、「then」等で示される制御構文等で構成されていてもよい。また、発話の目的を示す情報は、これらの自然言語に対応する判断処理等を行うためのアルゴリズムであっても良い。また、発話内の変数等の情報も、自然言語で表されていてもよく、自然言語に相当する関数等で表されていてもよい。かかることは、以下においても同様である。
情報処理装置1の入力情報受付部103が、対話装置2から、ユーザ識別子「U101」と対応付けられた「商品購入」という目的を示す情報を有する入力情報を受信すると、購入支援処理部104の購入手段1042は、この入力情報を購入指示情報であると判断する。購入手段1042は、さらに、受信した入力情報が購入する商品を指定する情報を有していないため、直前に結果引渡部107が対話装置2に送信した商品情報が、図示しない格納部に格納されているか判断し、格納されている場合、入力情報がこの商品を購入する購入指示情報であると判断する。ここでは、上記のように、結果引渡部107がレコメンドした商品の商品識別子を一時記憶しているため、購入手段1042は、上記でレコメンドされた商品、すなわち「商品ID」が「G1001」である商品を購入する購入指示情報であると判断する。そして、購入手段1042は、この商品を「ユーザID」が「U101」であるユーザが購入するための処理を行う。例えば、「ユーザID」が「U101」であるユーザから、「商品ID」が「G1001」である商品の注文を受け付けたことを示す情報を、注文を管理する格納部等に蓄積してもよい。また、購入手段1042は、このユーザ識別子「U101」と、商品識別子「G1001」と、この購入指示情報を有する入力情報を受信した日時と、購入数「1」とを対応付けて、ユーザ情報に追記してもよい。そして、直前に結果引渡部107が対話装置2に送信して図示しない格納部に蓄積した商品情報を削除する。
なお、直前に結果引渡部107が対話装置2に送信した商品情報が、図示しない格納部に格納されて格納されていない場合、結果引渡部107は、処理結果として、購入する商品が特定できなかったことを示す文字列の情報を、ユーザAの対話装置2に送信し、ユーザAの対話装置2の対話音声出力部207がこの文字列に対応する音声、例えば、「購入する商品がわかりません」等の音声を発音する。
また、例えば、起動した対話装置2に対して、ユーザAが、「防塵マスクを購入したい」という音声を発話したとする。
ユーザAの対話装置2の対話音声受付部201が、上記の音声を受け付け上記と同様に、「防塵マスクを購入したい」という文字列を取得する。
そして、対話判断部203は、対話モデル格納部202に格納された対話モデルを用いて、取得した文字列について、応答が取得できるか、または、対応する発話の目的や、発話内の変数等を取得可能であるか等を判断する。ここでは、「防塵マスクを探して」という文字列から、対話判断部203が、「商品検索」という目的を示す情報と、「防塵マスク」という検索対象を示す情報を取得したとする。これにより、対話判断部203は、入力された音声が、予め決められた条件を満たすと判断する。
対話判断部203が、予め決められた条件を満たすと判断したため、対話引渡部204は、「商品検索」という目的を示す情報と、「防塵マスク」という検索対象を示す情報とを有する入力情報を、ユーザ識別子「U101」と対応付けて情報処理装置1に送信する。ここで取得された「商品検索」という発話の目的を示す情報は、検索指示情報であるとする。また、「防塵マスク」という情報は、検索条件(検索キーワード)であるとする。
情報処理装置1の入力情報受付部103が、対話装置2から、ユーザ識別子「U101」と対応付けられた「商品検索」という目的を示す情報と、「防塵マスク」という検索対象を示す情報とを有する入力情報を受信すると、購入支援処理部104の検索手段1041は、入力情報が、検索指示情報であると判断する。検索手段1041は、商品情報格納部101に格納されている商品情報の中から、入力情報が有する検索対象を示す情報が示す「防塵マスク」の商品情報を検索する。そして、検出した1以上の商品情報が有する商品識別子を、図示しない格納部に一時記憶する。検出した商品情報が複数である場合、取得した商品識別子を、対応する商品の検索順位と対応付けて、図示しない格納部に一時記憶する。検索順位は、どのように決定してもよく、例えば、価格の安いものほど検索順位が高くなるようにしてもよい。また、例えば、上記と同様に、レコメンドの技術を利用して、ユーザ識別子「U101」と対応付けられた購入情報と、商品情報とを用いて、検出した商品の中から、ユーザAにとってレコメンドの優先度が高い商品の検索順位を高くするようにしてもよい。ここでは、検索の結果、図5に示した商品情報管理表において、「商品ID」が「G1003」であるレコードの商品情報と、他の1以上の商品情報が検出され、これらの商品識別子を検索処理の結果として取得したとする。ここでは、検出された商品の検索順位の一番が、「商品ID」が「G1003」であるレコードの商品情報であったとする。
結果引渡部107は、検索手段1041が取得した検索順位が1番である商品の商品識別子「G1003」に対応する商品情報を、図5に示した商品情報管理表から取得し、取得した商品情報を、検索された商品情報をユーザに通知するための文字列で構成される予め用意されたテンプレートに配置して、入力情報を送信したユーザAの対話装置2に送信する。ここで取得して送信する商品情報は、図5に示した商品情報管理表で管理されている「商品ID」が「G1003」であるレコードの商品情報のうちの全てであってもよく、予め決められた一部の情報であってもよい。ここでは、例えば、「商品名」、「メーカー」、および「価格」の属性値を含む商品情報を結果引渡部107が送信したとする。なお、結果引渡部107は、送信した商品情報に対応する商品識別子「G1003」を、現在、検索結果として送信中の商品情報に対応する商品識別子として、ユーザ識別子「U101」と対応付けて、図示しない格納部等に一時記憶する。
ユーザAの対話装置2の対話結果受付部206が、情報処理装置1から、テンプレートに配置された検索結果の商品情報を受信すると、対話音声出力部207が、このテンプレートに配置された検索結果の商品情報を、音声に変換して発音する。例えば、「H社の防塵マスク、800円が検出されました。購入なさいますか。」という音声を発音する。
これに対し、仮に、ユーザAが「購入する」という音声を、対話音声受付部201に入力したとすると、上記と同様に、対話音声受付部201は、この音声から音声認識等を行って、「購入する」という文字列を取得する。そして、対話判断部203は、対話モデル格納部202に格納された対話モデルを用いて、取得した文字列について、応答が取得できるか、または、対応する発話の目的や、発話内の変数等を取得可能であるか等を判断する。ここでは、「購入する」という文字列から、対話判断部203が、「商品購入」という目的を示す情報を取得できたとする。これにより、対話判断部203は、入力された音声が、予め決められた条件を満たすと判断する。
このため、対話引渡部204は、ユーザ識別子「U101」と対応付けて、「商品購入」という目的を示す情報を有する入力情報を、情報処理装置1に送信する。
情報処理装置1の入力情報受付部103が、対話装置2から、ユーザ識別子「U101」と対応付けられた「商品購入」という目的を示す情報を有する入力情報を受信すると、購入支援処理部104の購入手段1042は、この入力情報が購入指示情報であると判断し、入力情報が購入する商品を指定する情報を有していないため、直前に結果引渡部107が検索結果として対話装置2に送信した商品情報に対応する商品識別子が、図示しない格納部に格納されているか判断し、格納されている場合、入力情報がこの商品識別子が示す商品を購入する購入指示情報であると判断する。ここでは、上記のように、結果引渡部107が検索結果として送信した商品情報の商品識別子「G1003」を一時記憶しているため、購入手段1042は、上記で検索結果として送信した商品情報に対応する商品、すなわち「商品ID」が「G1003」である商品を購入する購入指示情報であると判断する。そして、購入手段1042は、上記と同様に、この商品を「ユーザID」が「U101」であるユーザが購入するための処理を行う。
なお、ユーザが、対話装置2が発音する商品情報が示す検索結果が一番であった商品以外の、検索条件に合致する商品の商品情報を検討したいと考えて、例えば、「他の商品はありませんか」という音声を対話装置2に対して発音したとすると、上記と同様に、対話音声受付部201は、この音声から音声認識等を行って、「ほかの商品はありませんか」という文字列を取得する。そして、対話判断部203は、対話モデル格納部202に格納された対話モデルを用いて、取得した文字列について、応答が取得できるか、または、対応する発話の目的や、発話内の変数等を取得可能であるか等を判断する。ここでは、「ほかの商品はありませんか」という文字列から、対話判断部203が、「次候補を出力」という目的を示す情報を取得できたとする。これにより、対話判断部203は、入力された音声が、予め決められた条件を満たすと判断する。
このため、対話引渡部204は、ユーザ識別子「U101」と対応付けて、「次候補を出力」という目的を示す情報を有する入力情報を、情報処理装置1に送信する。
情報処理装置1の入力情報受付部103が、対話装置2から、ユーザ識別子「U101」と対応付けられた「次候補を出力」という目的を示す情報を有する入力情報を受信すると、結果引渡部107は、直前に検索結果として対話装置2に送信した商品情報に対応する商品識別子「G1003」の次の検索順位(ここでは、2番目の検索順位)の商品識別子が、検索手段1041が検索により取得し蓄積した商品情報の中にあるか判断する。ここでは、次の検索順位の商品識別子があったとすると、この商品識別子に対応する商品情報を、上記と同様に、商品情報管理表から取得し、テンプレートに配置して、ユーザ識別子「U101」と対応付けて、ユーザAの対話装置2に送信する。
なお、情報処理装置1の結果引渡部107が、次の検索順位の商品識別子がないと判断した場合、ない旨の予め用意された文字列の情報を、対話装置2に送信し、対話装置2の対話音声出力部207は、この文字列を音声に変換して出力する。
ユーザAの対話装置2の対話結果受付部206が、検索順位が、上記で音声出力した商品識別子が「G1003」である商品の次の順位である商品の商品情報を、情報処理装置1から受信すると、対話音声出力部207は、この商品情報を、音声に変換して発音する。例えば、「R社の防塵マスク、850円が検出されました。購入なさいますか。」という音声を発音する。
ここで、ユーザが、「購入しません」という音声を、対話音声受付部201に入力したとすると、上記と同様に、対話音声受付部201は、この音声から音声認識等を行って、「購入しません」という文字列を取得する。そして、対話判断部203は、対話モデル格納部202に格納された対話モデルを用いて、取得した文字列について、応答が取得できるか、または、対応する発話の目的や、発話内の変数等を取得可能であるか等を判断する。ここでは、「購入しません」という文字列から、対話判断部203が、「購入処理終了」という目的を示す情報を取得できたとする。これにより、対話判断部203は、入力された音声が、予め決められた条件を満たすと判断する。
このため、対話引渡部204は、ユーザ識別子「U101」と対応付けて、「購入処理終了」という目的を示す情報を有する入力情報を、情報処理装置1に送信する。
情報処理装置1の入力情報受付部103が、対話装置2から、ユーザ識別子「U101」と対応付けられた「購入処理終了」という目的を示す情報を有する入力情報を受信すると、検索手段1041は、上記で検索により取得して格納部(図示せず)に蓄積した1以上の商品識別子を削除し、結果引渡部107は、対話装置2に送信した商品情報に対応する商品識別子であって、ユーザ識別子「U101」と対応付けて図示しない格納部に蓄積した商品識別子を削除する。
また、ユーザAが、例えば、起動した状態のユーザAの対話装置2に、内容の聞き取れない音声、例えば、「前に買った、どこか、かな」という音声を発話したとすると、上記と同様に、対話音声受付部201は、この音声から音声認識等を行って、「前に買った、どこか、かな」という文字列を取得する。そして、対話判断部203は、対話モデル格納部202に格納された対話モデルを用いて、取得した文字列について、応答が取得できるか、または、対応する発話の目的や、発話内の変数等を取得可能であるか等を判断する。ここでは、上記の文字列から、対応する応答の情報が取得できず、また、目的を示す情報も取得できなかったとする。これにより、対話判断部203は、入力された音声が、予め決められた条件を満たさないと判断する。そして、この入力された音声について、発話の目的や、対応する応答の情報が取得できないことから、対話応答取得部205は、対話モデルから、発話の目的や対話の応答の情報が取得できない場合のために用意された予め決められた応答の情報、例えば、「うまく聞き取れませんでした」等の文字列の情報、を取得する。そして、対話音声出力部207が、対話応答取得部205が取得した応答の情報を音声に変換して音声出力する。
また、ユーザAが、例えば、起動した状態のユーザAの対話装置2に、ユーザAには購入の権限がない商品を購入するための音声、例えば、「コンピュータを購入する」という音声を発話したとすると、上記と同様に、対話音声受付部201は、この音声から音声認識等を行って、「コンピュータを購入する」という文字列を取得する。そして、対話判断部203は、対話モデル格納部202に格納された対話モデルを用いて、取得した文字列について、応答が取得できるか、または、対応する発話の目的や、発話内の変数等を取得可能であるか等を判断する。ここでは、上記の文字列から、「商品購入」という目的を示す情報と、購入対象を示す変数である「コンピュータ」という情報を、対話モデルを利用して取得したとする。例えば、対話モデルが、取得した変数「コンピュータ」と、目的を示す情報「商品購入」という組み合わせが、予め決められた条件を満たさない組み合わせとして指定する情報を有していたとすると、対話判断部203は、対話モデルのこの情報を用いて、上記で入力された音声から取得した情報が、予め決められた条件を満たさない、と判断する。そして、対話応答取得部205は、上記の条件を満たさない発話の目的を示す情報と変数との組に対応付けられた応答の情報、例えば、「この商品は購入できません」等の文字列の情報、を対話モデルから取得する。そして、対話音声出力部207が、対話応答取得部205が取得した応答の情報を音声に変換して音声出力する。
以上、本実施の形態によれば、商品情報を用いて、音声に対応する入力情報に応じた処理を行うことにより、ユーザが音声により行った対話に応じて、商品に関する処理について適切な支援を行うことができる。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記各実施の形態において、一の装置に存在する2以上の通信手段(入力情報受付部や起動信号受付部など)は、物理的に一の媒体で実現されても良いことは言うまでもない。
また、上記各実施の形態では、主として、対話装置2が、ユーザが利用する端末装置である場合について説明したが、対話装置2が、情報処理装置1と接続されたサーバ装置でであってもよく、対話装置2と情報処理装置1とが同じサーバ装置で実現されてもよい。これらの場合には、例えば、対話音声受付部201や、対話音声出力部207は、通信回線を介して、ユーザが利用する端末装置から音声の入力を受け付けたり、音声を出力したりすることになる。
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。その実行時に、プログラム実行部は、格納部(例えば、ハードディスクやメモリ等の記録媒体)にアクセスしながらプログラムを実行してもよい。
なお、上記実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、商品に関する1以上の商品情報が格納される商品情報格納部にアクセス可能なコンピュータを、ユーザの音声を受け付ける対話音声受付部と、ユーザを識別するユーザ識別子に対応付けて、音声に対応する入力情報を情報処理装置に渡す対話引渡部と、入力情報を渡す処理に応じて、情報処理装置における入力情報に対応する処理結果を情報処理装置から受け付ける対話結果受付部と、処理結果に関する出力情報を音声出力する対話音声出力部とを具備し、ユーザと音声による対話を行う対話装置と、商品の購入を支援する情報処理装置とを具備する情報システムを構成する情報処理装置として機能させるプログラムであって、ユーザ識別子に対応付けられた入力情報を対話装置から受け付ける入力情報受付部と、入力情報受付部が受け付けた入力情報に応じた処理であり、商品情報を用いた処理を行い、処理結果を取得する購入支援処理部と、処理結果を対話装置に渡す結果引渡部として機能させ、入力情報は、商品の検索を指示する検索指示情報または、商品の購入を指示する購入指示情報を含み得、購入支援処理部は、入力情報が検索指示情報を含む場合は、検索指示情報に従った検索処理を行い、検索結果である処理結果を取得する検索手段と、入力情報が購入指示情報を含む場合は、購入指示情報に従った購入処理を行い、購入処理の結果である処理結果を取得する購入手段とを具備するプログラムである。
また、上記実施の形態における対話装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、ユーザとの対話のための対話モデルが格納される対話モデル格納部にアクセス可能なコンピュータを、ユーザの音声を受け付ける対話音声受付部と、音声が予め決められた条件を満たすか否かを判断する対話判断部と、対話判断部が予め決められた条件を満たすと判断した場合に、ユーザを識別するユーザ識別子に対応付けて、音声に対応する入力情報を情報処理装置に渡す対話引渡部と、対話判断部が予め決められた条件を満たさないと判断した場合に、音声に対応する応答を、対話モデルを用いて取得する対話応答取得部と、入力情報を渡す処理に応じて、情報処理装置における入力情報に対応する処理結果を情報処理装置から受け付ける対話結果受付部と、処理結果に関する出力情報または応答に関する出力情報を音声出力する対話音声出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図8は、上記プログラムを実行して、上記実施の形態による情報処理装置や対話装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図8において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図9は、コンピュータシステム900の内部構成を示す図である。図9において、コンピュータ901は、CD−ROMドライブ905に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置等の機能を実行させるプログラムは、CD−ROM921に記憶されて、CD−ROMドライブ905に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
以上のように、本発明にかかる情報処理装置等は、音声を利用する装置等として適しており、特に、商品に関する処理を行う装置等として有用である。
1 情報処理装置
2 対話装置
101 商品情報格納部
102 ユーザ情報格納部
103 入力情報受付部
104 購入支援処理部
105 起動信号受付部
106 初期処理部
107 結果引渡部
201 対話音声受付部
202 対話モデル格納部
203 対話判断部
204 対話引渡部
205 対話応答取得部
206 対話結果受付部
207 対話音声出力部
1000 情報処理システム
1041 検索手段
1042 購入手段
1061 環境情報取得手段
1062 環境初期処理手段

Claims (11)

  1. ユーザと音声による対話を行う対話装置と、商品の購入を支援する情報処理装置とを具備する情報システムを構成する情報処理装置であって、
    前記対話装置は、
    ユーザの音声を受け付ける対話音声受付部と、
    前記ユーザを識別するユーザ識別子に対応付けて、前記音声に対応する入力情報を前記情報処理装置に渡す対話引渡部と、
    前記入力情報を渡す処理に応じて、前記情報処理装置における前記入力情報に対応する処理結果を前記情報処理装置から受け付ける対話結果受付部と、
    前記処理結果に関する出力情報を音声出力する対話音声出力部とを具備し、
    前記情報処理装置は、
    商品に関する1以上の商品情報が格納される商品情報格納部と、
    前記ユーザ識別子に対応付けられた前記入力情報を前記対話装置から受け付ける入力情報受付部と、
    前記入力情報受付部が受け付けた入力情報に応じた処理であり、前記商品情報を用いた処理を行い、処理結果を取得する購入支援処理部と、
    前記処理結果を前記対話装置に渡す結果引渡部とを具備し、
    前記入力情報は、商品の検索を指示する検索指示情報または、商品の購入を指示する購入指示情報を含み得、
    前記購入支援処理部は、
    前記入力情報が検索指示情報を含む場合は、当該検索指示情報に従った検索処理を行い、検索結果である処理結果を取得する検索手段と、
    前記入力情報が購入指示情報を含む場合は、当該購入指示情報に従った購入処理を行い、購入処理の結果である処理結果を取得する購入手段とを具備する情報処理装置。
  2. 前記対話装置の前記対話引渡部は、
    ユーザ識別子に対応付けて、起動信号を前記情報処理装置に渡し、
    前記情報処理装置は、
    前記ユーザ識別子に対応付けられた前記起動信号を前記対話装置から受け付ける起動信号受付部と、
    前記起動信号の受け付けに応じて、予め決められた初期処理を行い、処理結果を取得する初期処理部とをさらに具備し、
    前記結果引渡部は、
    前記初期処理の前記処理結果を前記対話装置に渡す請求項1記載の情報処理装置。
  3. ユーザ識別子とユーザの商品の購入に関する1以上の購入情報とを有する1以上のユーザ情報が格納されるユーザ情報格納部をさらに備え、
    前記初期処理部は、
    前記起動信号に対応付けられた前記ユーザ識別子と対応付く1以上の購入情報を用いて、ユーザにレコメンドする商品に関する1以上のレコメンド情報である処理結果を取得する請求項2記載の情報処理装置。
  4. 前記初期処理部は、
    環境情報を取得する環境情報取得手段と、
    前記起動信号の受け付けに応じて、前記環境情報を用いて、予め決められた初期処理を行い、処理結果を取得する初期処理手段とを具備する請求項2または請求項3記載の情報処理装置。
  5. 前記環境情報は、翌日以降の近日の天候に関する情報である請求項4記載の情報処理装置。
  6. 商品に関する1以上の商品情報が格納される商品情報格納部と、
    ユーザ識別子とユーザの商品の購入に関する1以上の購入情報とを有する1以上のユーザ情報が格納されるユーザ情報格納部と、
    ユーザから受け付けた音声に対応する入力情報を、前記ユーザを識別するユーザ識別子に対応付けて渡す対話装置から、前記入力情報を受け付ける入力情報受付部と、
    前記入力情報受付部が受け付けた入力情報に応じた処理であり、前記商品情報を用いた処理を行い、処理結果を取得する購入支援処理部と、
    前記処理結果を前記対話装置に渡す結果引渡部とを具備し、
    前記入力情報は、商品の検索を指示する検索指示情報または、商品の購入を指示する購入指示情報を含み得、
    前記購入支援処理部は、
    前記入力情報が検索指示情報を含む場合は、当該検索指示情報に従った検索処理を行い、検索結果である処理結果を取得する検索手段と、
    前記入力情報が購入指示情報を含む場合は、当該購入指示情報に従った購入処理を行い、購入処理の結果である処理結果を取得する購入手段とを具備する情報処理装置。
  7. ユーザとの対話のための対話モデルが格納される対話モデル格納部と、
    ユーザの音声を受け付ける対話音声受付部と、
    前記音声が予め決められた条件を満たすか否かを判断する対話判断部と、
    前記対話判断部が前記予め決められた条件を満たすと判断した場合に、前記ユーザを識別するユーザ識別子に対応付けて、前記音声に対応する入力情報を前記情報処理装置に渡す対話引渡部と、
    前記対話判断部が前記予め決められた条件を満たさないと判断した場合に、前記音声に対応する応答を、前記対話モデルを用いて取得する対話応答取得部と、
    前記入力情報を渡す処理に応じて、前記情報処理装置における前記入力情報に対応する処理結果を前記情報処理装置から受け付ける対話結果受付部と、
    前記処理結果に関する出力情報または前記応答に関する出力情報を音声出力する対話音声出力部とを具備する対話装置。
  8. ユーザの音声を受け付ける対話音声受付部と、前記ユーザを識別するユーザ識別子に対応付けて、前記音声に対応する入力情報を情報処理装置に渡す対話引渡部と、前記入力情報を渡す処理に応じて、前記情報処理装置における前記入力情報に対応する処理結果を前記情報処理装置から受け付ける対話結果受付部と、前記処理結果に関する出力情報を音声出力する対話音声出力部とを具備し、ユーザと音声による対話を行う対話装置と、商品の購入を支援する前記情報処理装置とを具備する情報システムを構成する前記情報処理装置であって、商品に関する1以上の商品情報が格納される商品情報格納部と、入力情報受付部と、検索手段および購入手段を有する購入支援処理部と、結果引渡部とを備えた情報処理装置を用いて行われる情報処理方法であって、
    前記入力情報受付部が、前記ユーザ識別子に対応付けられた前記入力情報を前記対話装置から受け付ける入力情報受付ステップと、
    前記購入支援処理部が、前記入力情報受付ステップで受け付けた入力情報に応じた処理であり、前記商品情報を用いた処理を行い、処理結果を取得する購入支援処理ステップと、
    前記結果引渡部が、前記処理結果を前記対話装置に渡す結果引渡ステップとを具備し、
    前記入力情報は、商品の検索を指示する検索指示情報または、商品の購入を指示する購入指示情報を含み得、
    前記購入支援処理ステップは、
    前記検索手段が、前記入力情報が検索指示情報を含む場合は、当該検索指示情報に従った検索処理を行い、検索結果である処理結果を取得する検索ステップと、
    前記購入手段が、前記入力情報が購入指示情報を含む場合は、当該購入指示情報に従った購入処理を行い、購入処理の結果である処理結果を取得する購入ステップとを具備する情報処理方法。
  9. ユーザとの対話のための対話モデルが格納される対話モデル格納部と、対話音声受付部と、対話判断部と、対話引渡部と、対話応答取得部と、対話結果受付部と、対話音声出力部とを用いて行われる情報処理方法であって、
    前記対話音声受付部が、ユーザの音声を受け付ける対話音声受付ステップと、
    前記対話判断部が、前記音声が予め決められた条件を満たすか否かを判断する対話判断ステップと、
    前記対話引渡部が、前記対話判断ステップで前記予め決められた条件を満たすと判断した場合に、前記ユーザを識別するユーザ識別子に対応付けて、前記音声に対応する入力情報を前記情報処理装置に渡す対話引渡ステップと、
    前記対話応答取得部が、前記対話判断ステップで前記予め決められた条件を満たさないと判断した場合に、前記音声に対応する応答を、前記対話モデルを用いて取得する対話応答取得ステップと、
    前記対話結果受付部が、前記入力情報を渡す処理に応じて、前記情報処理装置における前記入力情報に対応する処理結果を前記情報処理装置から受け付ける対話結果受付ステップと、
    前記対話音声出力部が、前記処理結果に関する出力情報または前記応答に関する出力情報を音声出力する対話音声出力ステップとを具備する情報処理方法。
  10. 商品に関する1以上の商品情報が格納される商品情報格納部にアクセス可能なコンピュータを、
    ユーザの音声を受け付ける対話音声受付部と、前記ユーザを識別するユーザ識別子に対応付けて、前記音声に対応する入力情報を情報処理装置に渡す対話引渡部と、前記入力情報を渡す処理に応じて、前記情報処理装置における前記入力情報に対応する処理結果を前記情報処理装置から受け付ける対話結果受付部と、前記処理結果に関する出力情報を音声出力する対話音声出力部とを具備し、ユーザと音声による対話を行う対話装置と、商品の購入を支援する前記情報処理装置とを具備する情報システムを構成する前記情報処理装置として機能させるプログラムであって、
    前記ユーザ識別子に対応付けられた前記入力情報を前記対話装置から受け付ける入力情報受付部と、
    前記入力情報受付部が受け付けた入力情報に応じた処理であり、前記商品情報を用いた処理を行い、処理結果を取得する購入支援処理部と、
    前記処理結果を前記対話装置に渡す結果引渡部として機能させ、
    前記入力情報は、商品の検索を指示する検索指示情報または、商品の購入を指示する購入指示情報を含み得、
    前記購入支援処理部は、
    前記入力情報が検索指示情報を含む場合は、当該検索指示情報に従った検索処理を行い、検索結果である処理結果を取得する検索手段と、
    前記入力情報が購入指示情報を含む場合は、当該購入指示情報に従った購入処理を行い、購入処理の結果である処理結果を取得する購入手段とを具備するプログラム。
  11. ユーザとの対話のための対話モデルが格納される対話モデル格納部にアクセス可能なコンピュータを、
    ユーザの音声を受け付ける対話音声受付部と、
    前記音声が予め決められた条件を満たすか否かを判断する対話判断部と、
    前記対話判断部が前記予め決められた条件を満たすと判断した場合に、前記ユーザを識別するユーザ識別子に対応付けて、前記音声に対応する入力情報を前記情報処理装置に渡す対話引渡部と、
    前記対話判断部が前記予め決められた条件を満たさないと判断した場合に、前記音声に対応する応答を、前記対話モデルを用いて取得する対話応答取得部と、
    前記入力情報を渡す処理に応じて、前記情報処理装置における前記入力情報に対応する処理結果を前記情報処理装置から受け付ける対話結果受付部と、
    前記処理結果に関する出力情報または前記応答に関する出力情報を音声出力する対話音声出力部として機能させるためのプログラム。
JP2020096447A 2020-06-02 2020-06-02 情報処理装置、対話装置、情報処理方法、およびプログラム Pending JP2021189915A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020096447A JP2021189915A (ja) 2020-06-02 2020-06-02 情報処理装置、対話装置、情報処理方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020096447A JP2021189915A (ja) 2020-06-02 2020-06-02 情報処理装置、対話装置、情報処理方法、およびプログラム

Publications (1)

Publication Number Publication Date
JP2021189915A true JP2021189915A (ja) 2021-12-13

Family

ID=78848413

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020096447A Pending JP2021189915A (ja) 2020-06-02 2020-06-02 情報処理装置、対話装置、情報処理方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP2021189915A (ja)

Similar Documents

Publication Publication Date Title
US11769184B2 (en) Enhancing functionalities of virtual assistants and dialog systems via plugin marketplace
US20240211238A1 (en) Online marketplace of plugins for enhancing dialog systems
US11238870B2 (en) Interaction method, electronic device, and server
WO2018133723A1 (zh) 语音购物方法、装置和计算机可读存储介质
US11710481B2 (en) Electronic device and method for providing conversational service
KR20200013152A (ko) 이전에 대화를 수집한 결과를 기반으로 인공 지능 서비스를 제공하는 전자 장치 및 방법
US20170171121A1 (en) Device and method for providing user-customized content
KR102490426B1 (ko) 추천 어플리케이션을 실행하기 위한 전자 장치 및 그의 동작 방법
KR102545666B1 (ko) 페르소나에 기반하여 문장을 제공하는 방법 및 이를 지원하는 전자 장치
US20140040298A1 (en) Apparatus and method for starting up software
US9620111B1 (en) Generation and maintenance of language model
JP5448192B2 (ja) 検索システム、端末、サーバ、検索方法、プログラム
JP2021189915A (ja) 情報処理装置、対話装置、情報処理方法、およびプログラム
KR102519635B1 (ko) 음성 명령을 처리하기 위한 전자 문서 표시 방법 및 그 전자 장치
JP6863792B2 (ja) 端末装置、商品提案方法、およびプログラム
JP2002162989A (ja) 音響モデル配信システムおよび音響モデル配信方法
KR102443914B1 (ko) 사용자의 행동 추천 방법 및 장치
CN113593543B (zh) 智能音箱语音服务系统、方法、装置及设备
JP2017151931A (ja) 対話決定システム、対話決定方法、対話決定プログラム、及び端末装置
JP2023037797A (ja) 注文支援装置、注文支援方法、およびプログラム
KR20210066273A (ko) 공유 업무 처리 방법 및 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240220