Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7598076B2 - Information processing device and program - Google Patents
[go: Go Back, main page]

JP7598076B2 - Information processing device and program - Google Patents

Information processing device and program Download PDF

Info

Publication number
JP7598076B2
JP7598076B2 JP2024012081A JP2024012081A JP7598076B2 JP 7598076 B2 JP7598076 B2 JP 7598076B2 JP 2024012081 A JP2024012081 A JP 2024012081A JP 2024012081 A JP2024012081 A JP 2024012081A JP 7598076 B2 JP7598076 B2 JP 7598076B2
Authority
JP
Japan
Prior art keywords
information
event
conversation sentence
date
unit
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.)
Active
Application number
JP2024012081A
Other languages
Japanese (ja)
Other versions
JP2024054168A (en
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.)
Mixi Inc
Original Assignee
Mixi Inc
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 Mixi Inc filed Critical Mixi Inc
Priority to JP2024012081A priority Critical patent/JP7598076B2/en
Publication of JP2024054168A publication Critical patent/JP2024054168A/en
Priority to JP2024201730A priority patent/JP7835994B2/en
Application granted granted Critical
Publication of JP7598076B2 publication Critical patent/JP7598076B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、情報処理装置、及びプログラムに関する。 The present invention relates to an information processing device and a program.

近年では、ユーザの予定を管理するツールが種々開発されている。こうしたツールのうちには、ユーザからの会話に含まれる所定のキーワードに基づいて予定を登録して管理する技術が知られている(例えば、非特許文献1等などを参照)。 In recent years, various tools have been developed to manage users' schedules. Among these tools, there is known a technology that registers and manages schedules based on specific keywords contained in the user's conversations (see, for example, Non-Patent Document 1, etc.).

「iPhoneユーザガイド」、[online]、アップルコンピュータ 、[令和元年12月16日検索]、インターネット<URL: https://support.apple.com/ ja-jp/guide/iphone/iph3d110f84/ios>"iPhone User Guide", [online], Apple Computer, [searched December 16, 2019], Internet <URL: https://support.apple.com/ ja-jp/guide/iphone/iph3d110f84/ios>

しかしながら、上記従来のツールでは、会話的な文でユーザとのやりとりをしていながら、将来の予定を管理するだけで、その予定に関わる会話文の提供を行うなどの活用ができておらず、ユーザごとの事情に合わせた情報提供が十分でない。 However, while the above conventional tools communicate with users using conversational sentences, they are only capable of managing future plans and are not capable of providing conversational sentences related to those plans, and do not provide sufficient information tailored to the circumstances of each user.

本発明は上記実情に鑑みて為されたもので、ユーザごとの事情に合わせた会話文の提供を可能とする情報処理装置、及びプログラムを提供することを、その目的の一つとする。 The present invention has been made in consideration of the above-mentioned situation, and one of its objectives is to provide an information processing device and program that can provide conversational text tailored to the circumstances of each user.

上記従来例の問題点を解決する本発明の一態様は、情報処理装置であって、日時情報に関連付けられた、ユーザのイベントを特定するイベント特定情報を取得する取得手段と、前記日時情報が表す日時より後の日時に発話する処理において、当該イベント特定情報に関連する関連会話文を生成する会話文生成手段と、を備えることとしたものである。 One aspect of the present invention that solves the problems of the above-mentioned conventional examples is an information processing device that includes an acquisition means for acquiring event-specific information that identifies a user's event associated with date and time information, and a conversation sentence generation means for generating a related conversation sentence related to the event-specific information in a process of speaking at a date and time after the date and time represented by the date and time information.

本発明によると、ユーザごとの事情に合わせた会話文の提供が可能となる。 This invention makes it possible to provide conversational text tailored to the circumstances of each user.

本発明の実施の形態に係る情報処理システムの構成例を表すブロック図であ る。FIG. 1 is a block diagram illustrating an example of the configuration of an information processing system according to an embodiment of the present invention. 本発明の実施の形態に係る端末装置の構成例を表すブロック図である。FIG. 2 is a block diagram illustrating a configuration example of a terminal device according to an embodiment of the present invention. 本発明の実施の形態に係るサーバの例を表す機能ブロック図である。FIG. 2 is a functional block diagram illustrating an example of a server according to an embodiment of the present invention. 本発明の実施の形態に係る情報処理システムで利用される会話文キューの例 を表す説明図である。FIG. 2 is an explanatory diagram illustrating an example of a conversation sentence queue used in the information processing system according to the embodiment of the present invention. 本発明の実施の形態に係る情報処理システムで利用されるアクションデータ ベースの内容例を表す説明図である。1 is an explanatory diagram illustrating an example of the contents of an action database used in an information processing system according to an embodiment of the present invention. FIG. 本発明の実施の形態に係る端末装置の例を表す機能ブロック図である。FIG. 2 is a functional block diagram illustrating an example of a terminal device according to an embodiment of the present invention. 本発明の実施の形態に係る情報処理システムで利用される設定情報の例を表 す説明図である。FIG. 2 is an explanatory diagram illustrating an example of setting information used in the information processing system according to the embodiment of the present invention. 本発明の実施の形態に係る情報処理システムの動作例を表す流れ図である。4 is a flowchart illustrating an example of the operation of the information processing system according to the embodiment of the present invention. 本発明の実施の形態に係る情報処理システムの動作例を表すもう一つの流れ 図である。6 is another flowchart illustrating an example of the operation of the information processing system according to the embodiment of the present invention. 本発明の実施の形態に係る情報処理システムの会話文の選択の処理の例を 表すフローチャート図である。FIG. 11 is a flowchart illustrating an example of a conversation sentence selection process of the information processing system according to the embodiment of the present invention.

本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る情報処理システム1は、図1に例示するように、情報処理装置としてのサーバ10と、当該サーバ10にネットワーク等の通信手段を介して通信可能に接続された端末装置20とを含んで構成される。 An embodiment of the present invention will be described with reference to the drawings. As shown in FIG. 1, an information processing system 1 according to an embodiment of the present invention includes a server 10 as an information processing device, and a terminal device 20 communicatively connected to the server 10 via a communication means such as a network.

ここでサーバ10は、図1に示したように、制御部11と、記憶部12と、通信部13とを含んで構成される。また、端末装置20は、ロボットであり、図2に例示するように、脚部21と、本体部22とを少なくとも含み、本体部22に、制御部31と、記憶部32と、センサ部33と、表示部34と、音声出力部35と、通信部36と、駆動部37とを収納している。また脚部21と本体部22とは、少なくとも1軸まわりに回転可能なアクチュエータを介して連結されており、脚部21に対して本体部22の向きを回動可能となっている。 As shown in FIG. 1, the server 10 includes a control unit 11, a memory unit 12, and a communication unit 13. The terminal device 20 is a robot, and includes at least a leg unit 21 and a main body unit 22, as shown in FIG. 2, in which the control unit 31, the memory unit 32, the sensor unit 33, the display unit 34, the audio output unit 35, the communication unit 36, and the drive unit 37 are housed. The leg unit 21 and the main body unit 22 are connected via an actuator that can rotate around at least one axis, and the orientation of the main body unit 22 can be rotated relative to the leg unit 21.

サーバ10の制御部11は、CPU等のプログラム制御デバイスであり、記憶部12に格納されたプログラムに従って動作する。本実施の形態では、この制御部11は、端末装置20からリクエスト情報を受け入れる。またこの制御部11は、当該受け入れたリクエスト情報に基づく処理を実行する。例えば制御部11は、当該処理の一つとして、端末装置20にて実行されるアクションを指示するアクション指示と、端末装置20にて発声される音声の内容を表す文字列情報とを含むアクション情報を、上記リクエスト情報の送信元である端末装置20へ送信する。 The control unit 11 of the server 10 is a program control device such as a CPU, and operates according to a program stored in the memory unit 12. In this embodiment, the control unit 11 accepts request information from the terminal device 20. The control unit 11 also executes processing based on the accepted request information. For example, as one of the processes, the control unit 11 transmits action information including an action instruction instructing an action to be executed by the terminal device 20 and character string information representing the content of the voice to be uttered by the terminal device 20 to the terminal device 20 that is the sender of the request information.

また、本実施の形態の一例では、この制御部11は、日時を表す日時情報に関連付けられた、ユーザの、「デート」などのイベントを表す情報(以下、イベント特定情報と呼ぶ)を取得し、当該日時情報が表す日時より後の日時に、端末装置20にて発声される音声を、端末装置20へ送出する処理を実行する過程で、上記取得したイベント特定情報に関連する関連会話文を生成する。この制御部11の詳しい処理の内容については、後に説明する。 In one example of this embodiment, the control unit 11 acquires information representing a user's event, such as a "date," associated with date and time information representing a date and time (hereinafter referred to as event-specific information), and generates a related conversation sentence related to the acquired event-specific information in the process of executing a process of sending to the terminal device 20 a voice uttered at the terminal device 20 at a date and time after the date and time represented by the date and time information. The detailed contents of the process of the control unit 11 will be described later.

記憶部12は、ディスクデバイスまたはメモリデバイスであり、制御部11によって実行されるプログラムを保持する。この記憶部12は、また、制御部11のワークメモリとしても動作する。本実施の形態の一例では、この記憶部12には、端末装置20への指示を生成するための情報が格納されていてもよい。例えば、この記憶部12には端末装置20にて発話させるための会話文の候補を蓄積した会話文キューを保持する。この会話文キューの内容については後に述べる。 The storage unit 12 is a disk device or memory device, and holds programs executed by the control unit 11. The storage unit 12 also operates as a work memory for the control unit 11. In one example of this embodiment, the storage unit 12 may store information for generating instructions for the terminal device 20. For example, the storage unit 12 holds a conversation sentence queue that accumulates conversation sentence candidates to be spoken by the terminal device 20. The contents of this conversation sentence queue will be described later.

通信部13は、ネットワークインタフェース等であり、制御部11から入力される指示に従い、ネットワークを介して端末装置20宛に種々の情報を送出する。またこの通信部13は、ネットワークを介して受信した情報を、制御部11に出力する。 The communication unit 13 is a network interface or the like, and sends various information to the terminal device 20 via the network according to instructions input from the control unit 11. The communication unit 13 also outputs information received via the network to the control unit 11.

端末装置20の制御部31は、CPU等のプログラム制御デバイスであり、記憶部32に格納されたプログラムに従って動作する。本実施の形態では、この制御部31は、所定のタイミングで、サーバ10に対して後に説明する、端末装置20に固有な機器識別情報とともにリクエスト情報を送出する。 The control unit 31 of the terminal device 20 is a program-controlled device such as a CPU, and operates according to a program stored in the storage unit 32. In this embodiment, the control unit 31 sends request information to the server 10 at a predetermined timing together with device identification information unique to the terminal device 20, which will be described later.

本実施の形態の一例では、端末装置20の制御部31は、後に説明するセンサ部33がユーザの音声の入力を受け入れると、当該入力された音声を文字列情報に変換する。この処理は、広く知られた音声認識の処理を用いることができ、制御部31は例えば音声認識処理を実行する音声認識サーバに入力された音声の情報を送出し、認識した文字列情報を受信することでこの処理を実行してもよい。 In one example of this embodiment, when a sensor unit 33, which will be described later, receives voice input from a user, the control unit 31 of the terminal device 20 converts the input voice into character string information. This process can use widely known voice recognition processing, and the control unit 31 may execute this process, for example, by sending information on the input voice to a voice recognition server that executes the voice recognition process and receiving the recognized character string information.

また制御部31は、ユーザにより音声が入力されたことを契機(トリガ)として、サーバ10に対してリクエスト情報を送出する。このリクエスト情報には、トリガを特定する情報(例えばユーザにより音声が入力された旨の情報)と、サーバ10での処理に必要な情報、例えば、ここではユーザが入力した音声の認識結果である文字列情報とを含む。 The control unit 31 also sends request information to the server 10 when the user inputs voice as a trigger. This request information includes information that identifies the trigger (e.g., information that the user has input voice) and information necessary for processing by the server 10, for example, character string information that is the recognition result of the voice input by the user.

すなわち制御部31は、予め定められたトリガが発生したと判断すると、サーバ10での処理に必要な情報を収集して、当該トリガを特定する情報とともに、当該収集した情報を含むリクエスト情報をサーバ10へ送出することとなる。このトリガは、先の例のように、ユーザにより音声が入力されたことのほか、所定の時刻になった、など、任意に定め得る。この制御部31の詳しい動作の内容についても後に説明する。 In other words, when the control unit 31 determines that a predetermined trigger has occurred, it collects information necessary for processing in the server 10 and sends request information including the collected information to the server 10 together with information identifying the trigger. This trigger can be any trigger, such as the user inputting voice as in the previous example, or the arrival of a specified time. The detailed operation of the control unit 31 will be described later.

記憶部32は、メモリデバイス等であり、制御部31によって実行されるプログラムを保持する。この記憶部32は、また、制御部31のワークメモリとしても動作する。 The storage unit 32 is a memory device or the like, and stores the programs executed by the control unit 31. The storage unit 32 also operates as a work memory for the control unit 31.

本実施の形態では、この記憶部32には、上記トリガと、サーバ10に送出するべき情報を特定する情報等とを関連付けた設定情報が格納されていてもよい。この設定情報については後に具体的な例を挙げて説明する。またこの記憶部32には、端末装置20に固有に設定された機器識別情報が格納されている。 In this embodiment, the storage unit 32 may store setting information that associates the trigger with information that specifies the information to be sent to the server 10. This setting information will be described later with a specific example. The storage unit 32 also stores device identification information that is uniquely set for the terminal device 20.

さらに、本実施の形態のある例では、この記憶部32は、表示部34に表示するべきアニメーションの画像データを格納している。具体的に記憶部32は、笑顔の目の画像データ、涙の流れるアニメーションの目の画像データ…など目のアニメーションの画像データや、笑った状態で閉じた口の画像データ、泣いている状態での閉じた口の画像データ、発声中の口のアニメーションの画像データ…など、口のアニメーションの画像データ…といったように、キャラクタの表情を表す各部の複数の画像データを格納していてもよい。 Furthermore, in one example of this embodiment, the memory unit 32 stores image data of an animation to be displayed on the display unit 34. Specifically, the memory unit 32 may store multiple image data of parts that represent the facial expressions of a character, such as image data of eye animation, such as image data of smiling eyes, image data of animated eyes with tears flowing, etc., and image data of animated mouths, such as image data of a closed mouth in a smiling state, image data of a closed mouth in a crying state, image data of an animated mouth during speech, etc.

センサ部33は、少なくとも音声センサであるマイクを含む。またこのセンサ部33は、タッチセンサや、加速度センサ等を含んでもよい。このセンサ部33は、各センサで検出した音声信号や、ユーザが触れた位置を表す情報、加速度の情報等を、制御部31に出力する。 The sensor unit 33 includes at least a microphone, which is an audio sensor. The sensor unit 33 may also include a touch sensor, an acceleration sensor, etc. The sensor unit 33 outputs audio signals detected by each sensor, information indicating the position touched by the user, acceleration information, etc. to the control unit 31.

表示部34は、液晶ディスプレイ等であり、制御部31から入力される指示に従って画像データを表示する。本実施の形態の一例では、表示部34は、目や口の画像データを用いて、キャラクタの表情を表示する。音声出力部35は、スピーカー等であり、制御部31から入力される音声信号に従って音声を鳴動する。 The display unit 34 is a liquid crystal display or the like, and displays image data according to instructions input from the control unit 31. In one example of this embodiment, the display unit 34 displays the character's facial expression using image data of the eyes and mouth. The audio output unit 35 is a speaker or the like, and produces sound according to an audio signal input from the control unit 31.

通信部36は、ネットワークインタフェースを含む。この通信部36は、無線または有線にてネットワークを介してサーバ10との間で情報を送受する。具体的に通信部36は、制御部31から入力される指示に従って、サーバ10に対してリクエスト情報等を送出する。また、この通信部36は、サーバ10から受信した情報を制御部31に出力する。 The communication unit 36 includes a network interface. This communication unit 36 transmits and receives information to and from the server 10 via the network, either wirelessly or via a wired connection. Specifically, the communication unit 36 sends request information and the like to the server 10 in accordance with instructions input from the control unit 31. In addition, this communication unit 36 outputs information received from the server 10 to the control unit 31.

駆動部37は、制御部31から入力される指示に従い、脚部21に対して本体部22を回転するようアクチュエータを駆動する。 The drive unit 37 drives the actuator to rotate the main body unit 22 relative to the legs 21 according to instructions input from the control unit 31.

次に、本実施の形態のサーバ10の制御部11の動作について説明する。本実施の形態では、このサーバ10の制御部11は、図3に例示するように、受信部41と、イベント管理部42と、イベント情報取得部43と、会話文生成部44と、会話履歴管理部45と、アクション情報生成部46と、指示送信部47とを含んで構成される。 Next, the operation of the control unit 11 of the server 10 in this embodiment will be described. In this embodiment, the control unit 11 of the server 10 includes a receiving unit 41, an event management unit 42, an event information acquisition unit 43, a conversation sentence generation unit 44, a conversation history management unit 45, an action information generation unit 46, and an instruction transmission unit 47, as illustrated in FIG. 3.

受信部41は、端末装置20からリクエスト情報と、機器識別情報とを受信する。このリクエスト情報には、端末装置20で実行するべきアクションの要求の原因(トリガ)を特定する情報を含む。トリガの種類については後述するが、例えばユーザによる音声の入力等がその一例となる。ユーザによる音声入力があったとのトリガに基づく上記リクエスト情報には、当該トリガを特定する情報とともに、ユーザにより入力された音声の内容を表す情報が含まれてもよい。ここでユーザにより入力された音声の内容を表す情報は、音声を認識した結果である文字列情報でよい。 The receiving unit 41 receives request information and device identification information from the terminal device 20. This request information includes information identifying the cause (trigger) of the request for an action to be executed by the terminal device 20. Types of triggers will be described later, and an example would be voice input by the user. The request information based on the trigger that there has been voice input by the user may include information identifying the trigger as well as information representing the content of the voice input by the user. Here, the information representing the content of the voice input by the user may be character string information that is the result of voice recognition.

受信部41は、ここで受け入れたリクエスト情報に含まれる、トリガを特定する情報や、ユーザにより入力された音声の内容を表す文字列情報等を、イベント情報取得部43と、アクション情報生成部46とに出力する。 The receiving unit 41 outputs the information included in the received request information, such as information identifying the trigger and character string information representing the content of the voice input by the user, to the event information acquiring unit 43 and the action information generating unit 46.

イベント管理部42は、ユーザごとのイベント情報を記憶部12に格納して管理する。ここでイベント情報は、ユーザの予定であり、日時情報と、イベントを特定するイベント特定情報とを関連付けたものである。 The event management unit 42 stores and manages event information for each user in the storage unit 12. Here, event information is a user's schedule, and associates date and time information with event specification information that specifies the event.

イベント情報取得部43は、ユーザにより入力された音声の内容を表す文字列情報の入力を、受信部41から受け入れる。そしてイベント情報取得部43は、当該受け入れた文字列情報がイベントに関わる情報であるか否かを判断する。具体的に本実施の形態のイベント情報取得部43は、当該文字列情報と、予め定められたイベントに関わる情報のパターンとを比較する。 The event information acquisition unit 43 receives input of character string information representing the content of the voice input by the user from the receiving unit 41. The event information acquisition unit 43 then determines whether the received character string information is information related to an event. Specifically, in this embodiment, the event information acquisition unit 43 compares the character string information with a predetermined pattern of information related to an event.

ここでパターンは、「明日」や「明後日」、「来週」など予め定めた日時を表す語(日時関連語)に合致する部分と、「デート」や「仕事」、「美容院」など、イベントに関連する語(イベント関連語)に合致する部分とを含む。このパターンは例えば正規表現の文字列で表すことができ、例えば、「[明日|明後日|週末|来週][D+日][W+曜]
[日][は|に]W+[が][ある|なん]*」などと設定される。
Here, the pattern includes a portion that matches words expressing a predetermined date and time (date and time related words) such as "tomorrow,""the day after tomorrow," and "next week," and a portion that matches words related to an event (event related words) such as "date,""work," and "beauty salon." This pattern can be expressed, for example, as a regular expression string, and for example, "[tomorrow | the day after tomorrow | weekend | next week] [D+day] [W+day]
It is set as "[日][は|に]W+[が][あ][ある|なん]*".

ここで上記の例では、「*」は、空白を含む任意の文字に合致する正規表現であり、「+」は、一文字以上の直前の文字で指定された種類の文字に合致する正規表現であり、[X|Y|…]は、X,Y…のいずれかに合致する正規表現であるものとする。また[Z]は、存在してもしなくてもよいパターンを意味し、「D」は数字に、「W」は文字にそれぞれ合致するものとする。従って上記の文字列は、「明日、デートがあるんだ」や、「来週の月曜日は試験だよ」などの文字列情報に合致する。そして、上記パターンにおいて、「[明日|明後日|週末|来週][D+日][W+曜][日]」の部分が日時関連語に、「W+[が][ある|なん]」のうち、先頭の「W+」の(任意の文字に合致する)部分がイベント関連語にそれぞれ相当する。 In the above example, "*" is a regular expression that matches any character including spaces, "+" is a regular expression that matches one or more characters of a type specified by the preceding character, and [X|Y|...] is a regular expression that matches either X, Y.... [Z] means a pattern that may or may not exist, "D" matches a number, and "W" matches a letter. Therefore, the above string matches string information such as "I have a date tomorrow" or "I have an exam next Monday." In the above pattern, the part "[tomorrow|the day after tomorrow|weekend|next week][D+day][W+day][day]" corresponds to a date-time related word, and the part of "W+[ga][aru|nan]" at the beginning of "W+" (matching any character) corresponds to an event-related word.

またこのパターンは一つに限られず、複数あってもよい。例えば上記パターンのほか、「W+[が][ある|なん]*[明日|明後日|週末|来週][D+日][W+曜][日]」などといったパターンを設定しておくこととしてもよい。この例は「ライブがあるんだよね、明日」のように、先に例示したパターンには合致しない例に合致するものであり、イベント情報取得部43はユーザにより入力された音声の内容を表す文字列情報が上記の例のような、イベントに関わる情報のパターン(複数ある場合はそのいずれか)に合致する場合に、受け入れた文字列情報がイベントに関わる情報であると判断する。 The number of patterns is not limited to one, and may be multiple. For example, in addition to the above patterns, a pattern such as "W+[ga][aru|nan]*[tomorrow|the day after tomorrow|weekend|next week][D+day][W+day][day]" may be set. This example matches an example that does not match the patterns exemplified above, such as "There's a live show tomorrow," and the event information acquisition unit 43 determines that the accepted character string information is event-related information when the character string information representing the content of the voice input by the user matches a pattern of event-related information such as the above example (or any of the patterns if there are multiple patterns).

すなわちイベント情報取得部43は、ユーザにより入力された音声の内容を表す文字列情報が上記の例のような、イベントに関わる情報のパターンに合致し、イベントに関わる情報であると判断した場合は、当該文字列情報から日時情報と、イベントを特定するイベント特定情報とを取り出す。具体的に、文字列情報が「明日、デートがあるんだ」である場合は、イベント情報取得部43は、処理を実行している日時の次の日の日時情報を得る。 In other words, if the character string information representing the content of the voice input by the user matches the pattern of event-related information such as the above example and determines that the information is event-related, the event information acquisition unit 43 extracts date and time information and event specific information that identifies the event from the character string information. Specifically, if the character string information is "I have a date tomorrow," the event information acquisition unit 43 obtains date and time information for the day following the date and time when the process is being executed.

ここで日時情報は、上記パターンにより見出された日時関連語に基づいて推定される、イベントが発生する日時を表す情報である。日時関連語等から日時情報を推定する処理については、広く知られた技術を採用できるので、ここでの詳しい説明は省略する。 The date and time information here is information indicating the date and time at which an event will occur, estimated based on the date and time related words found by the above pattern. Widely known technology can be used for the process of estimating date and time information from date and time related words, etc., so a detailed explanation will be omitted here.

例えば処理が12月15日に行われている場合、イベント情報取得部43は、その日から見て「明日」である12月16日という日時情報を取得する。また、イベントを特定するイベント特定情報として、イベント情報取得部43は、上記文字列情報から「デート」を抽出する。このイベント特定情報の抽出の方法も、広く知られている方法を採用できる。 For example, if the processing is performed on December 15th, the event information acquisition unit 43 acquires date and time information of December 16th, which is "tomorrow" from that date. In addition, as event specific information that identifies the event, the event information acquisition unit 43 extracts "date" from the character string information. A widely known method can be used to extract this event specific information.

イベント情報取得部43は、ここで取り出した、日時情報と、イベントを特定するイベント特定情報とを会話文生成部44に出力する。またイベント情報取得部43は、ユーザにより入力された音声の内容を表す文字列情報が、イベントに関わる情報のパターン(複数ある場合はそのいずれにも)に合致しない場合は、処理を中断する。 The event information acquisition unit 43 outputs the date and time information and event specification information that specifies the event that are extracted here to the conversation sentence generation unit 44. Furthermore, the event information acquisition unit 43 interrupts the process if the character string information that represents the content of the voice input by the user does not match the pattern of information related to the event (if there are multiple patterns, none of them).

会話文生成部44は、イベント情報取得部43が出力する日時情報と、イベント特定情報とを受けて、会話文を生成する。具体的にこの会話文生成部44は、イベント情報取得部43が出力する日時より後の日時(発話期間)を定める。 The conversation sentence generation unit 44 generates a conversation sentence upon receiving the date and time information and the event specific information output by the event information acquisition unit 43. Specifically, the conversation sentence generation unit 44 determines a date and time (utterance period) that is later than the date and time output by the event information acquisition unit 43.

この発話期間の決定は、例えば次のようにして行う。本実施の形態のある例では、サーバ10は、日数候補情報として、予め、「1日」、「2日」、「1週間」など予め定めた日数候補と、日数候補ごとに定めた発話期間の初日から末日までの日数(発話期間長)と、イベントの発生日を特定する語(日時指示語と呼ぶ)とを互いに関連付けた日数データテーブルを、記憶部12に格納しているものとする。 The speech period is determined, for example, as follows. In one example of this embodiment, the server 10 stores in the storage unit 12, as the candidate day information, a number of days data table that associates predetermined candidate days such as "1 day," "2 days," and "1 week," the number of days from the first day to the last day of the speech period (speech period length) determined for each candidate day, and a word that specifies the date on which the event occurred (called a date and time indicator word).

会話文生成部44は、イベント情報取得部43が出力する日時に対して、上記日数データテーブルに含まれる日数候補のうち一つをランダムに選択して加算して、発話期間の初日を定める。また、会話文生成部44は、この発話期間の初日に、上記選択した日数候補に関連付けられた発話期間長を加算して発話期間の末日を定める。 The conversation sentence generation unit 44 randomly selects one of the number of days candidates included in the number of days data table and adds it to the date and time output by the event information acquisition unit 43 to determine the first day of the speech period. The conversation sentence generation unit 44 also adds the speech period length associated with the selected number of days candidate to the first day of the speech period to determine the last day of the speech period.

一例として、イベント情報取得部43が出力する日時が「12月15日」であるとき、日数候補のうち「2日」(関連付けられた発話期間長を「0日」とする)を選択したとすると、会話文生成部44は、発話期間の初日を「12月17日」、末日を「12月17日」とする。 As an example, when the date and time output by the event information acquisition unit 43 is "December 15th," if "2 days" is selected from the candidate days (with the associated speech period length set to "0 days"), the conversation sentence generation unit 44 will set the first day of the speech period to "December 17th" and the last day to "December 17th."

また会話文生成部44は、選択した日数候補に関連付けられた日時指示語と、イベント情報取得部43が出力するイベント特定情報とを用いて、会話文を生成する。例えば会話文生成部44は、予め定められた会話文パターンの候補である、「そういえば、<日時指示語>の<イベント特定情報>は、どうだった?」「あ。<日時指示語>は、<イベント特定情報>だったんだよね?」…などといった候補のうちから一つをランダムに選択して、日時指示とイベント特定情報とを、当該選択した会話文パターンに差し込む。 The conversation sentence generation unit 44 also generates a conversation sentence using a date and time indicator associated with the selected number of days candidate and the event specific information output by the event information acquisition unit 43. For example, the conversation sentence generation unit 44 randomly selects one of predetermined conversation sentence pattern candidates such as "Now that I think of it, how was the <event specific information> of the <date and time indicator>?", "Ah, the <date and time indicator> was the <event specific information>, right?", etc., and inserts the date and time indicator and the event specific information into the selected conversation sentence pattern.

これにより会話文生成部44は、例えば、「そういえば、一昨日のデートは、どうだった?」のような会話文を生成する。 This allows the conversation sentence generation unit 44 to generate a conversation sentence such as, "By the way, how was your date the day before yesterday?"

会話文生成部44は、ここで生成した会話文を上記決定した発話期間を発話条件として関連付けて、記憶部12に格納した会話文キューに蓄積する。すなわちサーバ10の記憶部12に格納される会話文キューは、ここでの例では、図4に例示するように、発話条件
(C)と、会話文(D)とを関連付けて格納したものとなる。
The conversation sentence generation unit 44 associates the conversation sentence thus generated with the determined speech period as a speech condition, and accumulates the associated conversation sentence in the conversation sentence queue stored in the storage unit 12. That is, in this example, the conversation sentence queue stored in the storage unit 12 of the server 10 stores the speech condition (C) and the conversation sentence (D) in association with each other, as illustrated in FIG.

なお、発話条件は、上記の発話期間のほか、発話の時刻に係る条件や、発話時の気温等の条件が含まれてもよい。さらに発話条件は必ずしも必要でなく、定めなくてもよい。発話条件が定められない場合(発話条件なしの場合)、当該発話条件の定めのない会話文は、常時発話可能な会話文となる。 Note that in addition to the above-mentioned speech period, the speech conditions may also include conditions related to the time of speech and conditions such as the temperature at the time of speech. Furthermore, speech conditions are not necessarily required and do not have to be defined. If no speech conditions are defined (if there are no speech conditions), the conversation sentence without the defined speech condition becomes a conversation sentence that can be spoken at any time.

また本実施の形態では、この会話文キューには、会話文生成部44が生成した会話文のほかにも、会話文が予め登録されていてもよい。このように、予め登録された会話文は例えば、・最高気温が35度以上だった、かつ、時刻が18時以降であるとの発話条件に関連付けて、「今日は、暑かったね」・時刻が午前2時から午前4時の間であるとの発話条件に関連付けて、「そろそろ寝ない?」などといった例があり得る。 In this embodiment, in addition to the conversation sentences generated by the conversation sentence generation unit 44, conversation sentences may be preregistered in the conversation sentence queue. In this way, examples of preregistered conversation sentences include, for example, "It was hot today," associated with the speech conditions that the maximum temperature was 35 degrees or higher and the time was after 6 p.m., and "Aren't you going to bed now?" associated with the speech condition that the time was between 2 a.m. and 4 a.m.

会話履歴管理部45は、ユーザごとに、受信部41が受け入れた、当該ユーザにより入力された音声の内容と、後に説明するアクション情報生成部46が指示した、当該ユーザの端末装置20により発話される会話文の内容とを順次記録する。つまり、この会話履歴管理部45は、ユーザと端末装置20との間での会話の履歴を記録することとなる。 The conversation history management unit 45 sequentially records, for each user, the contents of the voice input by the user that is accepted by the receiving unit 41, and the contents of the conversation sentences that are spoken by the terminal device 20 of the user that are instructed by the action information generating unit 46, which will be described later. In other words, the conversation history management unit 45 records the history of the conversation between the user and the terminal device 20.

アクション情報生成部46は、受信部41から入力される情報に基づいて、リクエストを送出した端末装置20が実行するべきアクションを決定し、当該アクションを指示する情報(アクション指示)と、アクションの実行に必要となる情報(以下、パラメータ情報と呼ぶ)とを含むアクション情報を生成して指示送信部47に出力する。 The action information generating unit 46 determines the action to be executed by the terminal device 20 that sent the request based on the information input from the receiving unit 41, generates action information including information instructing the action (action instruction) and information required to execute the action (hereinafter referred to as parameter information), and outputs the action information to the instruction transmitting unit 47.

本実施の形態の一例では、サーバ10の記憶部12には、端末装置20への指示を生成するための情報として、図5に例示するように、トリガを特定する情報(T)と、ユーザにより入力された音声の内容を表す情報と比較する情報(V、以下、比較文字列情報と呼ぶ。ただしこの比較文字列情報は、トリガの種類によってはなくてもよい)と、アクション情報の生成のためにサーバ10が実行する処理を表す情報(S)とを互いに関連づけたレコード(R)を少なくとも一つ含む、アクションデータベースが格納されているものとする。 In one example of this embodiment, the memory unit 12 of the server 10 stores an action database including at least one record (R) that associates, as information for generating instructions to the terminal device 20, information (T) that identifies a trigger, information (V) to be compared with information representing the content of the voice input by the user (hereinafter referred to as comparison string information; however, this comparison string information may not be necessary depending on the type of trigger), and information (S) representing the process executed by the server 10 to generate action information, as illustrated in FIG. 5.

アクション情報生成部46は、受信部41から入力されるトリガを特定する情報(T)に関連付けられた、比較文字列情報(V、あれば)とアクション情報の生成のためにサーバ10が実行するべき処理を表す情報とを取得する。 The action information generation unit 46 obtains comparison string information (V, if any) associated with the information (T) specifying the trigger input from the receiving unit 41, and information indicating the process that the server 10 should execute to generate the action information.

そしてアクション情報生成部46は、比較文字列情報が取得されれば(トリガを特定する情報に比較文字列情報が関連付けられていれば)、受信部41が出力する文字列情報と当該比較文字列情報とを比較する。そして、アクション情報生成部46は、受信部41が出力する文字列情報が比較文字列情報に一致していると判断すると、取得した情報が表す処理を実行して、アクション情報を生成する。 If the comparison string information is acquired (if the comparison string information is associated with the information that identifies the trigger), the action information generation unit 46 compares the comparison string information with the string information output by the receiving unit 41. If the action information generation unit 46 determines that the string information output by the receiving unit 41 matches the comparison string information, it executes the process represented by the acquired information to generate action information.

また、アクション情報生成部46は、比較文字列情報が取得されていなければ、上記取得した情報が表す処理を実行して、アクション情報を生成する。 In addition, if comparison string information has not been acquired, the action information generation unit 46 executes the process represented by the acquired information to generate action information.

具体的な例として、ここではアクションデータベースには、「ユーザによる音声入力があった」旨のトリガを特定する情報と、ユーザにより入力された音声の内容を表す情報と比較するべき比較文字列情報として「*ニュース[を|は]*[ない|教えて|読みあげて]*」などといった文字列の情報とに「ニュースの文字列情報を、インターネット上の所定のウェブサーバから取得し、当該文字列情報を読み上げるよう指示する」との情報を関連付けたレコードが記録されているものとする。 As a specific example, the action database contains records that associate information specifying a trigger that "there has been voice input by the user" with comparison string information such as "*News [to | is] * [not | tell me | read it out] *" as comparison string information to be compared with information expressing the content of the voice input by the user, and information such as "obtain the news string information from a specified web server on the Internet and instruct to read out the string information."

なお、この比較文字列情報も正規表現で表されているものとする。従って上記の文字列は、「今日のニュースを教えて」や、「何かニュースはない?」といった文字列情報に合致することとなる。 This comparison string information is also expressed as a regular expression. Therefore, the above string will match string information such as "Tell me about today's news" and "Is there any news?".

アクション情報生成部46は、例えば受信部41から「ユーザによる音声入力があった」旨のトリガを特定する情報と、ユーザにより入力された音声の内容を表す情報として「何かニュースはない?」といった文字列情報との入力を受け入れると、当該トリガを特定する情報を含むレコードをアクションデータベースから検索する。 When the action information generating unit 46 receives input from the receiving unit 41, for example, information identifying a trigger such as "there has been voice input by the user" and character string information such as "Is there any news?" as information representing the content of the voice input by the user, the action information generating unit 46 searches the action database for a record including information identifying the trigger.

ここではアクション情報生成部46は、上記のレコードをアクションデータベースから見出すこととなり、当該レコードに含まれる、比較文字列情報と、受け入れた文字列情報とを比較する。上記の例では受け入れた文字列情報「何かニュースはない?」が、比較文字列情報「*ニュース[を|は]*[ない|教えて|読みあげて]*」に合致すると判断されるので、アクション情報生成部46は、検索で見出した上記のレコードに含まれる、サーバ10が実行するべき処理を表す情報、例えば「(ステップ1)ニュースの文字列情報を、インターネット上の所定のウェブサーバから取得する、
(ステップ2)当該文字列情報を読み上げる指示を生成
(ステップ3)読み上げのときに再生するアニメーション情報を表示させる指示を生成する」を取得して、この情報に従った処理を実行する。
Here, the action information generating unit 46 finds the above record from the action database, and compares the comparison string information contained in the record with the accepted string information. In the above example, the accepted string information "Is there any news?" is determined to match the comparison string information "*News [wo|ha] * [no|tell me|read it out]*", so the action information generating unit 46 compares the information representing the process to be executed by the server 10, which is contained in the above record found by the search, such as "(Step 1) Obtain the news string information from a specified web server on the Internet,
(Step 2) Generate an instruction to read out the character string information, and (Step 3) Generate an instruction to display animation information to be played back when reading out. Then, the process according to this information is executed.

すなわちアクション情報生成部46は、この読み出した情報に従って、インターネット上の所定のウェブサーバからニュースの文字列情報を取得する。またアクション情報生成部46は、並列して行われるアクション処理の実行開始の時点で表示するべきアニメーションの画像データと、実行中に表示するべきアニメーションの画像データと、実行終了の時点で表示するべきアニメーションの画像データとをそれぞれ特定する情報(各画像データのファイル名でよい)を含むアニメーション情報の表示指示を生成する。 That is, the action information generating unit 46 obtains news character string information from a specified web server on the Internet according to the read information. The action information generating unit 46 also generates an instruction to display animation information including information (which may be the file name of each image data) specifying the image data of the animation to be displayed at the start of execution of the action processes performed in parallel, the image data of the animation to be displayed during the execution, and the image data of the animation to be displayed at the end of the execution.

そしてこの例では、アクション情報生成部46は、アクション指示とパラメータ情報とを含んだアクション情報を生成して指示送信部47に出力する。ここでアクション指示には、文字列情報を読み上げるべき旨の指示と、アニメーション情報の表示指示とを含む。また、パラメータ情報には、上記取得した文字列情報と、アニメーションの画像データを特定する情報とを含む。 In this example, the action information generating unit 46 generates action information including an action instruction and parameter information, and outputs the action information to the instruction transmitting unit 47. Here, the action instruction includes an instruction to read out the character string information, and an instruction to display the animation information. In addition, the parameter information includes the acquired character string information and information that identifies the image data of the animation.

またここで、サーバ10が実行するべき処理を表す情報には「会話文の選択」の指示が含まれてもよい。このような指示が含まれる場合、アクション情報生成部46は、当該指示に従い、例えば次のような方法で会話文を選択する。 In addition, the information representing the process to be executed by the server 10 may include an instruction to "select a conversation sentence." If such an instruction is included, the action information generating unit 46 selects a conversation sentence in accordance with the instruction, for example, in the following manner.

アクション情報生成部46は、会話文キューに格納されている会話文のうち、当該会話文に関連付けられた発話条件を満足する会話文を抽出する。ここで発話条件を満足するか否かの判断に必要な種々の情報、例えば現在日時(処理を実行している日時)の情報や、気象情報等はネットワークを介してNTP(Network Time Protocol)サーバや、所定のウェブサーバから取得すればよい。 The action information generation unit 46 extracts conversation sentences that satisfy the speech conditions associated with the conversation sentences from among the conversation sentences stored in the conversation sentence queue. Various pieces of information required to determine whether or not the speech conditions are satisfied, such as the current date and time (date and time when the process is being executed) and weather information, can be obtained from an NTP (Network Time Protocol) server or a specified web server via the network.

アクション情報生成部46は、発話条件を満足するとして抽出した会話文のうちから一つを例えばランダムに選択する。またアクション情報生成部46は、会話履歴管理部45が記録している、リクエストを送出した端末装置20のユーザに係る会話の履歴を読み出す。そしてアクション情報生成部46は、現在記録されている会話の履歴に続いて、上記選択した会話文が発話されたときに自然な会話となるか否かを判断する。 The action information generating unit 46 selects, for example, randomly one of the conversation sentences extracted as satisfying the speech conditions. The action information generating unit 46 also reads out the conversation history related to the user of the terminal device 20 that sent the request, which is recorded by the conversation history managing unit 45. The action information generating unit 46 then judges whether the selected conversation sentence will result in a natural conversation when spoken following the currently recorded conversation history.

この判断は例えば、人間同士の間でなされた会話のテキストを機械学習したニューラルネットワーク等を用いて、現在記録されている会話の履歴に続く文として妥当であるか否か、すなわち会話に連続性があるか否かを判断させることで実現できる。このような処理は、いわゆる次文予測(Next Sentence Prediction:NSP)として知られる処理である。次文予測を行うためのニューラルネットワークとしては、例えばBERTとして知られるモデル(https://arxiv.org/pdf/1706.03762.pdf)を利用できる。このような次文予測を行うための機械学習の学習用データとしては、一対の会話文(第1の会話文と第2の会話文ととする)と、当該第1,第2の会話文の連続性を表す情報とを互いに関連付けたものを用いる方法等、広く知られた学習用データ並びに、それを用いた機械学習処理方法を採用できる。 This determination can be realized, for example, by using a neural network that has learned the text of a conversation between humans through machine learning to determine whether or not the sentence is valid as a continuation of the currently recorded conversation history, that is, whether or not there is continuity in the conversation. This type of processing is known as Next Sentence Prediction (NSP). As a neural network for performing next sentence prediction, for example, a model known as BERT (https://arxiv.org/pdf/1706.03762.pdf) can be used. As training data for machine learning for such next sentence prediction, widely known training data and machine learning processing methods using the same can be used, such as a method using a pair of conversation sentences (a first conversation sentence and a second conversation sentence) and information indicating the continuity of the first and second conversation sentences associated with each other.

このようにニューラルネットワークを利用して現在記録されている会話の履歴に続く文として、選択した会話文が妥当であるか否か、つまり会話の連続性を判断させた場合、ニューラルネットワークの出力は、その妥当性を数値として表したものとなる。そこでアクション情報生成部46は、予め定めたしきい値を超える数値となるときに、自然な会話となると判断(連続性ありと判断)する。 In this way, when a neural network is used to determine whether a selected conversational sentence is appropriate as a sentence following the currently recorded conversation history, i.e., whether there is continuity in the conversation, the output of the neural network represents that appropriateness as a numerical value. The action information generating unit 46 determines that the conversation is natural (determines that there is continuity) when the numerical value exceeds a predetermined threshold value.

そしてアクション情報生成部46は、上記のように連続性ありとの判断をしたときには、文字列情報を読み上げるべき旨の指示と、アニメーション情報の表示指示とを含むアクション指示を生成する。またアクション情報生成部46は、上記選択した会話文の文字列情報と、アニメーションの画像データを特定する情報とを含むパラメータ情報を生成し、当該生成したアクション指示とパラメータ情報とをアクション情報として、端末装置20へ送出するよう、指示送信部47に指示する。 When the action information generating unit 46 determines that there is continuity as described above, it generates an action instruction including an instruction to read out the character string information and an instruction to display the animation information. The action information generating unit 46 also generates parameter information including the character string information of the selected conversational text and information specifying the image data of the animation, and instructs the instruction transmitting unit 47 to send the generated action instruction and parameter information as action information to the terminal device 20.

指示送信部47は、アクション情報生成部46が生成したアクション情報を、受信部41が受信したリクエスト情報の送信元である端末装置20に対して送出する。 The instruction sending unit 47 sends the action information generated by the action information generating unit 46 to the terminal device 20 that is the sender of the request information received by the receiving unit 41.

次に、端末装置20の制御部31の動作について説明する。本実施の形態では、制御部31は、図6に例示するように、リクエスト送出部51と、アクション情報受信部52と、音声合成部53と、アクション処理実行部54とを機能的に含んで構成される。 Next, the operation of the control unit 31 of the terminal device 20 will be described. In this embodiment, the control unit 31 is configured to functionally include a request sending unit 51, an action information receiving unit 52, a voice synthesis unit 53, and an action processing execution unit 54, as illustrated in FIG. 6.

リクエスト送出部51は、予め定められたトリガが発生したと判断すると、サーバ10での処理に必要な情報を収集して、当該トリガを特定する情報とともに、当該収集した情報を含むリクエスト情報をサーバ10へ送出する。具体的にここでは、ユーザにより音声が入力されたことや、所定の時刻になったなどといったトリガを予め列挙して、設定情報に含め、記憶部32に格納しておく。 When the request sending unit 51 determines that a predetermined trigger has occurred, it collects information necessary for processing in the server 10 and sends request information including the collected information together with information identifying the trigger to the server 10. Specifically, triggers such as voice input by the user or the arrival of a specified time are listed in advance, included in the setting information, and stored in the storage unit 32.

一例として設定情報には、図7に例示するように、トリガごとに、それぞれの名称(トリガ名:N)に対して発生条件(C)や当該トリガに関係してサーバ10での処理に必要な情報を特定する情報(P)、インターバル時間(T)等のトリガの処理に関わる情報に関連付けて列挙して記録されているものとする。 As an example, as shown in FIG. 7, the setting information lists and records, for each trigger, its name (trigger name: N), in association with information related to the processing of the trigger, such as occurrence conditions (C), information (P) that identifies information related to the trigger that is necessary for processing on the server 10, and interval time (T).

リクエスト送出部51は、この設定情報を参照して、発生条件が満足されたと判断すると、当該発生条件が満足されたトリガが発生したとして、当該トリガに関係してサーバ10での処理に必要な情報(P)を参照する。 When the request sending unit 51 determines that the occurrence condition is satisfied by referring to this setting information, it regards the occurrence of a trigger for which the occurrence condition is satisfied as occurring, and refers to information (P) related to the trigger that is necessary for processing on the server 10.

そしてリクエスト送出部51は、当該参照した情報で特定される、サーバ10での処理に必要な情報を収集し、当該収集した情報と、発生したトリガを特定する情報(トリガ名でよい)とを含むリクエスト情報を、サーバ10へ送出する。 Then, the request sending unit 51 collects information required for processing on the server 10, which is specified by the referenced information, and sends request information including the collected information and information specifying the trigger that has occurred (which may be the trigger name) to the server 10.

アクション情報受信部52は、サーバ10からアクション情報を受信して、当該受信したアクション情報を、アクション処理実行部54に出力する。 The action information receiving unit 52 receives action information from the server 10 and outputs the received action information to the action processing execution unit 54.

音声合成部53は、後に説明するアクション処理実行部54から入力される文字列情報に基づいて、音声データを合成する。この音声合成部53は、合成して得られた音声データを、アクション処理実行部54に出力する。 The voice synthesis unit 53 synthesizes voice data based on character string information input from the action processing execution unit 54, which will be described later. The voice synthesis unit 53 outputs the voice data obtained by synthesis to the action processing execution unit 54.

アクション処理実行部54は、サーバ10が送出したアクション情報から、アクション指示とパラメータ情報とを取り出し、アクション指示に従って処理を実行する。具体的に、上述の例のように、当該取得した文字列情報を読み上げるべき旨の指示と、上記アニメーション情報の表示指示とを含むアクション指示、及び、取得した文字列情報と、アニメーションの画像データとを含むパラメータ情報を含んだアクション情報を、アクション情報受信部52が受信した場合について説明する。 The action processing execution unit 54 extracts the action instruction and parameter information from the action information sent by the server 10, and executes processing according to the action instruction. Specifically, as in the above example, a case will be described where the action information receiving unit 52 receives action information including an instruction to read out the acquired character string information and an instruction to display the animation information, and parameter information including the acquired character string information and image data of the animation.

この例ではアクション処理実行部54は、取得した文字列情報を音声合成部53に出力して、音声データを取得する。また、アクション処理実行部54は、アクション情報に含まれる情報で特定されるアニメーションの画像データを記憶部22から読み出す。そしてアクション処理実行部54は、音声合成部53が出力した音声データを、音声出力部35に出力して、音声を鳴動させるとともに、上記読み出したアニメーションの画像データを表示部34に出力して、アニメーションの画像データを再生する。 In this example, the action processing execution unit 54 outputs the acquired character string information to the voice synthesis unit 53 to acquire voice data. The action processing execution unit 54 also reads out image data of an animation specified by information included in the action information from the storage unit 22. The action processing execution unit 54 then outputs the voice data output by the voice synthesis unit 53 to the voice output unit 35 to play a sound, and outputs the image data of the read animation to the display unit 34 to play the image data of the animation.

[動作]
本実施の形態の情報処理システム1は、以上の構成を備えており、次の例のように動作する。なお以下の例ではサーバ10の記憶部12には、アクションの要求の原因であるトリガごとに、アクション情報の生成のためにサーバ10が実行する処理を表す情報が関連付けられて、アクションデータベースとして格納されているものとする。
[Action]
The information processing system 1 of this embodiment has the above configuration and operates as in the following example. In the following example, it is assumed that the storage unit 12 of the server 10 stores, as an action database, information representing the process executed by the server 10 to generate action information for each trigger that is the cause of an action request, in association with the trigger.

以下の例では、このアクションデータベースに含まれる情報の例として、・トリガを特定する情報(T):ユーザが会話をしている・実行する処理:
(ステップ1)会話文の文字列情報を選択
(ステップ2)当該文字列情報を読み上げる指示を生成
(ステップ3)読み上げのときに再生するアニメーション情報を表示させる指示を生成する0との情報が含まれるものとする。
In the following example, the action database contains the following information: Information specifying a trigger (T): A user is having a conversation Process to be executed:
(Step 1) Select character string information of a conversation sentence; (Step 2) Generate an instruction to read out the character string information; (Step 3) Generate an instruction to display animation information to be played when reading out. 0 is assumed to be included in the information.

また、端末装置20の記憶部32は、設定情報として、図7に例示したように、トリガごとに、発生条件(C)や当該トリガに関係してサーバ10での処理に必要な情報を特定する情報(P)等を関連付けて格納している。 In addition, the storage unit 32 of the terminal device 20 stores, as setting information, for each trigger, information (C) that specifies the information required for processing on the server 10 in relation to the trigger, and the like, in association with the trigger, as shown in FIG. 7.

以下の例では、この設定情報に、・トリガを特定する情報(トリガ名N):ユーザによる音声入力があった・発生条件(C):ユーザが所定のウェイクワードを発声した・サーバ10での処理に必要な情報を特定する情報(P):ユーザが発話した内容の文字列情報…といった情報が含まれるものとする。ここでウェイクワードとは、ユーザがその語を発話したときに、音声入力の開始として認識するべき、「ねえ聞いてよ」や「起きてよ」等の語であり、予め定められているものとする。端末装置20は、サーバ10での処理に必要となるユーザが発話した内容の文字列情報から、このウェイクワードに相当する文字列部分を除いてもよい。 In the following example, this setting information includes the following information: - Information identifying the trigger (trigger name N): there was voice input by the user - Occurrence condition (C): the user uttered a specific wake word - Information identifying the information required for processing in server 10 (P): character string information of what the user spoke... Here, a wake word is a word such as "Hey, listen to me" or "Wake up" that should be recognized as the start of voice input when spoken by the user, and is determined in advance. The terminal device 20 may remove the character string portion corresponding to this wake word from the character string information of what the user spoke that is required for processing in server 10.

以下、このような設定の情報等を保持するサーバ10と、端末装置20との動作について、図8,図9を参照しながら説明する。 The operation of the server 10 that holds such setting information and the terminal device 20 will be described below with reference to Figures 8 and 9.

ユーザが、端末装置20に対して「ねえ聞いてよ。明日はデートなんだけど…」などと発話する(図8のS11)と、端末装置20はこのユーザの音声を認識する処理を実行して(S12)、ユーザが発話した音声に対応する文字列情報を取得する。既に述べたように、音声認識の処理は端末装置20自身が行わなくても、ネットワークを介して音声認識処理のサービスにアクセスすることで行ってもよい。 When a user speaks to the terminal device 20, such as "Hey, listen. I have a date tomorrow..." (S11 in FIG. 8), the terminal device 20 executes a process of recognizing the user's voice (S12) and acquires character string information corresponding to the voice spoken by the user. As already mentioned, the voice recognition process does not have to be performed by the terminal device 20 itself, but may be performed by accessing a voice recognition processing service via a network.

端末装置20は、設定情報を参照して、いずれかのトリガの発生条件が満足されたかを調べる(S13)。ここでは、ユーザがウェイクワードである「ねえ聞いてよ」を発声しているので、「ユーザによる音声入力があった」旨のトリガが発生したものとして(S13:Yes)、設定情報に従い、ユーザが発話した内容の文字列情報を収集する。なお、ステップS13において、いずれのトリガの発生条件も満足していないと判断すると(S13:No)、端末装置20は処理を終了する。 The terminal device 20 refers to the setting information to check whether any of the trigger occurrence conditions have been satisfied (S13). In this case, since the user has uttered the wake word "Hey, listen to me," it is assumed that a trigger has been generated indicating that "there has been voice input by the user" (S13: Yes), and according to the setting information, character string information of the content uttered by the user is collected. Note that, if it is determined in step S13 that none of the trigger occurrence conditions have been satisfied (S13: No), the terminal device 20 ends the process.

ここでは、ユーザが発話した内容は既にステップS12にて、ユーザが発話した内容の文字列情報を取得しているので、端末装置20は、当該文字列情報と、発生したトリガを特定する情報(トリガ名「ユーザによる音声入力があった」)とを含むリクエスト情報をサーバ10宛に送出する(S14)。 In this case, since the content uttered by the user has already been acquired as character string information in step S12, the terminal device 20 sends request information including the character string information and information identifying the trigger that has occurred (trigger name "Voice input by the user has been received") to the server 10 (S14).

サーバ10では端末装置20からのリクエスト情報を受信する。そしてサーバ10は、当該リクエスト情報に含まれる文字列情報がイベントに関わる情報であるか否かを、予め定められたイベントに関わる情報のパターンと当該リクエスト情報に含まれる文字列情報とを比較することで判断する(S15)。 The server 10 receives the request information from the terminal device 20. The server 10 then determines whether the character string information included in the request information is event-related information by comparing the character string information included in the request information with a predetermined pattern of information related to the event (S15).

ここでパターンが「*[明日|明後日|週末|来週][D+日][W+曜][日][は|に]W+[が][ある|なん]*」であるとすると、上記受け入れた文字列情報が「ねえ聞いてよ。明日はデートなんだけど…」であるので、サーバ10は、当該パターンに一致するものと判断する。つまり、この文字列情報は、イベントに関わる情報であると判断される(S15:Yes)こととなる。 If the pattern is "* [tomorrow | the day after tomorrow | weekend | next week] [D+day] [W+day] [day] [ha|ni] W+[ga] [aru|nan] *," the accepted character string information is "Hey, listen. Tomorrow is a date...," so the server 10 determines that it matches the pattern. In other words, this character string information is determined to be information related to an event (S15: Yes).

1
なお、イベントに関わる情報でないと判断されたとき(S15:No)には、サーバ10は、他の処理、つまりアクションデータベースを参照して得られる処理を実行する。
1
On the other hand, if it is determined that the information is not event-related (S15: No), the server 10 executes another process, that is, a process obtained by referring to the action database.

そこでサーバ10は、この文字列情報から日時情報と、イベント特定情報とを取り出す
(S16)。ここでは「明日」とあるので、サーバ10は、この処理を実行している日時
(例えば12月15日)の次の日である「12月16日」との日時情報を得る。また、サーバ10は、イベント特定情報として、上記文字列情報から「デート」を抽出する。
The server 10 then extracts date and time information and event specific information from this character string information (S16). Since "tomorrow" is used here, the server 10 obtains date and time information of "December 16th", which is the day following the date and time when this process is being executed (e.g. December 15th). The server 10 also extracts "date" from the character string information as event specific information.

次にサーバ10は、会話文を生成する。サーバ10は、まず会話文の発話期間として、予め日数データテーブルに定められた日数候補から一つの日数を、ランダムに取得する(S17:発話期間の決定)。ここでは日数候補として「7日」を取得したものとする。またこのステップS16の処理においてサーバ10は、取得した日数候補に関連付けて日数データテーブルに記録されている発話期間長(ここでは「7日」とする)と、日時指示語
(ここでは「この間の」とする)を取得し、ステップS16で取り出した日時情報(12月16日)と、取得した日数候補と、発話期間長とを用い、発話期間を「12月23日から12月30日まで」と決定する。
Next, the server 10 generates a conversation sentence. The server 10 first randomly acquires one number of days from the number of days candidates predefined in the number of days data table as the utterance period of the conversation sentence (S17: Decision of utterance period). Here, it is assumed that "7 days" is acquired as the number of days candidate. In addition, in the process of this step S16, the server 10 acquires the utterance period length (here, "7 days") and the date and time indicator (here, "during this time") recorded in the number of days data table in association with the acquired number of days candidate, and determines the utterance period to be "from December 23rd to December 30th" using the date and time information (December 16th) extracted in step S16, the acquired number of days candidate, and the utterance period length.

なお、この発話期間の決定の処理では、予め日数データテーブルに定められた日数候補から一つの日数をランダムに決定する例としたが、本実施の形態はこれに限られず、サーバ10は、ステップS16で取得したイベント特定情報に関連付けて予め定められた日数を、発話期間として取得してもよい。 In the process of determining the speech period, an example has been given in which one number of days is randomly determined from the number of days candidates predefined in the number of days data table, but this embodiment is not limited to this, and the server 10 may obtain a number of days predefined in association with the event-specific information obtained in step S16 as the speech period.

この例では、例えばイベント特定情報が「デート」(比較的頻繁に発生し得るイベントであり、話題のライフタイムが比較的短いと考えられるイベント)である場合は、比較的短い日数として「4日」、また、「旅行」(話題のライフタイムが比較的長いと考えられるイベント)である場合は、比較的長い日数として「14日」などと予め定めたデータテーブルを記憶部12に記憶させておき、サーバ10は、このデータテーブルを参照して、発話期間を設定する。 In this example, for example, if the event-specific information is a "date" (an event that can occur relatively frequently and whose topic life-time is considered to be relatively short), a relatively short number of days is set to "4 days," and if the event-specific information is a "trip" (an event whose topic life-time is considered to be relatively long), a relatively long number of days is set to "14 days," and a predetermined data table is stored in the storage unit 12. The server 10 sets the speech period by referring to this data table.

また別の例では、ステップS16で取得したイベント特定情報のそれぞれに関連付けて複数の日数候補を記憶したデータテーブルを参照して発話期間を決定してもよい。 In another example, the speech period may be determined by referring to a data table that stores multiple candidate days associated with each of the event-specific information acquired in step S16.

この例では、イベント特定情報が「デート」(比較的頻繁に発生し得るイベントであり、話題のライフタイムが比較的短いと考えられるイベント)である場合は、比較的短い日数の日数候補として「1日、2日、3日、4日」、また、「旅行」(話題のライフタイムが比較的長いと考えられるイベント)である場合は、比較的長い日数まで含めて「1日、2日、…、13日、14日」などと予め定めたデータテーブルを記憶部12に記憶させておく。 In this example, when the event-specific information is a "date" (an event that can occur relatively frequently and whose topic life time is considered to be relatively short), the relatively short number of days are "1 day, 2 days, 3 days, 4 days" as candidate days, and when the event-specific information is a "trip" (an event whose topic life time is considered to be relatively long), the relatively long number of days are included, and a predetermined data table such as "1 day, 2 days, ..., 13 days, 14 days" is stored in the storage unit 12.

そしてサーバ10は、ステップS16で取得したイベント特定情報に関連付けて、上記データテーブルに予め定められた日数候補から一つの日数をランダムに選択し、当該選択した日数を発話期間として設定する。 Then, the server 10 randomly selects one number of days from the number of days candidates predefined in the data table in association with the event-specific information acquired in step S16, and sets the selected number of days as the speech period.

この例では、ステップS16で取得したイベント特定情報で特定されるイベントが「デート」の場合は、1日乃至4日の発話期間が設定されることとなり、ステップS16で取得したイベント特定情報で特定されるイベントが「旅行」であるときには、1日乃至14日の発話期間が設定されることとなる。 In this example, if the event specified by the event specification information obtained in step S16 is a "date," a speech period of 1 to 4 days is set, and if the event specified by the event specification information obtained in step S16 is a "trip," a speech period of 1 to 14 days is set.

サーバ10は、選択した日数候補に関連付けられた日時指示語と、イベント情報取得部43が出力するイベント特定情報と、予め定められた会話文パターンの候補の情報とを用2いて、会話文を生成する(S18)。ここではサーバ10は、予め定められた、複数の会話文パターンの候補のうちから一つを選択して、日時指示語(「この間の」)とイベント特定情報(「デート」)とを差し込むことで、会話文、例えば、「そういえば、この間のデートは、どうだった?」といった会話文を生成する。 The server 10 generates a conversation sentence using the date and time noun associated with the selected number of days candidate, the event specific information output by the event information acquisition unit 43, and information on the predetermined conversation sentence pattern candidate (S18). Here, the server 10 selects one from a plurality of predetermined conversation sentence pattern candidates, and generates a conversation sentence, for example, a conversation sentence such as "By the way, how was your date the other day?" by inserting the date and time noun ("the other day") and the event specific information ("date").

サーバ10は、このステップS18の処理で生成した会話文に、ステップS17の処理で決定した発話期間を発話条件として関連付けて、記憶部12に格納した会話文キューに蓄積する(S19)。 The server 10 associates the conversation sentence generated in the process of step S18 with the speech period determined in the process of step S17 as a speech condition, and accumulates the conversation sentence in a conversation sentence queue stored in the memory unit 12 (S19).

この処理により、会話文キューには、予め設定されている会話文である、
(1)発話条件:最高気温が35度以上だった、かつ、時刻が18時以降である
会話文:「今日は、暑かったね」
(2)発話条件:時刻が午前2時から午前4時の間である
会話文「そろそろ寝ない?」…などとともに、
(n)発話条件:12月23日から12月30日までの発話期間内である
会話文:「そういえば、この間のデートは、どうだった?」との会話文が蓄積された状態となる。
By this process, the conversation sentence queue contains the conversation sentences,
(1) Utterance condition: The maximum temperature was 35 degrees or higher, and the time was after 6 p.m. Conversation: "It was hot today."
(2) Utterance condition: The time is between 2:00 and 4:00 a.m. Conversation sentence: "Aren't you going to bed soon?" ... etc.
(n) Utterance condition: within the utterance period from December 23 to December 30. Conversation sentence: "By the way, how was your date the other day?" is stored.

なお、この動作の間も、サーバ10は、ユーザにより入力された音声の内容と、当該ユーザの端末装置20により発話される会話文の内容とを順次記録して、会話履歴の情報を生成している。ここでは例えば、ユーザとの間で次のような会話が行われる場合、その会話履歴の情報が保持される。 During this operation, the server 10 sequentially records the contents of the voice input by the user and the contents of the conversation spoken by the user's terminal device 20, and generates conversation history information. For example, if the following conversation takes place between the user and the server 10, the conversation history information is stored.

すなわち、サーバ10では、ユーザ:「ねえ聞いてよ。明日はデートなんだけどね」端末装置20の発話:「へえ、そうなんだ」ユーザ:「天気はどうかな」端末装置20の発話:「明日は晴れるみたいだよ」といった会話履歴の情報が記録されることとなる。 That is, the server 10 records conversation history information such as: User: "Hey, listen. We have a date tomorrow." Terminal device 20's speech: "Oh, really?" User: "I wonder what the weather's like." Terminal device 20's speech: "It looks like it's going to be sunny tomorrow."

なお、サーバ10は、このステップS16乃至S19の処理と並行して、他の処理、つまりアクションデータベースを参照して得られる処理を実行してもよい。 Note that the server 10 may execute other processes, i.e. processes obtained by referring to the action database, in parallel with the processes in steps S16 to S19.

その後、例えば12月24日にユーザが、端末装置20に対して「起きてよ。何かニュースある?」などと発話する(図9のS21)と、端末装置20はこのユーザの音声を認識する処理を実行して(S22)、ユーザが発話した音声に対応する文字列情報を取得する。 After that, for example, on December 24th, if the user speaks to the terminal device 20, such as "Wake me up. Is there any news?" (S21 in FIG. 9), the terminal device 20 executes a process of recognizing the user's voice (S22) and obtains character string information corresponding to the voice spoken by the user.

また端末装置20は、設定情報を参照して、いずれかのトリガの発生条件が満足されたかを調べる(S23)。ここでは、ユーザがウェイクワードを発声しているので、「ユーザによる音声入力があった」旨のトリガが発生したものとして(S23:Yes)、設定情報に従い、ユーザが発話した内容の文字列情報「起きてよ。何かニュースある?」を収集する。そして端末装置20は、当該文字列情報と、発生したトリガを特定する情報(トリガ名「ユーザによる音声入力があった」)とを含むリクエスト情報をサーバ10宛に送出する(S24)。 The terminal device 20 also refers to the setting information to check whether any of the trigger occurrence conditions have been satisfied (S23). In this case, since the user has spoken the wake word, it is assumed that a trigger has occurred indicating that "there has been voice input by the user" (S23: Yes), and according to the setting information, it collects the character string information of what the user said, "Wake up. Is there any news?". The terminal device 20 then sends request information including the character string information and information identifying the trigger that has occurred (trigger name "there has been voice input by the user") to the server 10 (S24).

サーバ10では、「ユーザによる音声入力があった」旨のトリガに関連付けられた、比3較文字列情報「*ニュース[を|は]*[ない|教えて|読みあげて]*」に、端末装置20が送信した文字列情報「起きてよ。何かニュースある?」とが比較して一致しているか否かを判断する(S25)。 The server 10 compares the comparison string information "*News [to | is] * [not | tell | read] *" associated with the trigger indicating that "there has been voice input by the user" with the string information "Wake up. Is there any news?" sent by the terminal device 20, and determines whether they match (S25).

ここでは、サーバ10が端末装置20から受信した文字列情報「起きてよ。何かニュースある?」が比較文字列情報に一致するため、サーバ10は、ステップS25で比較文字列情報と受信した文字列情報とが一致したと判断して、「ユーザによる音声入力があった」旨のトリガと上記比較文字列情報とに関連付けられている情報で特定される処理を開始する。 In this case, the character string information "Wake up. Any news?" that the server 10 received from the terminal device 20 matches the comparison character string information, so the server 10 determines in step S25 that the comparison character string information matches the received character string information, and starts a process specified by the trigger indicating that "voice input has been made by the user" and the information associated with the comparison character string information.

例えばサーバ10は、インターネット上の所定のウェブサーバからニュースの文字列情報を取得し、当該文字列情報を読み上げるべき旨の指示とともに、アクション情報として端末装置20に対して送出する(S26)。 For example, the server 10 acquires news string information from a specific web server on the Internet, and sends it to the terminal device 20 as action information together with an instruction to read out the string information (S26).

端末装置20では、この指示に従い、ニュースの情報を読み上げる処理を実行する(S27)。ここでは例えば「先週に引き続き、暖かい日が続いていますが、年末は寒波が襲来すると予想されています」のようなニュースが読み上げられる。 In response to this instruction, the terminal device 20 executes a process of reading out the news information (S27). For example, the news that is read out may be something like, "The warm weather continues from last week, but a cold wave is expected to hit at the end of the year."

サーバ10では、ここまでで端末装置20との間で送受した文字列情報を会話の履歴として記録している。上述の例では、ユーザ:「起きてよ。何かニュースある?」端末装置20の発話:「『先週に引き続き、暖かい日が続いていますが、年末は寒波が襲来すると予想されています』、だって」といった会話の履歴が記録される。 The server 10 records the character string information sent and received between the server 10 and the terminal device 20 up to this point as a conversation history. In the above example, the conversation history is recorded as follows: User: "Wake up. Is there any news?" Terminal device 20 utterance: "They say, 'It's been warm since last week, but a cold wave is expected to hit at the end of the year.'"

なお、ここまでの処理において、サーバ10は、当該リクエスト情報に含まれる文字列情報がイベントに関わる情報であるか否かを、予め定められたイベントに関わる情報のパターンと当該リクエスト情報に含まれる文字列情報とを比較することで判断するが、「起きてよ。何かニュースある?」の文字列情報は、パターン「*[明日|明後日|週末|来週][D+日][W+曜][日][は|に]W+[が][ある|なん]*」に合致しないため、イベントに関わる情報とされず、対応する処理は行われない。 In the process up to this point, the server 10 determines whether the character string information included in the request information is event-related information by comparing the character string information included in the request information with a predetermined pattern of event-related information. However, since the character string information "Wake up. Is there any news?" does not match the pattern "* [tomorrow | the day after tomorrow | weekend | next week] [D+day] [W+day] [day] [is | is] W+[is] [is | is] *", it is not considered to be event-related information, and the corresponding process is not performed.

この後、ユーザがさらに、端末装置20に対して「ああ。確かに先週は暖かかったなあ」などと発話すると(S28)、端末装置20はユーザが発話した音声に対応する文字列情報を取得する。そして端末装置20は例えば「ユーザが会話をしている」旨のトリガが発生したものとして、設定情報に従い、ユーザが発話した内容の文字列情報「ああ。確かに先週は暖かかったなあ」と、発生したトリガを特定する情報とを含むリクエスト情報をサーバ10宛に送出する(S29)。 After that, when the user further speaks to the terminal device 20, such as "Yes, it certainly was warm last week" (S28), the terminal device 20 acquires character string information corresponding to the voice spoken by the user. Then, the terminal device 20 assumes that a trigger has occurred, for example, that "the user is having a conversation", and sends request information to the server 10 according to the setting information, including the character string information of what the user spoke, "Yes, it certainly was warm last week", and information identifying the trigger that has occurred (S29).

サーバ10ではこのリクエスト情報に含まれる文字列情報がイベントに関わる情報であるか否かを、予め定められたイベントに関わる情報のパターンと当該リクエスト情報に含まれる文字列情報とを比較することで判断するが、この文字列情報も、上記パターンに合致しないので、イベントに関わる情報とされず、対応する処理は行われない。 The server 10 determines whether the character string information included in this request information is event-related information by comparing the character string information included in the request information with a predetermined pattern of information related to an event. However, since this character string information does not match the above pattern, it is not determined to be event-related information, and the corresponding process is not performed.

一方、サーバ10は、「ユーザが会話をしている」とのトリガを特定する情報に関連付けられている情報で特定される処理を実行し、会話文の文字列情報を選択して、当該文字列情報を発声させる指示を端末装置20へ送出する(S30)。 Meanwhile, the server 10 executes a process specified by information associated with information specifying the trigger "users are having a conversation," selects character string information of the conversational text, and sends an instruction to the terminal device 20 to vocalize the character string information (S30).

すなわちサーバ10は、図10に例示するように、このステップS30の処理において、会話文キューに格納されている会話文のうち、当該会話文に関連付けられた発話条件を4満足する会話文を抽出する(S41)。またサーバ10は、ここで会話文のうち、未選択の会話文の一つを例えばランダムに選択する(S42)。 That is, as shown in FIG. 10, in the process of step S30, the server 10 extracts a conversation sentence that satisfies the four utterance conditions associated with the conversation sentence from among the conversation sentences stored in the conversation sentence queue (S41). The server 10 also selects one of the unselected conversation sentences from among the conversation sentences, for example at random (S42).

他方、サーバ10は、リクエストを送出した端末装置20のユーザに係る会話の履歴を参照し、現在記録されている会話の履歴に続いて、ステップS42で選択した会話文が発話されたときに自然な会話となるか否かを判断する(S43)。 On the other hand, the server 10 refers to the conversation history related to the user of the terminal device 20 that sent the request, and determines whether the conversation sentence selected in step S42 will result in a natural conversation when spoken following the currently recorded conversation history (S43).

具体的にサーバ10は、人間同士の間でなされた会話のテキストを機械学習したBERTのモデルを用いた次文予測処理により、選択した会話文が、現在記録されている会話の履歴に続く文としての妥当性を表す数値(妥当であるほど大きい値となるものとする)を取得する。そしてサーバ10は、取得した値が予め定めたしきい値を超える数値となるときに、自然な会話となる(連続性あり)と判断し、そうでないときには自然な会話とならない(連続性なし)と判断する。 Specifically, the server 10 obtains a numerical value (the more appropriate the value, the larger the value) that indicates the appropriateness of the selected conversational sentence as a sentence that follows the currently recorded conversation history, through a next sentence prediction process using a BERT model that is a machine-learned version of the text of conversations between humans. The server 10 then determines that the conversation is natural (there is continuity) when the obtained value exceeds a predetermined threshold value, and otherwise determines that the conversation is not natural (there is no continuity).

サーバ10は、ステップS43において、選択した会話文が発話されたときに自然な会話となると判断する(S43:Yes)と、当該選択した会話文の文字列情報を読み上げるべき旨の指示を含むアクション情報を生成する。そしてサーバ10は、当該アクション情報を端末装置20へ送出する(S44)。 In step S43, when the server 10 determines that the selected conversational sentence will result in a natural conversation when spoken (S43: Yes), the server 10 generates action information including an instruction to read out the character string information of the selected conversational sentence. The server 10 then transmits the action information to the terminal device 20 (S44).

なお、ステップS43において、選択した会話文が発話されたときに自然な会話とならないと判断する(S43:No)と、サーバ10は、処理S42に戻って処理を続ける。なお、処理S42において未選択の会話文がない場合は、予め定めた会話文の文字列情報を読み上げるべき旨の指示を含むアクション情報を生成して端末装置20へ送出するなど、予め定めた処理を実行する(S45:既定処理の実行)。 If it is determined in step S43 that the selected conversation sentence will not result in a natural conversation when spoken (S43: No), the server 10 returns to process S42 and continues the process. If there are no unselected conversation sentences in process S42, the server 10 executes a predetermined process, such as generating action information including an instruction to read out character string information of a predetermined conversation sentence and sending it to the terminal device 20 (S45: Execute default process).

図9に戻り、端末装置20では、アクション情報の指示に従い、文字列情報を読み上げる処理を実行する(S31)。 Returning to FIG. 9, the terminal device 20 executes a process of reading out the character string information in accordance with the instructions of the action information (S31).

具体的な例として、上記ステップS43の処理においては、ユーザ:「起きてよ。何かニュースある?」端末装置20の発話:「『先週に引き続き、暖かい日が続いていますが、年末は寒波が襲来すると予想されています』、だって」ユーザ:「ああ。確かに先週は暖かかったなあ」といった会話の履歴に引き続いて、発話条件が満足されている会話文の一つとして、「そういえば、この間のデートは、どうだった?」との会話文が自然に連続するか否かが判断される。 As a specific example, in the process of step S43 described above, following a conversation history such as: User: "Wake up. Is there any news?" Speech from terminal device 20: "It's been warm since last week, but they say a cold wave is expected to hit at the end of the year," User: "Yeah. It certainly was warm last week," it is determined whether the conversation sentence "By the way, how was your date the other day?" naturally follows as one of the conversation sentences for which the utterance condition is satisfied.

ここで会話に連続性があると判断された場合、この会話文を発話するようサーバ10が端末装置20に指示するので、会話は全体として、ユーザ:「起きてよ。何かニュースある?」端末装置20の発話:「『先週に引き続き、暖かい日が続いていますが、年末は寒波が襲来すると予想されています』、だって」ユーザ:「ああ。確かに先週は暖かかったなあ」端末装置20の発話:「そういえば、この間のデートは、どうだった?」といったようになる。 If it is determined that there is continuity in the conversation, the server 10 instructs the terminal device 20 to speak this conversational sentence, so that the overall conversation will be something like this: User: "Wake up. Is there any news?" Speech of the terminal device 20: "They say, 'It's been warm since last week, but a cold wave is expected to hit at the end of the year.'" User: "Yeah. It was certainly warm last week." Speech of the terminal device 20: "Now that I think about it, how was your date the other day?"

このように本実施の形態では、過去の予定に関する会話が現れることで、ユーザに対応した内容の会話を実現でき、親近感を喚起できる。 In this way, in this embodiment, conversations about past plans appear, allowing for conversations that are tailored to the user, evoking a sense of closeness.

[端末装置単体の場合]
ここまでの説明では、端末装置20がユーザの発した音声を認識して得た文字列情報をサーバ10へ送出していた。そしてサーバ10にて端末装置20で発声するべき音声データのもととなる文字列情報(会話文)を生成して提供することとしていた。
[In the case of a single terminal device]
In the explanation so far, the terminal device 20 recognizes the voice uttered by the user and transmits the obtained character string information to the server 10. Then, the server 10 generates and provides character string information (conversational text) that is the basis of the voice data to be uttered by the terminal device 20.

しかしながら本発明の実施の形態の一態様では、端末装置20が情報処理装置として機能してもよい。この場合、サーバ10は必ずしも必要ではない。 However, in one embodiment of the present invention, the terminal device 20 may function as an information processing device. In this case, the server 10 is not necessarily required.

この例では、端末装置20の制御部31が、リクエスト送出部51と、アクション情報受信部52と、音声合成部53と、アクション処理実行部54としての機能を実現するとともに、受信部41と、イベント管理部42と、イベント情報取得部43と、会話文生成部44と、会話履歴管理部45と、アクション情報生成部46としても動作することとなる。 In this example, the control unit 31 of the terminal device 20 realizes the functions of a request sending unit 51, an action information receiving unit 52, a voice synthesis unit 53, and an action processing execution unit 54, and also operates as a receiving unit 41, an event management unit 42, an event information acquisition unit 43, a conversation sentence generation unit 44, a conversation history management unit 45, and an action information generation unit 46.

またこの場合、アクションデータベースや会話文キュー等、上記の説明で記憶部12に格納されているデータはいずれも端末装置20の記憶部32に格納される。 In this case, all of the data stored in the memory unit 12 in the above description, such as the action database and conversation sentence queue, are stored in the memory unit 32 of the terminal device 20.

そしてこの例ではリクエスト送出部51は、リクエスト情報を、制御部31自身が実現する受信部41に対して出力することとなる。また受信部41は、当該出力されたリクエスト情報を受け入れて処理を行う。さらにアクション情報生成部46は、生成したアクション情報を、制御部31自身が実現するアクション情報受信部52に対して出力する。 In this example, the request sending unit 51 outputs the request information to a receiving unit 41 realized by the control unit 31 itself. The receiving unit 41 then accepts the output request information and processes it. Furthermore, the action information generating unit 46 outputs the generated action information to an action information receiving unit 52 realized by the control unit 31 itself.

これらの情報の出力と受け入れは、ローカルループバックを通じて、ネットワーク(通信部36)経由で行われてもよいし、ネットワークを介することなく、記憶部32に格納して読み出すことで行われてもよい。 The output and reception of this information may be performed via a network (communication unit 36) through a local loopback, or may be performed by storing and reading out the information in memory unit 32 without going through a network.

[発話の停止動作]
また端末装置20は、音声データ(サーバ10から受信した文字列情報に基づいて合成した音声データを含む)の再生中に、ユーザが端末装置20に対して所定の操作を行ったときに、音声データの再生を中断することとしてもよい。
[Speech stop action]
In addition, the terminal device 20 may be configured to interrupt playback of the voice data (including voice data synthesized based on string information received from the server 10) when the user performs a specified operation on the terminal device 20 during playback of the voice data.

この所定の操作は、例えばセンサ部33がタッチセンサを備える場合は、タッチセンサに触れることにより行われてもよい。この例では、端末装置20は音声データの再生中、ユーザがタッチセンサに触れたことを検出すると、音声データの再生を中断する。 For example, if the sensor unit 33 is equipped with a touch sensor, this predetermined operation may be performed by touching the touch sensor. In this example, when the terminal device 20 detects that the user has touched the touch sensor during playback of audio data, the terminal device 20 interrupts playback of the audio data.

また別の例では、この所定の操作は、ユーザが所定の語を発したことであってもよい。例えば端末装置20は音声データの再生中、ユーザが「しっ」と、静かにするよう要求する語を発したと判断すると、端末装置20は、音声データの再生を中断する。 In another example, the predetermined operation may be the user uttering a predetermined word. For example, when the terminal device 20 determines that the user uttered the word "shush" requesting quietness while playing back audio data, the terminal device 20 interrupts the playback of the audio data.

さらに別の例では、情報処理システム1は、ユーザが操作を行わない場合であっても所定の会話文の発声をしないよう制御してもよい。 In yet another example, the information processing system 1 may be controlled so that a specified conversational sentence is not spoken even if the user does not perform an operation.

具体的に端末装置20のセンサ部33は、人数を検出可能な人感センサ(広く知られているデバイスであるので、その詳しい説明を省略する)を備えてもよい。そしてこの人感センサが端末装置20の周囲で検出した人数の情報を、会話文の選択に用いてもよい。 Specifically, the sensor unit 33 of the terminal device 20 may be equipped with a human presence sensor (a widely known device, and therefore a detailed description thereof will be omitted) capable of detecting the number of people. Then, information on the number of people detected by this human presence sensor around the terminal device 20 may be used to select a conversation sentence.

この例では、会話文生成部44としての機能を実行するサーバ10または端末装置20は、イベント情報取得部43が出力する情報に基づいて会話文を生成して会話文キューに登録する際、発話条件に、発話期間の情報に加えて、端末装置20が検出した人数の情報に係る条件を含める。一例としてこの人数に係る条件は、人数が「1」(単数)であるとの条件としておく。 In this example, when the server 10 or the terminal device 20, which executes the function of the conversation sentence generation unit 44, generates a conversation sentence based on the information output by the event information acquisition unit 43 and registers it in the conversation sentence queue, the speech condition includes a condition related to the information on the number of people detected by the terminal device 20 in addition to the information on the speech period. As an example, the condition related to the number of people is set to a condition that the number of people is "1" (singular).

端末装置20は、サーバ10で会話文を選択する場合には、サーバ10に対して送出するリクエスト情報に、周囲で検出した人数を表す人数情報を含めて送出する。 When the terminal device 20 selects a conversation sentence on the server 10, the terminal device 20 sends request information to the server 10 including number information indicating the number of people detected in the vicinity.

そしてアクション情報生成部46としての機能を実行するサーバ10または端末装置20は、会話文キューに格納されている会話文のうち、当該会話文に関連付けられた発話条件を満足する会話文を抽出する際に、この人数情報を用いた条件も満足する会話文を選択する。 Then, the server 10 or the terminal device 20, which executes the function of the action information generation unit 46, selects a conversation sentence that also satisfies the condition using the number of people information when extracting a conversation sentence that satisfies the speech condition associated with the conversation sentence from among the conversation sentences stored in the conversation sentence queue.

上述の例のように、過去のイベント情報に関係する会話文の発話条件として人数が「1」であるとの条件を含めておくと、端末装置20の周囲に複数の人物が存在する場合には、過去のイベント情報に関係する会話文が選択されない状態となるので、ユーザのプライベートな情報が漏出する機会を低減できる。 As in the above example, if the condition for the number of people to be "1" is included as a speech condition for a conversation sentence related to past event information, when there are multiple people around the terminal device 20, the conversation sentence related to past event information will not be selected, thereby reducing the chance of the user's private information being leaked.

[感情の表現]
本実施の形態の一例ではさらに、アクション情報に、端末装置20の表示部34に表示するキャラクタの感情に関係する情報が含まれてもよい。この感情の情報は、例えば喜び
(Joy)、や悲しみ(Sad)などを特定する情報等でよい。またこの感情の情報には、無感情を表す情報(flat)を含んでもよい。
[Expression of emotions]
In one example of the present embodiment, the action information may further include information related to the emotion of the character displayed on the display unit 34 of the terminal device 20. This emotion information may be information specifying, for example, joy or sadness. This emotion information may also include information indicating no emotion (flat).

端末装置20では、受信したアクション情報に含まれる感情の情報を参照して、表示部34に表示する目の画像データを選択する。一例として感情の情報が「Sad」である場合は、端末装置20は目の画像データのうち、涙を流している目のアニメーションの画像データを選択して表示する。 The terminal device 20 refers to the emotion information included in the received action information and selects the image data of the eyes to be displayed on the display unit 34. As an example, when the emotion information is "Sad," the terminal device 20 selects and displays the image data of an animation of crying eyes from the eye image data.

さらに本実施の形態の一例では、アクション情報に含める感情の情報を決定する際に、発話の対象となる文字列情報を生成するサーバ10あるいは端末装置20は、当該文字列情報に含まれる語に基づいて感情を決定してもよい。このような処理は例えば文字列情報に含まれる単語に基づく文字列情報が表す文の極性判断の処理などとして行うことができる。具体的に、ニュースの文字列情報を発話させる場合、悲劇的な事件を表す単語が含まれているときには悲しみの感情を特定する情報とともに、当該ニュースの文字列情報をアクション情報に含める。 Furthermore, in one example of this embodiment, when determining the emotion information to be included in the action information, the server 10 or the terminal device 20 that generates the character string information to be spoken may determine the emotion based on the words included in the character string information. Such processing can be performed, for example, as a process of determining the polarity of the sentence expressed by the character string information based on the words included in the character string information. Specifically, when speaking news character string information, if the news character string information contains words that represent a tragic incident, the news character string information is included in the action information along with information that specifies the emotion of sadness.

[情報の削除]
また、本実施の形態において、会話文キューを記憶するサーバ10または端末装置20は、所定のタイミングごとに会話文キューから、既に経過している発話期間(終了している発話期間)に関連付けられた会話文を削除することとしてもよい。
[Delete information]
In addition, in this embodiment, the server 10 or the terminal device 20 storing the conversation sentence queue may delete conversation sentences associated with speech periods that have already passed (speech periods that have ended) from the conversation sentence queue at predetermined timing.

さらに、会話文キューに格納した情報のうち、会話文生成部44が格納した会話文については、当該会話文が発話されたときに会話文キューから削除してもよい。これにより、同じ会話文が何度も再生されてしまうことを防止する。 Furthermore, among the information stored in the conversation sentence queue, the conversation sentence stored by the conversation sentence generation unit 44 may be deleted from the conversation sentence queue when the conversation sentence is spoken. This prevents the same conversation sentence from being played multiple times.

[スケジュール情報からの取得]
さらに本実施の形態のここまでの説明では、イベント情報取得部43として機能するサーバ10または端末装置20は、ユーザにより入力された音声の内容を表す文字列情報がイベントに関わる情報のパターンに合致する場合に、当該文字列情報から日時情報と、イベント特定情報とを取り出していた。しかしながら本実施の形態はこれに限られない。
[Get from schedule information]
Furthermore, in the above description of the present embodiment, the server 10 or the terminal device 20 functioning as the event information acquisition unit 43 extracts date and time information and event specification information from character string information when character string information representing the contents of the voice input by the user matches a pattern of information related to the event. However, the present embodiment is not limited to this.

本実施の形態の一例では、イベント情報取得部43は、上記の処理に代えて、あるいは上記の処理とともに、予め定められたスケジュール情報を取得して日時情報と、イベント7特定情報とを取り出してもよい。具体的に、イベント情報取得部43として機能するサーバ10または端末装置20は、予めユーザから、ユーザがスケジュール情報を登録するウェブサービスへのアクセス権の設定を受けておく。そして端末装置20は、当該設定に従い、ウェブサービスからスケジュール情報を取得する。 In one example of this embodiment, instead of or in addition to the above process, the event information acquisition unit 43 may acquire predetermined schedule information and extract date and time information and event 7 specific information. Specifically, the server 10 or terminal device 20 functioning as the event information acquisition unit 43 receives in advance from the user settings of access rights to a web service in which the user registers schedule information. The terminal device 20 then acquires schedule information from the web service in accordance with the settings.

このイベント情報取得部43は、ここで取得したスケジュール情報に、日時情報と、当該日時にユーザが関わるイベントを特定するイベント特定情報(例えば「デート」や「仕事」など)が含まれるときに、これら日時情報と、イベント特定情報とを取り出し、会話文生成部44に出力する。 When the schedule information acquired here includes date and time information and event specific information that identifies an event in which the user is involved on that date and time (e.g., "date" or "work"), the event information acquisition unit 43 extracts the date and time information and event specific information and outputs them to the conversation sentence generation unit 44.

この例によると、ユーザとの会話に表れなくても、ユーザの過去の予定に基づいて、会話を提供できる。 In this example, conversations can be provided based on the user's past schedule, even if it does not appear in the conversation with the user.

[発話期間を広くとる場合]
またここまでの説明では、会話文生成部44が、予め会話文全体を生成して会話文キューに蓄積することとしていた。そこで発話期間に応じて、会話の主題である過去のイベントが発生した日までの相対的な指示語(「昨日」、「一昨日」など)を会話文生成部44が予め含めていた。
[When the speech period is wide]
In the above explanation, the conversation sentence generation unit 44 generates the entire conversation sentence in advance and stores it in the conversation sentence queue. Therefore, the conversation sentence generation unit 44 includes in advance a relative demonstrative pronoun (such as "yesterday" or "the day before yesterday") that indicates the day when the past event, which is the subject of the conversation, occurred, according to the utterance period.

しかしながら本実施の形態はこれに限られず、会話文生成部44は、会話文のうち、過去のイベントが発生した日を表す語の位置のみを表す会話文のテンプレートを生成して会話文キューに蓄積しておいてもよい。この場合、会話文が選択された後にアクション情報生成部46の処理において、選択された会話文を発話するべき指示を生成する際に、その時点から、対象となる過去のイベントが発生した日を表す語を生成してもよい。 However, this embodiment is not limited to this, and the conversation sentence generation unit 44 may generate a conversation sentence template that indicates only the position of the word indicating the date on which a past event occurred in the conversation sentence and store it in the conversation sentence queue. In this case, after a conversation sentence is selected, in the processing of the action information generation unit 46, when an instruction to speak the selected conversation sentence is generated, a word indicating the date on which the target past event occurred may be generated from that point on.

この例では、イベント情報取得部43は、イベント管理部42に対して取得したイベント情報を記録させ、当該記録させたイベントを識別する、イベントに固有なイベント識別子を発行させる。 In this example, the event information acquisition unit 43 causes the event management unit 42 to record the acquired event information and issue an event identifier unique to the event that identifies the recorded event.

そして会話文生成部44は、このイベント情報取得部43が取得したイベント情報(日時情報及びイベント特定情報を含む)に関わる会話文の生成時に、過去のイベントが発生した日を表す語の位置のみを表す会話文のテンプレートを生成し、対応するイベント識別子に関連付けて会話文キューに蓄積する。ここで会話文のテンプレートは例えば、「<日時>のデートはどうだった?」のように、日時を特定する語に置き換えるべき符号を含むものとなる。 When generating a conversation related to the event information (including date and time information and event-specific information) acquired by the event information acquisition unit 43, the conversation generation unit 44 generates a conversation template that indicates only the position of a word indicating the date on which a past event occurred, and stores the template in a conversation queue in association with the corresponding event identifier. Here, the conversation template includes a symbol to be replaced with a word specifying the date and time, such as "How was the date on <date and time>?".

その後、アクション情報生成部46が、このイベント識別子に関連付けられた会話文を発話の対象として選択すると、アクション情報生成部46は、当該選択した会話文に関連付けられたイベント識別子を参照して、イベント管理部42から当該イベント識別子に対応するイベント情報(少なくともその日時情報を含む)を取得する。 After that, when the action information generating unit 46 selects the conversational sentence associated with this event identifier as the target for speech, the action information generating unit 46 refers to the event identifier associated with the selected conversational sentence and obtains event information (including at least the date and time information) corresponding to the event identifier from the event management unit 42.

そして現在の日時から見て、当該日時を特定する語を生成して、選択した会話文のうち、日時を特定する語に置き換えるべき符号に置き換える。この語の生成は、予め日数の間隔に基づいて1日であれば「昨日」、2日であれば「一昨日」、3日から6日であれば「この間」、7日から13日であれば「先週」…などとして予め定めておけば、現在の日時と対象となったイベントの発生した日時との差(日数の間隔)に基づいて得ることができる。 Then, a word that specifies the current date and time is generated, and replaced with the code in the selected conversational text that should be replaced with the word that specifies the date and time. This word can be generated based on the difference (the interval in days) between the current date and time and the date and time when the target event occurred, if the interval is predetermined based on the number of days, such as "yesterday" for the 1st, "the day before yesterday" for the 2nd, "the other day" for the 3rd to 6th, "last week" for the 7th to 13th, etc.

そしてアクション情報生成部46は、日時を特定する語を含めた会話文を発話させる指示を含めたアクション情報を生成する。 Then, the action information generating unit 46 generates action information that includes an instruction to speak a conversational sentence that includes a word that specifies the date and time.

[実施形態の特徴]
本実施の形態は、また次のことを特徴とする。すなわち、本実施の形態の一態様は、情報処理装置であって、日時情報に関連付けられた、ユーザのイベントを特定する、「デート」などのイベント特定情報を取得する取得手段と、前記日時情報が表す日時より後の日時に発話する処理において、「先週のデートどうだった」などといった、当該イベント特定情報に関連する会話文である関連会話文を生成する会話文生成手段と、を備える。
[Features of the embodiment]
The present embodiment is also characterized as follows: That is, one aspect of the present embodiment is an information processing device, comprising: an acquisition means for acquiring event specification information such as "date" that specifies a user's event associated with date and time information; and a conversation sentence generation means for generating a related conversation sentence that is a conversation sentence related to the event specification information, such as "How was your date last week?", in a process of uttering at a date and time after the date and time represented by the date and time information.

この情報処理装置は、ユーザごとに提供される端末装置として実装されてもよいし、当該端末装置に通信可能に接続されて上記の各手段を実現するサーバとして実装されてもよい。 This information processing device may be implemented as a terminal device provided for each user, or may be implemented as a server communicatively connected to the terminal device to realize each of the above means.

この例によると、情報処理装置が過去の予定に関する会話文を提供することとなり、過去のイベントについての会話が実現されるため、ユーザにとってよりプライベートな内容の会話を実現でき、親近感を喚起できる。 In this example, the information processing device provides conversational text about past plans, enabling conversation about past events, which allows for conversations of more private nature for the user and elicits a sense of intimacy.

またここで、ユーザから入力される会話文に、予め定められたイベントに関わる「デート」などのイベント関連語と、「来週末」などといった日時を特定する日時関連語とが含まれる場合に、前記イベント関連語に関連する前記イベント特定情報と、前記日時関連語が表す前記日時情報とを関連付けて蓄積する蓄積手段、を備える。 The system further includes a storage means for storing, when a conversational sentence input by a user includes an event-related word such as "date" related to a predetermined event and a date/time-related word specifying a date and time such as "next weekend," the event-specific information related to the event-related word and the date/time information represented by the date/time-related word in association with each other.

この例では、ユーザがスケジュール情報などとして登録せずとも、会話文として入力しているだけでイベントに関する情報が蓄積できる。 In this example, event-related information can be accumulated simply by inputting it as conversation text, without the user having to register it as schedule information or the like.

さらに、前記会話文生成手段は、「先週のデートどうだった?」などといった前記関連会話文を、当該関連会話文を発話する期間を表す情報に関連付けて記録し、前記期間に、現在の日時が含まれる場合に、ユーザから入力される会話文と、当該関連会話文とが連続性を有するか否かが判断され、連続性を有すると判断されたときに、当該関連会話文の発話処理を実行する実行手段と、を含むこととしてもよい。 The conversation sentence generation means may further include an execution means for recording the related conversation sentence, such as "How was your date last week?", in association with information indicating a period during which the related conversation sentence is to be spoken, and for determining whether or not there is continuity between the conversation sentence input by the user and the related conversation sentence when the period includes the current date and time, and for executing speech processing of the related conversation sentence when it is determined that there is continuity.

この例によると、過去の予定に関する会話が、自然に連続すると判断されたタイミングで現れるので、会話が自然になる。 In this example, conversations about past events appear at times that are deemed to be natural continuations, making the conversation sound more natural.

ここで、前記実行手段は、第1の会話文と、第2の会話文と、当該第1,第2の会話文の連続性を表す情報とを互いに関連付けた学習データを用いて機械学習されたニューラルネットワークを用いて、前記受け入れた会話文と、当該関連会話文とが連続性を有するか否かを判定することとしてもよい。 Here, the execution means may determine whether or not the accepted conversational sentence and the related conversational sentence have continuity by using a neural network trained by machine learning using learning data that associates a first conversational sentence, a second conversational sentence, and information indicating the continuity between the first and second conversational sentences.

さらに前記関連会話文が発話されている間、ユーザが、発話を強制的に停止させる動作など、所定の入力を行うと、当該発話を停止することとしてもよい。これにより、発話が適切でない場合に発話を停止できる。 Furthermore, while the related conversation sentence is being spoken, if the user performs a predetermined input, such as an action to forcibly stop the speech, the speech may be stopped. This allows the speech to be stopped when it is inappropriate.

また、前記生成した関連会話文を発話する再生装置と、当該再生装置の近傍に所在する人物を検出する手段をさらに含み、前記再生装置の近傍に所在する人物が単数であるときに限り、前記関連会話文の発話を、前記再生装置に行わせることとしてもよい。これにより、適切でない場面での発話を抑止できる。 The system may further include a playback device that speaks the generated related conversation sentences and a means for detecting a person in the vicinity of the playback device, and may cause the playback device to speak the related conversation sentences only when there is a single person in the vicinity of the playback device. This makes it possible to prevent speech in inappropriate situations.

1 情報処理システム、10 サーバ、11 制御部、12 記憶部、13 通信部、20 端末装置、21 脚部、22 本体部、31 制御部、32 記憶部、33 セン9サ部、34 表示部、35 音声出力部、36 通信部、37 駆動部、41 受信部、42 イベント管理部、43 イベント情報取得部、44 会話文生成部、45 会話履歴管理部、46 アクション情報生成部、47 指示送信部、51 リクエスト送出部、52 アクション情報受信部、53 音声合成部、54 アクション処理実行部。 1 Information processing system, 10 Server, 11 Control unit, 12 Storage unit, 13 Communication unit, 20 Terminal device, 21 Leg unit, 22 Main body unit, 31 Control unit, 32 Storage unit, 33 Sensor unit, 34 Display unit, 35 Audio output unit, 36 Communication unit, 37 Drive unit, 41 Receiving unit, 42 Event management unit, 43 Event information acquisition unit, 44 Conversation sentence generation unit, 45 Conversation history management unit, 46 Action information generation unit, 47 Instruction transmission unit, 51 Request transmission unit, 52 Action information reception unit, 53 Audio synthesis unit, 54 Action processing execution unit.

Claims (6)

プロセッサを備え、
前記プロセッサは、
ユーザからの音声を認識して得られた、前記ユーザのイベントを特定するイベント特定情報と日時情報から、前記イベントより後の日時に発話する、当該イベント特定情報に関連する関連会話文を生成し、
前記イベントより後に、前記ユーザに対して、前記関連会話文の生成前から予め準備された会話文および前記関連会話文を発話
前記イベント特定情報に応じて、前記関連会話文を発話する期間を異ならせる、
情報処理装置。
A processor is provided.
The processor,
generating a related conversation sentence related to the event identification information, which is to be uttered at a date and time after the event, from event identification information and date and time information that are obtained by recognizing the voice of the user;
After the event, speaking to the user a conversation sentence that was prepared before the generation of the related conversation sentence and the related conversation sentence;
a period for uttering the related conversation sentence is varied according to the event identification information;
Information processing device.
前記プロセッサは、
発話条件を満たした時に前記会話文および前記関連会話文を発話する、請求項1に記載の情報処理装置。
The processor,
The information processing apparatus according to claim 1 , wherein the conversation sentence and the related conversation sentence are uttered when an utterance condition is satisfied.
前記プロセッサは、
前記会話文および前記関連会話文を発話する際に、会話の履歴に続く文としての妥当性を表す数値が予め定めたしきい値を超える数値となるときに、発話を継続する、請求項1または2に記載の情報処理装置。
The processor,
3 . The information processing device according to claim 1 , further comprising: a processor configured to: (a) generate a conversation sentence and a related conversation sentence; and (b) continue speaking the conversation sentence when a numerical value representing a validity of the conversation sentence as a sentence following a conversation history exceeds a predetermined threshold value.
プロセッサに、ユーザからの音声を認識して得られた、前記ユーザのイベントを特定するイベント特定情報と日時情報から、前記イベントより後の日時に発話する、当該イベント特定情報に関連する関連会話文を生成させ、
プロセッサに、前記イベントより後に、前記ユーザに対して、前記関連会話文の生成前から予め準備された会話文および前記関連会話文を発話させ、
前記イベント特定情報に応じて、前記関連会話文を発話する期間を異ならせる、
プログラム。
a processor that generates, from event identification information and date and time information that identify an event of the user obtained by recognizing the voice of the user, a related conversation sentence that is to be uttered at a date and time after the event and that is related to the event identification information;
having a processor speak, to the user after the event, a prepared conversation sentence and the related conversation sentence that have been prepared before the generation of the related conversation sentence ;
a period for uttering the related conversation sentence is varied according to the event identification information;
program.
プロセッサが、ユーザからの音声を認識して得られた、前記ユーザのイベントを特定するイベント特定情報と日時情報から、前記イベントより後の日時に発話する、当該イベント特定情報に関連する関連会話文を生成し、
プロセッサが、前記イベントより後に、前記ユーザに対して、前記関連会話文の生成前から予め準備された会話文および前記関連会話文を発話し、
前記イベント特定情報に応じて、前記関連会話文を発話する期間を異ならせる、
方法。
a processor generates a related conversation sentence related to the event identification information, which is to be uttered at a date and time after the event, from event identification information and date and time information that identify the event of the user , obtained by recognizing the voice of the user;
a processor, after the event, speaking to the user a prepared conversation sentence and the related conversation sentence that were prepared before the related conversation sentence was generated ;
a period for uttering the related conversation sentence is varied according to the event identification information;
method.
サーバと端末とを備え、
前記サーバは、
ユーザからの音声を認識して得られた、前記ユーザのイベントを特定するイベント特定情報と日時情報から、前記イベントより後の日時に発話する、当該イベント特定情報に関連する関連会話文を生成し、
前記イベントより後に、前記端末に対して、前記関連会話文の生成前から予め準備された会話文および前記関連会話文を発話させ、
前記イベント特定情報に応じて、前記関連会話文を発話する期間を異ならせる、
システム。
A server and a terminal are provided,
The server,
generating a related conversation sentence related to the event identification information, which is to be uttered at a date and time after the event, from event identification information and date and time information that are obtained by recognizing the voice of the user;
After the event, the terminal is caused to speak the conversation sentence that was prepared before the related conversation sentence was generated and the related conversation sentence ;
a period for uttering the related conversation sentence is varied according to the event identification information;
system.
JP2024012081A 2020-01-23 2024-01-30 Information processing device and program Active JP7598076B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2024012081A JP7598076B2 (en) 2020-01-23 2024-01-30 Information processing device and program
JP2024201730A JP7835994B2 (en) 2020-01-23 2024-11-19 Information processing device and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020009102A JP7436804B2 (en) 2020-01-23 2020-01-23 Information processing device and program
JP2024012081A JP7598076B2 (en) 2020-01-23 2024-01-30 Information processing device and program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020009102A Division JP7436804B2 (en) 2020-01-23 2020-01-23 Information processing device and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2024201730A Division JP7835994B2 (en) 2020-01-23 2024-11-19 Information processing device and program

Publications (2)

Publication Number Publication Date
JP2024054168A JP2024054168A (en) 2024-04-16
JP7598076B2 true JP7598076B2 (en) 2024-12-11

Family

ID=77174933

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2020009102A Active JP7436804B2 (en) 2020-01-23 2020-01-23 Information processing device and program
JP2024012081A Active JP7598076B2 (en) 2020-01-23 2024-01-30 Information processing device and program
JP2024201730A Active JP7835994B2 (en) 2020-01-23 2024-11-19 Information processing device and program

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2020009102A Active JP7436804B2 (en) 2020-01-23 2020-01-23 Information processing device and program

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2024201730A Active JP7835994B2 (en) 2020-01-23 2024-11-19 Information processing device and program

Country Status (1)

Country Link
JP (3) JP7436804B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017130496A1 (en) 2016-01-25 2017-08-03 ソニー株式会社 Communication system and communication control method
JP2017208003A (en) 2016-05-20 2017-11-24 日本電信電話株式会社 Dialogue method, dialogue system, dialogue device, and program
WO2018003196A1 (en) 2016-06-27 2018-01-04 ソニー株式会社 Information processing system, storage medium and information processing method
JP2019020775A (en) 2017-07-11 2019-02-07 株式会社Nttドコモ Information processing device

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010020531A (en) 2008-07-10 2010-01-28 Sharp Corp Conversation apparatus and conversation method
JP2010092358A (en) 2008-10-09 2010-04-22 Nippon Telegr & Teleph Corp <Ntt> Episodic memory-recall support system, episodic memory-recall support method, and program
JP6355974B2 (en) 2014-05-30 2018-07-11 シャープ株式会社 Speech apparatus, speech control apparatus, speech control system, speech apparatus control method, speech control apparatus control method, and control program
US20190311716A1 (en) 2016-10-06 2019-10-10 Sharp Kabushiki Kaisha Dialog device, control method of dialog device, and a non-transitory storage medium
US20210280181A1 (en) 2017-01-31 2021-09-09 Sony Corporation Information processing apparatus, information processing method, and program
JP2018185362A (en) 2017-04-24 2018-11-22 富士ソフト株式会社 Robot and control method thereof
JP6738769B2 (en) 2017-04-27 2020-08-12 日本電信電話株式会社 Sentence pair classification device, sentence pair classification learning device, method, and program
WO2019098038A1 (en) 2017-11-15 2019-05-23 ソニー株式会社 Information processing device and information processing method
WO2019187590A1 (en) 2018-03-29 2019-10-03 ソニー株式会社 Information processing device, information processing method, and program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017130496A1 (en) 2016-01-25 2017-08-03 ソニー株式会社 Communication system and communication control method
US20190027142A1 (en) 2016-01-25 2019-01-24 Sony Corporation Communication system and communication control method
JP2017208003A (en) 2016-05-20 2017-11-24 日本電信電話株式会社 Dialogue method, dialogue system, dialogue device, and program
WO2018003196A1 (en) 2016-06-27 2018-01-04 ソニー株式会社 Information processing system, storage medium and information processing method
US20190163961A1 (en) 2016-06-27 2019-05-30 Sony Corporation Information processing system, storage medium, and information processing method
JP2019020775A (en) 2017-07-11 2019-02-07 株式会社Nttドコモ Information processing device

Also Published As

Publication number Publication date
JP2021117580A (en) 2021-08-10
JP2024054168A (en) 2024-04-16
JP2025015772A (en) 2025-01-30
JP7436804B2 (en) 2024-02-22
JP7835994B2 (en) 2026-03-26

Similar Documents

Publication Publication Date Title
EP3970139B1 (en) Detection and/or enrollment of hot commands to trigger responsive action by automated assistant
JP6469252B2 (en) Account addition method, terminal, server, and computer storage medium
CN111696559B (en) Providing emotion management assistance
EP3210096B1 (en) Method and system for automation of response selection and composition in dialog systems
CN101297355B (en) Systems and methods for responding to spoken expressions of natural language speech
JP7230806B2 (en) Information processing device and information processing method
TW201203222A (en) Voice stream augmented note taking
US12243517B1 (en) Utterance endpointing in task-oriented conversational systems
JP2014222290A (en) Minutes recording device, minutes recording method and program
US20220020368A1 (en) Output apparatus, output method and non-transitory computer-readable recording medium
JP7733329B2 (en) Information processing device and program
EP3573051A1 (en) Information processing device, information processing method, and program
US20210166685A1 (en) Speech processing apparatus and speech processing method
JPWO2018043138A1 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND PROGRAM
CN119091883A (en) Voice robot interaction method, device, medium, program product and terminal based on integrated ASR
JP6347939B2 (en) Utterance key word extraction device, key word extraction system using the device, method and program thereof
US20220328033A1 (en) Road map for audio presentation of communications
JP7598076B2 (en) Information processing device and program
CN113950698B (en) Audio presentation for conversation threads
JP7836140B1 (en) Meeting support system and meeting support method
US20250348521A1 (en) Memory Assistant System
EP4428854A1 (en) Method for providing voice synthesis service and system therefor
JP7529407B2 (en) Speech content display device, speech content display system, speech content display method, and speech content display program
JP7510042B2 (en) Information processing system, terminal device, terminal device control method, and program
WO2019054009A1 (en) Information processing device, information processing method and program

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240220

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240917

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240930

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241022

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: 20241029

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241111

R150 Certificate of patent or registration of utility model

Ref document number: 7598076

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150