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

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

Info

Publication number
JP6065768B2
JP6065768B2 JP2013138791A JP2013138791A JP6065768B2 JP 6065768 B2 JP6065768 B2 JP 6065768B2 JP 2013138791 A JP2013138791 A JP 2013138791A JP 2013138791 A JP2013138791 A JP 2013138791A JP 6065768 B2 JP6065768 B2 JP 6065768B2
Authority
JP
Japan
Prior art keywords
request
response
text
user
function
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.)
Expired - Fee Related
Application number
JP2013138791A
Other languages
English (en)
Other versions
JP2015011651A5 (ja
JP2015011651A (ja
Inventor
義樹 竹岡
義樹 竹岡
厚志 石原
厚志 石原
倉田 宜典
宜典 倉田
甫 瀬沼
甫 瀬沼
高田 昌幸
昌幸 高田
正一 土居
正一 土居
昌裕 森田
昌裕 森田
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2013138791A priority Critical patent/JP6065768B2/ja
Priority to US14/294,281 priority patent/US10121124B2/en
Priority to EP20140173836 priority patent/EP2821945A3/en
Publication of JP2015011651A publication Critical patent/JP2015011651A/ja
Publication of JP2015011651A5 publication Critical patent/JP2015011651A5/ja
Application granted granted Critical
Publication of JP6065768B2 publication Critical patent/JP6065768B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups
    • G06Q10/1095Meeting or appointment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Operations Research (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Description

本開示は、情報処理装置、情報処理方法およびプログラムに関する。
ユーザに代わって各種の手順を実行してくれるコンピュータエージェント(コンピュータ上で動作するエージェントソフトウェア。以下では単にエージェントともいう)については、既にいろいろな技術が提案されている。例えば、特許文献1には、会議開催にあたり、出席予定者のスケジュール上の空き時間を各ユーザのエージェントに問い合わせ、その結果に基づいて最適な開催時間を決定するエージェントが記載されている。
特開平9−91341号公報
しかしながら、例えば上記の特許文献1に記載された技術では、スケジュール上の空き時間に応じて自動的に開催時間が決定されるため、登録されたスケジュールからは得られない情報、例えばユーザが会議に出席するための移動時間や、全員が会議に出席することが困難な場合の出席予定者の優先順位などについては、考慮することが難しかった。
そこで、本開示では、エージェントがユーザからの情報を取り込むことによってより適切な手順を実行することを可能にする、新規かつ改良された情報処理装置、情報処理方法およびプログラムを提案する。
本開示によれば、リクエストを送信するリクエスト送信部と、上記リクエストに対応するレスポンスを受信するレスポンス受信部と、上記レスポンスを解析するレスポンス解析部と、上記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力するテキスト出力部と、上記レスポンスの解析結果、または上記ユーザによって入力されたテキストに基づいて上記リクエストを新たに生成するリクエスト生成部と、上記リクエストが新たに生成されるタイミングを、上記生成されたテキストが出力されるタイミングに基づいて制御するタイミング制御部とを含む情報処理装置が提供される。
また、本開示によれば、リクエストを送信することと、上記リクエストに対応するレスポンスを受信することと、上記レスポンスを解析することと、上記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力することと、上記レスポンスの解析結果、または上記ユーザによって入力されたテキストに基づいて上記リクエストを新たに生成することと、上記リクエストが新たに生成されるタイミングを、上記生成されたテキストが出力されるタイミングに基づいて制御することとを含む情報処理方法が提供される。
また、本開示によれば、リクエストを送信する機能と、上記リクエストに対応するレスポンスを受信する機能と、上記レスポンスを解析する機能と、上記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力する機能と、上記レスポンスの解析結果、または上記ユーザによって入力されたテキストに基づいて上記リクエストを新たに生成する機能と、上記リクエストが新たに生成されるタイミングを、上記生成されたテキストが出力されるタイミングに基づいて制御する機能とをコンピュータに実現させるためのプログラムが提供される。
以上説明したように本開示によれば、エージェントがユーザからの情報を取り込むことによってより適切な手順を実行することができる。
本開示の第1の実施形態に係る情報処理システムの概略的な構成を示す図である。 本開示の第1の実施形態に係るクライアント装置の概略的な構成を示すブロック図である。 本開示の第1の実施形態に係るサーバ装置の概略的な構成を示すブロック図である。 本開示の第1の実施形態に係るエージェントの概略的な機能構成を示すブロック図である。 本開示の第1の実施形態において最初にリクエストを送信する場合の処理の例を示すフローチャートである。 本開示の第1の実施形態において2回目以降にリクエストを送信する場合の処理の例を示すフローチャートである。 本開示の第1の実施形態の具体的な例について説明するための図である。 本開示の第2の実施形態において2回目以降にリクエストを送信する場合の処理の例を示すフローチャートである。 本開示の第2の実施形態の具体的な例について説明するための図である。 本開示の第2の実施形態の具体的な例について説明するための図である。 本開示の第2の実施形態の具体的な例について説明するための図である。 本開示の第2の実施形態の具体的な例について説明するための図である。 本開示の第2の実施形態の具体的な例について説明するための図である。
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.第1の実施形態
1−1.システム構成
1−2.機能構成
1−3.処理フロー
1−4.具体的な例
2.第2の実施形態
2−1.処理フロー
2−2.具体的な例
3.補足
(1.第1の実施形態)
(1−1.システム構成)
図1は、本開示の第1の実施形態に係る情報処理システムの概略的な構成を示す図である。図1を参照すると、システム10は、クライアント装置100と、サーバ装置200とを含む。単一のサーバ装置200、または複数のサーバ装置200の協働によって、サーバ20が構成される。サーバ20は、ネットワークを介してクライアント装置100と通信し、クライアント装置100にサービスを提供する。
クライアント装置100では、エージェント300が動作している。図示された例では、2つのクライアント装置100a,100bがあり、それぞれの装置でエージェント300a,300bが動作している。エージェント300a,300bは、それぞれのユーザ(USER_a,USER_b)と対話し、対話によって得られた情報に基づいて、ユーザ(USER_a,USER_b)に代わってさまざまな手順を実行する。
ここで、エージェント300に関する処理は、主にクライアント装置100で実行されてもよい。この場合、クライアント装置100a,100bのそれぞれがエージェント300に関する処理を実行する。クライアント装置100aでエージェント300aが生成したリクエストは、サーバ20を介してクライアント装置100bに伝送され、クライアント装置100bでエージェント300bがこれを処理する。エージェント300bがリクエストに対して生成したレスポンスは、再びサーバ20を介してクライアント装置100aに伝送される。
あるいは、エージェント300に関する処理は、クライアント装置100とサーバ20とに分散して、または主にサーバ20で実行されてもよい。この場合、クライアント装置100a,100bがユーザとの対話によって取得した情報はサーバ20に送信され、サーバ20がそれに基づいて処理を実行する。また、サーバ20が生成した情報がクライアント装置100a,100bに送信され、ユーザとの対話において出力される。従って、エージェント300aとエージェント300bとの間でのリクエストおよびレスポンスは、サーバ20において内部的に伝送される。
(クライアント装置の構成)
図2は、本開示の第1の実施形態に係るクライアント装置の概略的な構成を示すブロック図である。図2を参照すると、クライアント装置100は、プロセッサ102、メモリ104、ストレージ106、通信モジュール108、ディスプレイ110およびタッチセンサ112によって構成されるタッチパネル114、スピーカ116、マイクロフォン118、センサモジュール120、カメラモジュール122、および接続ポート124を含みうる。
プロセッサ102は、例えばCPU(Central Processing unit)、DSP(Digital Signal Processor)、またはASIC(Application Specific Integrated Circuit)などによって実現され、メモリ104に格納されたプログラムに従って動作することによって各種の機能を実現する。プロセッサ102は、クライアント装置100の各部を制御することによって、各種の入力を取得し、また各種の出力を提供する。なお、プロセッサ102によって実現される機能の詳細については後述する。
メモリ104は、例えばRAM(Random Access Memory)またはROM(Read Only Memory)として用いられる半導体メモリによって実現される。メモリ104には、例えばプロセッサ102が動作するためのプログラムが格納される。このプログラムは、例えばストレージ106から読み出されてメモリ104に一時的に展開されてもよく、メモリ104に持続的に格納されていてもよい。あるいは、プログラムは、通信モジュール108によって受信されて、メモリ104に一時的に展開されてもよい。メモリ104は、さらに、プロセッサ102の処理によって生成された各種のデータを、一時的または持続的に格納する。
ストレージ106は、例えばHDD(Hard Disk Drive)などの磁気ディスク、光ディスク、もしくは光磁気ディスクなどを利用した記憶装置、またはフラッシュメモリなどによって実現される。ストレージ106には、例えばプロセッサ102が動作するためのプログラムや、プロセッサ102の処理によって生成された各種のデータが持続的に格納される。ストレージ106は、リムーバブルメディアを含んで構成されてもよいし、クライアント装置100に内蔵されてもよい。
通信モジュール108は、プロセッサ102の制御に従って有線または無線のネットワーク通信を実行する各種の通信回路によって実現される。無線通信を実行する場合、通信モジュール108はアンテナを含んでもよい。通信モジュール108は、例えばインターネットやLAN(Local Area Network)、またはBluetooth(登録商標)などの通信規格に従ってネットワーク通信を実行する。通信モジュール108によって、クライアント装置100で生成された情報がサーバ20または他のクライアント装置100などに送信されるとともに、サーバ20または他のクライアント装置100から各種の情報が受信されうる。
ディスプレイ110は、例えばLCD(Liquid Crystal Display)または有機EL(Electro-Luminescence)ディスプレイなどによって実現される。ディスプレイ110は、プロセッサ102の制御に従って各種の情報を画像として表示する。図示された例では、入力手段としてディスプレイ110とタッチセンサ112とによって構成されるタッチパネル114が用いられるため、ディスプレイ110はタッチセンサ112によって操作可能なGUI(Graphical User Interface)画像を表示する。
タッチセンサ112は、例えばディスプレイ110に対応する位置に配設される静電容量方式などのセンサによって実現される。タッチセンサ112は、ディスプレイ110に表示されたGUI画像に対するユーザのタッチ操作を取得する。なお、他の実施形態では、タッチセンサ112とともに、またはこれに代えて、マウスやタッチパッドなどのポインティングデバイスや、ボタンなどの他の入力装置が採用されてもよい。
スピーカ116は、プロセッサ102の制御に従って各種の情報を音声として出力する。マイクロフォン118は、例えばユーザによる発話音声など、クライアント装置100の周辺で発生しているさまざまな種類の音声を取得し、音声データとしてプロセッサ102に提供する。
センサモジュール120は、例えば加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、気圧センサ、または音センサなどの各種のセンサと、センサに付属する処理回路とによって実現される。センサモジュール120は、例えばクライアント装置100の筐体に作用する加速度や筐体の向きなど、クライアント装置100自体の状態に関する情報を取得するのに加え、クライアント装置100の周辺の明るさや騒音など、クライアント装置100の周辺環境に関する情報を取得してもよい。また、センサモジュール120には、GPS(Global Positioning System)信号を受信してクライアント装置100の緯度、経度および高度を測定するGPSセンサが含まれてもよい。
カメラモジュール122は、例えばCCD(Charge Coupled Device)またはCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子と、撮像素子への被写体像の結像を制御するためのレンズなどの光学系と、撮像素子および光学系を駆動させる駆動回路とによって実現される。カメラモジュール122は、撮像素子が被写体像を撮像することによって生成された静止画または動画を、画像データとしてプロセッサ102に提供する。
接続ポート124は、クライアント装置100に外部装置を直接的に接続するためのポートであり、例えばUSB(Universal Serial Bus)ポート、IEEE1394ポート、またはHDMI(登録商標)(High-Definition Multimedia Interface)ポートなどによって実現される。接続ポート124に接続される外部装置は、例えば表示装置(外部ディスプレイなど)、入力装置(キーボードやマウスなど)、または記憶装置(外部HDDなど)でありうるが、これらの例には限られない。
以上で説明したような構成要素を含むクライアント装置100は、例えばスマートフォン、タブレット端末、または各種のPC(Personal Computer)などでありうる。また、クライアント装置100は、メディアプレーヤ、ゲーム機、またはテレビなどであってもよい。本実施形態において、クライアント装置100は、単独で、またはサーバ装置200との協働によって、本開示に係る情報処理装置の機能を実現しうる。
(サーバ装置の構成)
図3は、本開示の第1の実施形態に係るサーバ装置の概略的な構成を示すブロック図である。図3を参照すると、サーバ装置200は、プロセッサ202、メモリ204、ストレージ206、および通信モジュール208を含みうる。
なお、以下の説明では、サーバ装置200を、ネットワーク上でクライアント装置100にサービスを提供することを主な目的として設置され、それ自体が設定操作の場合などを除きユーザへの情報出力や操作入力の取得などを実施しない装置として説明するが、サーバ装置200はこのような装置には限られず、例えばクライアント装置100と同様の構成を有する装置であってもよい。つまり、例えば、ユーザが自宅に設置しているデスクトップPCがサーバ装置200として機能し、ユーザが携帯しているスマートフォンがクライアント装置100として機能するような例も可能である。
プロセッサ202は、例えばCPU、DSP、またはASICなどによって実現され、メモリ204に格納されたプログラムに従って動作することによって各種の機能を実現する。プロセッサ202は、通信モジュール208を介してクライアント装置100から送信された情報を取得し、この情報に基づいて各種の処理を実行する。プロセッサ202は、処理結果の情報を、通信モジュール208を介してクライアント装置100に送信する。ここで、サーバ装置200は、複数のクライアント装置100にサービスを提供することが可能でありうる。従って、プロセッサ202は、複数のクライアント装置100からそれぞれ送信された情報に基づいて処理を実行し、処理結果の情報を元の情報を送信したクライアント装置100とは別のクライアント装置100に送信してもよい。
メモリ204は、例えばRAMまたはROMとして用いられる半導体メモリによって実現される。メモリ204には、例えばプロセッサ202が動作するためのプログラムが格納される。このプログラムは、例えばストレージ206から読み出されてメモリ204に一時的に展開されてもよく、メモリ204に持続的に格納されていてもよい。あるいは、プログラムは、通信モジュール208によって受信されて、メモリ204に一時的に展開されてもよい。メモリ204は、さらに、プロセッサ202の処理によって生成された各種のデータを、一時的または持続的に格納する。
ストレージ206は、例えばHDDなどの磁気ディスク、光ディスク、もしくは光磁気ディスクなどを利用した記憶装置、またはフラッシュメモリなどによって実現される。ストレージ206には、例えばプロセッサ202が動作するためのプログラムや、プロセッサ202の処理によって生成された各種のデータが持続的に格納される。ストレージ206は、リムーバブルメディアを含んで構成されてもよいし、サーバ装置200に内蔵されてもよい。
通信モジュール208は、プロセッサ202の制御に従って有線または無線のネットワーク通信を実行する各種の通信回路によって実現される。無線通信を実行する場合、通信モジュール208はアンテナを含んでもよい。通信モジュール208は、例えばインターネットやLAN、またはBluetooth(登録商標)などの通信規格に従ってネットワーク通信を実行する。通信モジュール208によって、サーバ装置200で生成された情報がクライアント装置100または他のサーバ装置200に送信されるとともに、クライアント装置100または他のサーバ装置200から各種の情報が受信されうる。サーバ20が複数のサーバ装置200の協働によって構成される場合、それぞれのサーバ装置200のプロセッサ202が、通信モジュール208を介して処理に関する情報をやりとりする。
(1−2.機能構成)
図4は、本開示の第1の実施形態に係るエージェントの概略的な機能構成を示すブロック図である。図4を参照すると、本実施形態では、エージェント300の機能として、音声取得機能351、音声認識機能353、リクエスト生成機能355、リクエスト送信機能357、レスポンス受信機能359、レスポンス解析機能361、タイミング制御機能363、テキスト生成機能367、およびテキスト出力機能369の各機能が実現される。
これらの機能は、例えばすべてがクライアント装置100のプロセッサ102、またはサーバ装置200のプロセッサ202によって実現されてもよい。例えば、音声取得機能351がサーバ装置200のプロセッサ202によって実現される場合、プロセッサ202は、クライアント装置100のマイクロフォン118によって取得された音声データを、通信モジュール208によるクライアント装置100との間のネットワーク通信を介して取得する。また、例えば、テキスト出力機能369がサーバ装置200のプロセッサ202によって実現される場合、プロセッサ202は、生成された音声データを通信モジュール208によるネットワーク通信を介してクライアント装置100に提供し、クライアント装置100のスピーカ116から音声を出力させる。
また、上記の機能は、その一部がクライアント装置100のプロセッサ102によって実現され、残りがサーバ装置200のプロセッサ202によって実現されてもよい。この場合、プロセッサ102とプロセッサ202は、通信モジュール108,208の間のネットワーク通信を介して協働する。サーバ20が複数のサーバ装置200によって構成される場合、上記の機能のうちの少なくとも一部が、複数のサーバ装置200に分散して実現されうる。この場合、1つの機能が複数のサーバ装置200に分散して実現されてもよいし、1つのサーバ装置200が複数の機能を実現してもよい。
音声取得機能351は、クライアント装置100のマイクロフォン118を介して、ユーザの発話音声を表す音声データを取得する。音声認識機能353は、音声取得機能351によって取得された音声データに基づいて音声認識を実行し、音声データをテキスト(文字データ)に変換する。なお、音声認識については、既に知られている各種の技術を適宜利用することが可能であるため、ここでは詳細な説明を省略する。
リクエスト生成機能355は、音声認識機能353において認識されたテキスト(ユーザによって音声入力されたテキスト)に基づいてリクエストを生成する。リクエスト生成機能355は、例えばテキストに対して必要に応じて形態素解析や構文解析などの自然言語処理を実行し、テキストの意味内容を把握する。なお、自然言語処理についても、既に知られている各種の技術を適宜利用することが可能であるため、ここでは詳細な説明を省略する。なお、リクエスト生成機能355は、レスポンス解析機能361によるレスポンスの解析結果に基づいてリクエストを生成することも可能であるが、これについては後述する。
ここで、リクエスト生成機能355によって生成されるリクエストは、例えばシステム10内で規定された所定のプロトコルに従って生成されるコードでありうる。この場合、他のエージェント300は、送信されたリクエスト(受信される側ではレスポンスとして扱われる)を容易に解析することが可能である。あるいは、リクエスト生成機能355によって生成されるリクエストには、上記のコードに加えて、またはこれに代えて、ユーザによって音声入力されたテキストが含まれてもよい。この場合、例えば後述するテキスト生成機能367は、レスポンス(他のエージェント300によって送信されたリクエスト)に対応するテキストを容易に生成することが可能である。
なお、リクエスト生成機能355は、ユーザによって音声入力されたテキストの意味内容に応じて様々なリクエストを生成することが可能である。例えば、「明日の天気が知りたい」や、「今日の夜のテレビで何か見るものはある?」といった入力に対しては、サーバ20またはその他のサービスを提供するサーバに対して「明日の天気予報」や「今夜のおすすめ番組」などの情報のリクエストが生成されうる。以下の説明では、他のエージェント300との間でスケジュール調整を実行する機能について特に説明し、その他の機能については説明を省略するが、これらの機能も既に知られている技術を利用して実現することが可能であるため、エージェント300がスケジュール調整以外の機能をも実現しうることは当業者には自明である。
リクエスト送信機能357は、リクエスト生成機能355によって生成されたリクエストを送信する。リクエストの送信先は、他のエージェント300でありうる。上記のように、エージェント300の機能は、各ユーザが使用するクライアント装置100において実現される場合もあれば、サーバ20において実現される場合もある。従って、リクエスト送信機能357によるリクエストの送信は、クライアント装置100同士の間でのネットワーク通信を介した送信でもありうるし、サーバ20内での内部的な送信でもありうる。
レスポンス受信機能359は、リクエスト送信機能357によって送信されたリクエストに対応するレスポンスを受信する。なお、本明細書で説明されているエージェント300にとってのリクエストおよびレスポンスは相対的なものである。つまり、エージェント300aによって送信されるリクエストは、送信先(受信側)のエージェント300bではレスポンスとして扱われる。逆に、エージェント300bによって送信されるリクエストは、エージェント300aではレスポンスとして扱われる。それゆえ、あるエージェント300についてみれば、リクエストを送信する前にレスポンスが受信されることもありうる。
レスポンス解析機能361は、レスポンス受信機能359によって受信されたレスポンスを解析する。ここで、レスポンスは、他のエージェント300が送信したリクエストである。従って、リクエストについて説明したように、レスポンスは、例えばシステム10内で規定された所定のプロトコルに従って生成されたコードでもありうるし、送信側のエージェント300においてユーザによって音声入力されたテキストでもありうる。レスポンス解析機能361は、このようなレスポンスの内容に対応して、例えばプロトコルに従って単純にレスポンスを解析してもよく、自然言語処理を実行してレスポンスに含まれるテキストの意味内容を把握してもよい。
ここで、レスポンス解析機能361によるレスポンスの解析結果は、タイミング制御機能363を経てリクエスト生成機能355に提供されるとともに、テキスト生成機能367にも提供される。以下ではまず、テキスト生成機能367について説明する。
テキスト生成機能367は、レスポンス解析機能361におけるレスポンスの解析結果に基づいてテキストを生成する。生成されるテキストは、受信されたレスポンスの意味内容をユーザに通知するためのものであり、例えば会話文を構成しうる。ここで、レスポンスに、送信側のエージェント300においてユーザによって音声入力されたテキストが含まれる場合、テキスト生成機能367は、そのテキストをそのまま利用してもよい。さらに、テキスト生成機能367は、後述するようにリクエスト生成機能355によって自動的に新たなリクエストが生成された場合、生成されたリクエストに基づくテキストを生成してもよい。テキスト出力機能369は、テキスト生成機能367によって生成されたテキストを、クライアント装置100のスピーカ116を介して、ユーザに向けて音声出力する。
一方、タイミング制御機能363を経てリクエスト生成機能355に提供されたレスポンスの解析結果は、リクエスト生成機能355による新たなリクエストの生成に利用される。リクエスト生成機能355は、レスポンスの解析結果に基づいて、必要に応じてスケジュールDB365を参照して、新たなリクエストを生成する。スケジュールDB365は、クライアント装置100のストレージ106、またはサーバ装置200のストレージ206によって実現され、エージェント300のユーザのスケジュール情報を格納する。リクエスト生成機能355は、例えばレスポンスが他のユーザのスケジュール情報に基づいて生成されたスケジュール調整の依頼であるような場合、スケジュールDB365に格納されたユーザのスケジュール情報を参照して、このレスポンスに対する新たなリクエストを生成する。
ここで、タイミング制御機能363は、リクエスト生成機能355が新たなリクエストを生成するタイミングを、テキスト出力機能369によってテキストが音声出力されるタイミングに基づいて制御する。より具体的には、タイミング制御機能363は、テキスト出力機能369によってテキストが音声出力されてから、リクエスト生成機能355によってリクエストが新たに生成されるまでの間に待機時間を設定する。これによって、例えば、レスポンス解析機能361によるレスポンスの解析結果に基づいてリクエスト生成機能355がすぐに新たなリクエストを生成することが可能であったとしても、タイミング制御機能363によって、待機時間の間はリクエスト生成機能355が新たなリクエストを生成しないように制御される。
この待機時間は、音声出力されたテキストに対するユーザの返答を待ち受けるために設けられうる。従って、待機時間の間に、音声取得機能351によってユーザの発話音声の音声データが取得された場合、リクエスト生成機能355は、ユーザによって音声入力された新たなテキストに基づいて新たなリクエストを生成し、リクエスト送信機能357が生成されたリクエストを送信する。この場合、待機時間は途中で終了されてもよい。
一方、待機時間の終了までに音声取得機能351がユーザの発話音声の音声データを取得しなかった場合、つまり待機時間にユーザによってテキストが音声入力されなかった場合、リクエスト生成機能355は、レスポンス解析機能361によるレスポンスの解析結果に基づいて自動的に新たなリクエストを生成し、リクエスト送信機能357が生成されたリクエストを送信する。
つまり、本実施形態では、テキスト出力機能369によって、受信されたレスポンスの意味内容がユーザに向けて音声出力されるとともに、それからしばらくの間、タイミング制御機能363によって、リクエスト生成機能355によるリクエストの自動生成が抑制されることによって、受信されたレスポンスに対するユーザの発話による介入が可能になる。また、ユーザの介入がなかった場合には、レスポンスに対して自動的に新たなリクエストが生成されるため、ユーザが介入の必要を感じない場合や、介入する余裕がない場合などには、ユーザの手間をとらせることなくスケジュール調整を進めることが可能である。
(1−3.処理フロー)
(最初のリクエスト送信時の処理)
図5は、本開示の第1の実施形態において最初にリクエストを送信する場合の処理の例を示すフローチャートである。
この場合、まず、音声取得機能351がユーザの発話音声の音声データを取得する(ステップS101)。次に、音声認識機能353が、取得された音声データに対する音声認識を実行する(ステップS103)。さらに、リクエスト生成機能355が音声認識の結果として得られたテキストに基づいてリクエストを生成し(ステップS105)、リクエスト送信機能357が生成されたリクエストを送信する(ステップS107)。
以上のような処理は、例えば、エージェント300が、ユーザの発話を取得することによって、他のエージェント300とのやりとりを開始するときに実行される。
(2回目以降のリクエスト送信時の処理)
図6は、本開示の第1の実施形態において2回目以降にリクエストを送信する場合の処理の例を示すフローチャートである。なお、上記の図5に示す最初のリクエストを受信するエージェント300、つまりリクエストよりも先にレスポンスを受信するエージェント300での処理も同様である。
この場合、まず、レスポンス受信機能359が他のエージェント300からのレスポンスを受信する(ステップS121)。次に、レスポンス解析機能361がレスポンスを解析する(ステップS123)。さらに、レスポンスの解析結果に基づいてテキスト生成機能367がテキストを生成し(ステップS125)、テキスト出力機能369が生成されたテキストをユーザに向けて音声出力する(ステップS127)。ここで、タイミング制御機能363は、リクエスト生成機能355による新たなリクエストの生成を所定の時間だけ待機させる(ステップS129)。
ステップS129の待機の間、音声取得機能351は、ユーザの発話音声の音声データを待ち受けている(ステップS131)。ここで、発話音声の音声データが取得された場合(YES)、音声認識機能353が取得された音声データに対する音声認識を実行する(ステップS133)。この場合、リクエスト生成機能355は、音声認識によって得られたテキストに基づいて新たなリクエストを生成する(ステップS137)。
一方、ステップS131でユーザの発話音声の音声データを待ち受けた音声取得機能351が音声データを取得しなかった場合(NO)、リクエスト生成機能355は、レスポンスの解析結果に基づいて、必要に応じてスケジュールDB365を参照して(ステップS135)、自動的に新たなリクエストを生成する(ステップS137)。
ステップS137でリクエスト生成機能355によって生成されたリクエストは、リクエスト送信機能357によって送信される(ステップS139)。なお、例えば3人以上のユーザのエージェント300の間でスケジュール調整をしているような場合、ステップS139におけるリクエストの送信先は、必ずしもステップS121におけるレスポンスの送信元とは一致しない。
本実施形態では、以上のような処理が各エージェント300において繰り返し実行されることによって、ユーザ間でのスケジュール調整が実現される。その具体的な例について、続いて説明する。
(1−4.具体的な例)
図7は、本開示の第1の実施形態の具体的な例について説明するための図である。図示された例では、花子(HANAKO)のエージェント300aと太郎(TARO)のエージェント300bとの間で、スケジュール調整のためのやりとりが実行されている。
なお、上述の通り、本実施形態におけるリクエストおよびレスポンスは各エージェント300において定義される相対的なものであり、例えばエージェント300aにおいて定義されるリクエストは、エージェント300bではレスポンスになる。そこで、以下の例では、説明を簡単にするために、リクエストおよびレスポンスをメッセージとして総称する。
図示された例では、まず、花子の発話によってやりとりが開始される。彼女は、「12/24に太郎とデートがしたい」と発話する。この発話音声を取得したエージェント300aは、「太郎の予定を聞いてみます」という返答を音声出力した上で(上記の機能構成やフローチャートには示されていないが、ユーザの発話に対する音声での応答は、エージェントの一般的な機能として既に知られている)、花子からの誘いを伝えるメッセージを太郎のエージェント300bに送信する。ここで、実際に送信されるメッセージは、例えばシステム10内で規定されたプロトコルに従って生成されたコードでありうる。
太郎のエージェント300bは、上記のメッセージを受信すると、テキスト生成機能367によって「花子から12/24にデートのお誘いがあります」というテキスト(TEXT1)を生成し、これを太郎に向けて音声出力する。ここで、タイミング制御機能363によって、テキスト(TEXT1)の出力後、太郎のエージェント300bは、所定の時間だけ太郎の返答を待機する。
図示された例では、待機中に太郎の返答が取得されなかったため、エージェント300bは、スケジュールDB365に格納された太郎のスケジュール情報を参照し(花子には太郎のスケジュール情報へのアクセス権限が与えられているものとする)、指定された日(12/24)の中で適当な時間を返答するメッセージを生成する。図示された例では、12/24は18:00以降の太郎のスケジュールに空き時間があったため、18時以降であればOKである旨のメッセージが太郎のエージェント300bから花子のエージェント300aに送信される。
ここで、太郎のエージェント300bと同様に、花子のエージェント300aは、メッセージを受信すると、テキスト生成機能367によって「12/24は18:00以降OKです」というテキスト(TEXT2)を生成し、これを花子に向けて音声出力する。ここでも、タイミング制御機能363によって、テキスト(TEXT2)の出力後、花子のエージェント300aは、所定の時間だけ花子の返答を待機する。
待機中に花子の返答が取得されなかったため、エージェント300aは、スケジュールDB365に格納された花子のスケジュールを参照し、12/24の18:00以降の花子のスケジュールにも空き時間があることを確認する。さらに、エージェント300aは、スケジュール情報から花子が12/24の18:00以前に東京駅周辺にいることを特定したため、場所を提案するメッセージを自動的に生成し、太郎のエージェント300bに送信する。
これまでのやりとりと同様に、メッセージを受信した太郎のエージェント300bは、「12/24 18:00に東京駅ではどうですか?」というテキスト(TEXT3)を音声出力し、所定の時間だけ太郎の返答を待機する。ここで、待機中に太郎の返答が取得されないと、エージェント300bは再びスケジュールDB365に格納された太郎のスケジュール情報を参照し、太郎が12/24の18:00に東京駅に行けるかどうかを判定する。太郎は12/24の18:00まで横浜駅で別の予定があるため、18:00に東京駅に行くことは難しいと判定される。従って、太郎のエージェント300bが自動的にレスポンスを生成した場合、「12/24 18:00は難しいです」というテキスト(TEXT4)のようなメッセージが生成されることになる。
しかし、図示された例では、待機中に太郎が「18:30に品川駅はどうかな?」という返答をエージェント300bに対して発話している。この発話を取得したエージェント300bは、太郎の返答を伝えるメッセージを花子のエージェント300aに送信する。これを受けて、花子のエージェント300aは、「18:30に品川駅はどうですか?」というテキスト(TEXT5)を音声出力する。
これに対して、花子は異論がないため返答せず、またエージェント300aが花子のスケジュール情報を参照した結果、18:30に品川駅に行くことは可能であった。そこで、エージェント300aは、承諾する旨のメッセージを自動的に生成して、太郎のエージェント300bに送信する。これを受けて、太郎のエージェント300bは、「12/24 18:30 品川駅でOKです」というテキスト(TEXT6)を音声出力する。
これに対して太郎も異論がなく返答しなかったため、太郎のエージェント300bも、承諾する旨のメッセージを自動的に生成して、花子のエージェント300aに送信する。これを受けて、花子のエージェント300aは、「わかりました。では12/24 18:30に品川駅にしましょう」というテキスト(TEXT7)を音声出力する。
以上のようなエージェント300同士の間でのやりとりによって、太郎と花子とのスケジュールの調整が完了する。エージェント300a,300bは、それぞれ、12/24の18:30に品川駅でのデートの予定をスケジュール情報に登録するとともに、「12/24 18:30に太郎(花子)と品川駅でデートの約束をしました」というようなテキストを音声出力し、スケジュール調整の完了を花子と太郎に通知する。
上記の例のやりとりでは、最初に提案された条件(18:00に東京駅)でスケジュールの調整が成立しなかったときに、太郎がエージェント300同士のやりとりに介入し、新たな時間と場所を提案することによって円滑にスケジュール調整が実施された。このように、本実施形態によれば、エージェント300がスケジュール情報の参照などのユーザの手間を代行するとともに、ユーザの知見(例えば、東京駅と横浜駅との間に品川駅があり、品川駅の周辺に太郎と花子がデートする場所があること)をスケジュール調整に活用し、より適切なスケジュールを生成することができる。
(2.第2の実施形態)
続いて、本開示の第2の実施形態について説明する。本実施形態は、システム構成および機能構成については、以下で説明するタイミング制御機能363を除いて上記の第1の実施形態と同様であるため、詳細な説明は省略する。また、最初のリクエスト送信時の処理フローについても上記の第1の実施形態と同様であるため、詳細な説明は省略する。
(2−1.処理フロー)
(2回目以降のリクエスト送信時の処理)
図8は、本開示の第2の実施形態において2回目以降にリクエストを送信する場合の処理の例を示すフローチャートである。なお、以下で説明するフローチャートのステップは、ステップS201を除いては、上記で図6を参照して説明したフローチャートと同様であるため、これらについては詳細な説明を省略する。
図示された例では、テキスト出力機能369がテキストを音声出力した後、タイミング制御機能363が、レスポンスの解析結果に基づいて、スケジュール調整において競合が発生しているか否かを判定する(ステップS201)。ここで、スケジュール調整では、各エージェント300が、各ユーザのスケジュール情報に基づいてリクエストを生成している。従って、ステップS201で判定される競合は、エージェント300において送信されるリクエスト(ユーザのスケジュール情報に基づく)と、受信されるレスポンス(他のユーザのスケジュール情報に基づく)との間での競合といえる。
ステップS201において、競合が発生していない場合(NO)、タイミング制御機能363によって所定時間の待機(ステップS129)が実行されることなく、リクエスト生成機能355がスケジュールDB365を参照して(ステップS135)、自動的に新たなリクエストを生成する(ステップS137)。
一方、ステップS201において、競合が発生している場合(YES)、タイミング制御機能363がリクエスト生成機能355による新たなリクエストの生成を所定の時間だけ待機させ(ステップS129)、以下上記の図6の例と同様のステップが実行される。
なお、上記の例ではステップS201をステップS127の後に記載したが、ステップS201は、テキスト出力機能369によるテキストの出力を待たず、ステップS123以降の任意のタイミングで実行されてもよい。
このように、本実施形態では、エージェント300のタイミング制御機能363が、レスポンスの解析結果に基づいて、リクエスト生成機能355による新たなリクエスト生成までの間に待機時間を設定するか否かを決定する。例えば、上記のように、スケジュール調整において競合が発生している場合、ユーザが介入することによって最適な解決策が得られる可能性が高いため、待機時間を設定してユーザの返答を待ち受けることが合理的でありうる。それ以外の場合には、待機時間を設定しないことによって、エージェント300の間でのスケジュールの調整を迅速に進めることができる。また、待機時間を設定しない場合も、テキスト出力機能369によるテキストの出力を実行することで、ユーザの介入が必要になった場合に、ユーザが容易に状況を把握することができる。
上記のようなタイミング制御機能363の機能として、以下のような変形例も可能である。例えば、タイミング制御機能363は、レスポンスの解析結果に基づいて新たに生成されるリクエストが、レスポンスに対して否定的な内容である場合に待機時間を設定してもよい。これは、例えば、第1の実施形態で図7を参照して説明した例におけるTEXT4(実際は送信されなかったリクエストに対応する)のように、受信されたレスポンスによって提案されている時間や場所に対して否定的なリクエストを生成しなければならない場合である。この場合、タイミング制御機能363は、レスポンスの解析結果に基づいて新たに生成されるリクエストを予想して、待機時間を設定するか否かを決定しうる。
また、例えば、タイミング制御機能363は、受信されたレスポンスが以前に送信されたリクエストに対して否定的な内容である場合に、待機時間を設定してもよい。これは、例えば、同じく図7を参照して説明した例において、TEXT3に対応するリクエストが実際に送信されたような場合である。この場合、「12/24 18:00は難しいです」という、以前に送信したリクエスト(TEXT3に対応)に対して否定的な内容のレスポンス(TEXT4に対応)を受信したエージェント300aは、これに対する花子の返答を待ち受けるために、(それまでは設定されていなかった)待機時間を設定しうる。
(2−2.具体的な例)
図9〜14は、本開示の第2の実施形態の具体的な例について説明するための図である。図示された例では、花子(HANAKO)のエージェント300aとチームメンバーのエージェント300b〜300dとの間で、スケジュール調整のためのやりとりが実行されている。なお、この例でも、説明を簡単にするために、リクエストおよびレスポンスをメッセージとして総称している。
この例では、まず、図9に示されるように、花子の発話によってやりとりが開始される。彼女は、「チームのみんなと忘年会がしたい」と発話する。この発話音声を取得したエージェント300aは、各チームメンバーのエージェント300b〜300dに向けて、花子からの誘いを伝えるメッセージを送信する。ここで、実際に送信されるメッセージは、例えばシステム10内で規定されたプロトコルに従って生成されたコードでありうる。
各チームメンバーのエージェント300b〜300dは、リクエストを受信すると、テキスト生成機能367によって「花子から忘年会のお誘いが来ています」というテキスト(TEXT1)を生成して音声出力する。この時点では、まだスケジュール調整において競合は発生していないため、エージェント300b〜300dは、各チームメンバーの返答を待つことなく、すぐに次のメッセージの生成を実行する。
その結果、図10に示されるように、エージェント300bからは「12/20か12/28またOKです」という内容のメッセージ(TEXT2として各ユーザに向けて音声出力される)が、エージェント300a,300c,300dに送信される。また、エージェント300cは、エージェント300bから受信されたメッセージの受信後に、「12/28は難しいです。12/20ならOKです」という内容のメッセージ(TEXT3として各ユーザに向けて音声出力される)を、エージェント300a,300b,300dに送信する。
さらに、花子のエージェント300aは、上記のエージェント300b,300cからのメッセージの受信後に、花子自身のスケジュール情報を参照し、「12/20でOKです」という内容のメッセージ(TEXT4として各ユーザに向けて音声出力される)を、エージェント300b〜300dに送信する。上記のように、これらのメッセージは各チームメンバーの返答を待つことなく送信されているが、メッセージに対応するテキストが音声出力されていることによって、各チームメンバーはエージェント300間でのやりとりの状況を把握することができる。
続いて、図11に示されるように、エージェント300dからのメッセージが送信される。ここで、エージェント300dは、現時点でチームメンバーの都合が合いそうな12/20のスケジュール情報を参照したが、空きがなかったため、「12/20は難しいです。12/28ならOKです」という内容のメッセージ(TEXT5として各ユーザに向けて音声出力される)をエージェント300a〜300cに向けて送信する。
この時点で、エージェント300a〜300dの間でのスケジュール調整に競合が発生している。エージェント300dだけでなく、エージェント300a〜300cも、エージェント300dからのメッセージを受信したことによって競合の発生を認識する。ここで、各エージェント300のタイミング制御機能363によって各ユーザの返答を待機するための待機時間が設定される。
すると、図12に示されるように、チームメンバーの1人(太郎)が、「スケジュール調整をしました。12/28でOKです」という返答をエージェント300cに向けて発話した。これを受けて、エージェント300cは、「太郎が12/28でもOKになりました」という内容のメッセージ(TEXT6として各ユーザに向けて音声出力される)をエージェント300a,300b,300dに向けて送信する。これを受けて、エージェント300a,300b,300dから、それぞれ「12/28でOKです」という内容のメッセージ(TEXT7〜TEXT9として各ユーザに向けて音声出力される)が送信される。
以上のようなエージェント300同士の間でのやりとりによって、図13に示すように、チームメンバーの間でのスケジュールの調整が完了する。エージェント300a〜300dは、各ユーザのスケジュールに12/28の忘年会を追加するとともに、「12/28にチームの忘年会をスケジュールしました。」というようなテキストを音声出力し、スケジュール調整の完了を各ユーザに通知する。
(3.補足)
上記で説明した実施形態では、エージェント300が受信したレスポンスに対応するテキストがユーザに向けて音声出力されたが、テキストは例えば画像としてクライアント装置100のディスプレイ110に表示されることによって出力されてもよい。同様に、エージェント300が自動的に生成して送信するリクエストに対応するテキストも、画像としてディスプレイ110に表示されてもよい。この場合、ディスプレイ110には、各エージェント300の間でやりとりされるメッセージが、例えばチャットのログのように交互に表示される。
また、上記で説明した実施形態では、ユーザが音声入力によってエージェント300にテキストを入力するが、テキストは例えばキーボード(タッチパネル114を利用したいわゆるソフトウェアキーボードを含む)によって入力されてもよい。
本開示の実施形態は、例えば、上記で説明したような情報処理装置(クライアント装置またはサーバ装置)、システム、情報処理装置またはシステムで実行される情報処理方法、情報処理装置を機能させるためのプログラム、およびプログラムが記録された一時的でない有形の媒体を含みうる。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)リクエストを送信するリクエスト送信部と、
前記リクエストに対応するレスポンスを受信するレスポンス受信部と、
前記レスポンスを解析するレスポンス解析部と、
前記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力するテキスト出力部と、
前記レスポンスの解析結果、または前記ユーザによって入力されたテキストに基づいて前記リクエストを新たに生成するリクエスト生成部と、
前記リクエストが新たに生成されるタイミングを、前記生成されたテキストが出力されるタイミングに基づいて制御するタイミング制御部と
を備える情報処理装置。
(2)前記タイミング制御部は、前記生成されたテキストが出力されてから前記リクエストが新たに生成されるまでの間に待機時間を設定する、前記(1)に記載の情報処理装置。
(3)前記リクエスト生成部は、前記待機時間に前記ユーザによってテキストが入力された場合、該入力されたテキストに基づいて前記リクエストを新たに生成する、前記(2)に記載の情報処理装置。
(4)前記リクエスト生成部は、前記待機時間に前記ユーザによってテキストが入力されなかった場合、前記レスポンスの解析結果に基づいて前記リクエストを新たに生成する、前記(3)に記載の情報処理装置。
(5)前記タイミング制御部は、前記レスポンスの解析結果に基づいて前記待機時間を設定するか否かを決定する、前記(2)〜(4)のいずれか1項に記載の情報処理装置。
(6)前記タイミング制御部は、前記レスポンスの解析結果に基づいて新たに生成される前記リクエストが前記レスポンスに対して否定的な内容である場合に前記待機時間を設定する、前記(5)に記載の情報処理装置。
(7)前記タイミング制御部は、前記レスポンスが以前に送信された前記リクエストに対して否定的な内容である場合に前記待機時間を設定する、前記(5)に記載の情報処理装置。
(8)前記テキスト出力部は、さらに、前記リクエスト生成部が前記レスポンスの解析結果に基づいて生成した前記リクエストに基づいて生成されたテキストを前記ユーザに向けて出力する、前記(1)〜(7)のいずれか1項に記載の情報処理装置。
(9)前記テキスト出力部は、前記生成されたテキストを音声出力する、前記(1)〜(8)のいずれか1項に記載の情報処理装置。
(10)前記リクエスト生成部は、前記ユーザによって音声入力されたテキストを取得する、前記(1)〜(9)のいずれか1項に記載の情報処理装置。
(11)前記テキスト出力部は、前記生成されたテキストを画像として出力する、前記(1)〜(10)のいずれか1項に記載の情報処理装置。
(12)前記リクエスト生成部は、前記ユーザのスケジュール情報にさらに基づいて前記リクエストを生成し、
前記レスポンス受信部は、他のユーザのスケジュール情報に基づいて生成された前記レスポンスを受信する、前記(1)〜(11)のいずれか1項に記載の情報処理装置。
(13)前記タイミング制御部は、前記リクエストと前記レスポンスとの間に競合が発生した場合に、前記生成されたテキストが出力されてから前記リクエストが新たに生成されるまでの間に待機時間を設定する、前記(12)に記載の情報処理装置。
(14)リクエストを送信することと、
前記リクエストに対応するレスポンスを受信することと、
前記レスポンスを解析することと、
前記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力することと、
前記レスポンスの解析結果、または前記ユーザによって入力されたテキストに基づいて前記リクエストを新たに生成することと、
前記リクエストが新たに生成されるタイミングを、前記生成されたテキストが出力されるタイミングに基づいて制御することと
を含む情報処理方法。
(15)リクエストを送信する機能と、
前記リクエストに対応するレスポンスを受信する機能と、
前記レスポンスを解析する機能と、
前記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力する機能と、
前記レスポンスの解析結果、または前記ユーザによって入力されたテキストに基づいて前記リクエストを新たに生成する機能と、
前記リクエストが新たに生成されるタイミングを、前記生成されたテキストが出力されるタイミングに基づいて制御する機能と
をコンピュータに実現させるためのプログラム。
10 システム
20 サーバ
100 クライアント装置
102 プロセッサ
200 サーバ装置
202 プロセッサ
300 エージェント
351 音声取得機能
353 音声認識機能
355 リクエスト生成機能
357 リクエスト送信機能
359 レスポンス受信機能
361 レスポンス解析機能
363 タイミング制御機能
367 テキスト生成機能
369 テキスト出力機能

Claims (11)

  1. リクエストを送信するリクエスト送信部と、
    前記リクエストに対応するレスポンスを受信するレスポンス受信部と、
    前記レスポンスを解析するレスポンス解析部と、
    前記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力するテキスト出力部と、
    前記レスポンスの解析結果、または前記ユーザによって入力されたテキストに基づいて前記リクエストを新たに生成するリクエスト生成部と、
    前記生成されたテキストが出力されてから前記リクエストが新たに生成されるまでの間に、前記ユーザによってテキストが入力されることを待機する待機時間を設定するタイミング制御部と
    を備え
    前記テキスト出力部は、さらに、前記リクエスト生成部が前記レスポンスの解析結果に基づいて生成した前記リクエストに基づいて生成されたテキストを前記ユーザに向けて出力し、
    前記リクエスト生成部は、前記ユーザのスケジュール情報にさらに基づいて前記リクエストを生成し、
    前記レスポンス受信部は、他のユーザのスケジュール情報に基づいて生成された前記レスポンスを受信し、
    前記タイミング制御部は、前記レスポンスの解析結果に基づいて前記待機時間を設定するか否かを決定する、情報処理装置。
  2. 前記リクエスト生成部は、前記待機時間に前記ユーザによってテキストが入力された場合、該入力されたテキストに基づいて前記リクエストを新たに生成する、請求項に記載の情報処理装置。
  3. 前記リクエスト生成部は、前記待機時間に前記ユーザによってテキストが入力されなかった場合、前記レスポンスの解析結果に基づいて前記リクエストを新たに生成する、請求項に記載の情報処理装置。
  4. 前記タイミング制御部は、前記レスポンスの解析結果に基づいて新たに生成される前記リクエストが前記レスポンスに対して否定的な内容である場合に前記待機時間を設定する、請求項1〜3のいずれか1項に記載の情報処理装置。
  5. 前記タイミング制御部は、前記レスポンスが以前に送信された前記リクエストに対して否定的な内容である場合に前記待機時間を設定する、請求項1〜3のいずれか1項に記載の情報処理装置。
  6. 前記タイミング制御部は、前記リクエストと前記レスポンスとの間に競合が発生した場合に、前記待機時間を設定する、請求項1〜3のいずれか1項に記載の情報処理装置。
  7. 前記テキスト出力部は、前記生成されたテキストを音声出力する、請求項1〜のいずれか1項に記載の情報処理装置。
  8. 前記リクエスト生成部は、前記ユーザによって音声入力されたテキストを取得する、請求項1〜のいずれか1項に記載の情報処理装置。
  9. 前記テキスト出力部は、前記生成されたテキストを画像として出力する、請求項1〜のいずれか1項に記載の情報処理装置。
  10. プロセッサが、
    リクエストを送信することと、
    前記リクエストに対応するレスポンスを受信することと、
    前記レスポンスを解析することと、
    前記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力することと、
    前記レスポンスの解析結果、または前記ユーザによって入力されたテキストに基づいて前記リクエストを新たに生成することと、
    前記生成されたテキストが出力されてから前記リクエストが新たに生成されるまでの間に、前記ユーザによってテキストが入力されることを待機する待機時間を設定することと
    前記レスポンスの解析結果に基づいて生成された前記リクエストに基づいて生成されたテキストを前記ユーザに向けて出力することと、
    を含み、
    前記リクエストは、前記ユーザのスケジュール情報にさらに基づいて生成され、
    受信される前記レスポンスは、他のユーザのスケジュール情報に基づいて生成された前記レスポンスであり、
    前記待機時間は、前記レスポンスの解析結果に基づいて設定されるか否かが決定される、情報処理方法。
  11. リクエストを送信する機能と、
    前記リクエストに対応するレスポンスを受信する機能と、
    前記レスポンスを解析する機能と、
    前記レスポンスの解析結果に基づいて生成されたテキストをユーザに向けて出力する機能と、
    前記レスポンスの解析結果、または前記ユーザによって入力されたテキストに基づいて前記リクエストを新たに生成する機能と、
    前記生成されたテキストが出力されてから前記リクエストが新たに生成されるまでの間に、前記ユーザによってテキストが入力されることを待機する待機時間を設定する機能と
    をコンピュータに実現させるためのプログラムであって、
    前記出力する機能は、さらに、前記リクエストを新たに生成する機能が前記レスポンスの解析結果に基づいて生成した前記リクエストに基づいて生成されたテキストを前記ユーザに向けて出力し
    前記リクエストを新たに生成する機能は、前記ユーザのスケジュール情報にさらに基づいて前記リクエストを生成し、
    前記レスポンスを受信する機能は、他のユーザのスケジュール情報に基づいて生成された前記レスポンスを受信し、
    前記待機時間を設定する機能は、前記レスポンスの解析結果に基づいて前記待機時間を設定するか否かを決定する、プログラム。
JP2013138791A 2013-07-02 2013-07-02 情報処理装置、情報処理方法およびプログラム Expired - Fee Related JP6065768B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013138791A JP6065768B2 (ja) 2013-07-02 2013-07-02 情報処理装置、情報処理方法およびプログラム
US14/294,281 US10121124B2 (en) 2013-07-02 2014-06-03 Information processing device, information processing method and program
EP20140173836 EP2821945A3 (en) 2013-07-02 2014-06-25 Information processing device, information processing method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013138791A JP6065768B2 (ja) 2013-07-02 2013-07-02 情報処理装置、情報処理方法およびプログラム

Publications (3)

Publication Number Publication Date
JP2015011651A JP2015011651A (ja) 2015-01-19
JP2015011651A5 JP2015011651A5 (ja) 2016-02-12
JP6065768B2 true JP6065768B2 (ja) 2017-01-25

Family

ID=51133837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013138791A Expired - Fee Related JP6065768B2 (ja) 2013-07-02 2013-07-02 情報処理装置、情報処理方法およびプログラム

Country Status (3)

Country Link
US (1) US10121124B2 (ja)
EP (1) EP2821945A3 (ja)
JP (1) JP6065768B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6573535B2 (ja) * 2015-11-17 2019-09-11 エヌ・ティ・ティ・コムウェア株式会社 情報処理装置、情報処理方法、及びプログラム
JP7136091B2 (ja) 2017-04-27 2022-09-13 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
JP2019004413A (ja) * 2017-06-19 2019-01-10 株式会社サテライトオフィス ボットシステム、プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0991341A (ja) * 1995-09-21 1997-04-04 Hitachi Ltd 会議開催及びスケジュール管理支援装置
EP1337940B1 (en) * 2000-11-20 2004-04-28 BRITISH TELECOMMUNICATIONS public limited company Method of managing resources
JP2004259032A (ja) * 2003-02-26 2004-09-16 Ntt Docomo Inc スケジュール調整方法、通信装置及びスケジュール調整システム
US8140980B2 (en) * 2003-08-05 2012-03-20 Verizon Business Global Llc Method and system for providing conferencing services
US7113797B2 (en) * 2003-11-06 2006-09-26 International Business Machines Corporation System, method and program product for scheduling meetings
JP4379131B2 (ja) * 2004-01-27 2009-12-09 パナソニック電工株式会社 バーチャルコンパニオンシステム
US20070288546A1 (en) * 2005-01-15 2007-12-13 Outland Research, Llc Groupwise collaborative suggestion moderation system
US20070094065A1 (en) * 2005-10-24 2007-04-26 Chenghsiu Wu Activity planning method and system
US7613281B2 (en) * 2005-12-13 2009-11-03 Sap Ag Monitoring a response time for a user request
US8276081B2 (en) * 2006-09-02 2012-09-25 John Edward Boyd Computer-based methods for arranging meetings and systems for performing the same
JP2011519437A (ja) * 2008-02-22 2011-07-07 アルカテル−ルーセント ユーエスエー インコーポレーテッド カレンダイベントプロンプトシステムおよびカレンダイベント通知方法
US8150718B2 (en) * 2009-05-13 2012-04-03 Hugh Olliphant System and method for automatically scheduling appointments
AU2012101465B4 (en) * 2010-01-18 2013-05-23 Apple Inc. Intent deduction based on previous user interactions with a voice assistant
US9530118B2 (en) * 2012-04-16 2016-12-27 International Business Machines Corporation Messaging client-based reminders

Also Published As

Publication number Publication date
US10121124B2 (en) 2018-11-06
US20150012321A1 (en) 2015-01-08
EP2821945A3 (en) 2015-01-21
EP2821945A2 (en) 2015-01-07
JP2015011651A (ja) 2015-01-19

Similar Documents

Publication Publication Date Title
CN110730952B (zh) 处理网络上的音频通信的方法和***
US11056116B2 (en) Low latency nearby group translation
JP6289448B2 (ja) 即時翻訳システム
US20130332168A1 (en) Voice activated search and control for applications
JP6553736B2 (ja) 音声対応電子デバイスにおける選択的オフライン対応の音声アクションのためのデータのローカル維持
US20190196779A1 (en) Intelligent personal assistant interface system
WO2018107489A1 (zh) 一种聋哑人辅助方法、装置以及电子设备
US10403272B1 (en) Facilitating participation in a virtual meeting using an intelligent assistant
US20120059651A1 (en) Mobile communication device for transcribing a multi-party conversation
JP2015526933A (ja) モバイル・デバイスからの開始ディテールの送信
JP6065768B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP6973380B2 (ja) 情報処理装置、および情報処理方法
US11935530B2 (en) Multimodal responses
CN114930795A (zh) 用于减少音频反馈的方法和***
US9788349B2 (en) Multi-modality communication auto-activation
US11189275B2 (en) Natural language processing while sound sensor is muted
US20190066676A1 (en) Information processing apparatus
US20130079029A1 (en) Multi-modality communication network auto-activation
KR20230100744A (ko) 콘텐츠 캐스팅을 위한 시스템 및 방법
JP7349533B2 (ja) 情報処理システム、及び情報処理方法
JP7070402B2 (ja) 情報処理装置
JP6429295B2 (ja) 音声文字化支援システム、サーバ、音声文字化支援方法およびプログラム
EP3502868A1 (en) Intelligent personal assistant interface system
KR101608319B1 (ko) 질의응답 서비스를 제공하는 장치, 방법 및 그를 위한 단말기

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151222

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161129

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161212

R151 Written notification of patent or utility model registration

Ref document number: 6065768

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees