WO2020116026A1 - 応答処理装置、応答処理方法及び応答処理プログラム - Google Patents
応答処理装置、応答処理方法及び応答処理プログラム Download PDFInfo
- Publication number
- WO2020116026A1 WO2020116026A1 PCT/JP2019/040156 JP2019040156W WO2020116026A1 WO 2020116026 A1 WO2020116026 A1 WO 2020116026A1 JP 2019040156 W JP2019040156 W JP 2019040156W WO 2020116026 A1 WO2020116026 A1 WO 2020116026A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- response
- user
- processing device
- response processing
- Prior art date
Links
- 230000004044 response Effects 0.000 title claims abstract description 789
- 238000012545 processing Methods 0.000 title claims abstract description 501
- 238000003672 processing method Methods 0.000 title claims description 5
- 230000009471 action Effects 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 13
- 230000008451 emotion Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 description 88
- 238000000034 method Methods 0.000 description 63
- 230000008569 process Effects 0.000 description 49
- 239000003795 chemical substances by application Substances 0.000 description 37
- 238000004891 communication Methods 0.000 description 27
- 230000006399 behavior Effects 0.000 description 21
- 230000010365 information processing Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 17
- 238000010411 cooking Methods 0.000 description 16
- 230000004913 activation Effects 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 11
- 230000033001 locomotion Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000009434 installation Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 206010047571 Visual impairment Diseases 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000001556 precipitation Methods 0.000 description 6
- 208000029257 vision disease Diseases 0.000 description 6
- 230000004393 visual impairment Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000003213 activating effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000009118 appropriate response Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 206010002953 Aphonia Diseases 0.000 description 1
- 230000004308 accommodation Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 208000016354 hearing loss disease Diseases 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
- G10L25/63—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/011—Emotion or mood input determined on the basis of sensed human body parameters such as pulse, heart rate or beat, temperature of skin, facial expressions, iris, voice pitch, brain activity patterns
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/226—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
- G10L2015/227—Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology
Definitions
- the present disclosure relates to a response processing device, a response processing method, and a response processing program. Specifically, the present invention relates to response processing for users who use a plurality of information devices.
- the device that integrally controls the system receives a processing request to each information device, and executes the process according to the function of each information device, thereby efficiently performing the process of the entire system.
- each information device merely determines whether or not the processing request can be accepted. For example, when each information device receives a user's request and performs processing, a request from the user is not received. The processing is not always performed in a responsive manner.
- the present disclosure proposes a response processing device, a response processing method, and a response processing program that can improve user convenience.
- a response processing device includes an acquisition unit that acquires, from a user, input information that is information that triggers the information device to generate a response, and a plurality of information devices.
- a selection unit that selects an information device that generates a response corresponding to the input information, and an output control that controls the output of a response that corresponds to the input information and that is generated by the selected information device.
- FIG. 3 is a flowchart showing a flow of processing according to the first embodiment of the present disclosure. It is a figure showing an example of information processing concerning a 2nd embodiment of this indication. It is a figure which shows an example of the database which concerns on the 2nd Embodiment of this indication.
- First Embodiment 1-1 Example of response process according to first embodiment 1-2. Configuration of response processing system according to first embodiment 1-3. Procedure of response process according to first embodiment 1-4. Modification of the first embodiment 2. Second embodiment 2-1. Example of response process according to second embodiment 2-2. Modification of the second embodiment 3. Third embodiment 4. Fourth Embodiment 5. Other Embodiments 6. Effect of response processing device according to the present disclosure 7. Hardware configuration
- FIG. 1 is a diagram (1) illustrating an example of response processing according to the first embodiment of the present disclosure.
- the information processing according to the first embodiment of the present disclosure is executed by the response processing device 100 illustrated in FIG.
- the response processing device 100 is an example of the response processing device according to the present disclosure.
- the response processing device 100 is a so-called IoT (Internet of Things) device, and performs various information processing in cooperation with an external device such as a cloud server.
- the response processing device 100 is a device that interacts with the user, and performs various information processing such as voice recognition and response generation to the user.
- the voice recognition and voice response processing executed by the response processing apparatus 100 may be referred to as an agent function.
- the response processing device 100 may also be referred to as an agent device.
- the first embodiment shows an example in which the response processing device 100 is a so-called smart speaker.
- the response processing device 100 may include not only a speaker unit that outputs a sound but also a display unit (a liquid crystal display or the like) that outputs an image or the like.
- the response processing device 100 may be a smartphone, a tablet terminal, or the like. In this case, the smartphone or the tablet terminal functions as the response processing device 100 according to the present disclosure by executing the program (application) for realizing the response processing of the present disclosure.
- the response processing device 100 may be a wearable device such as a watch-type terminal or eyeglass-type terminal other than a smartphone or a tablet terminal. Further, the response processing device 100 may be realized by various smart devices having an information processing function.
- the response processing device 100 is a smart home electric appliance such as a television, an air conditioner, or a refrigerator, a smart vehicle such as a car, an autonomous robot such as a drone, a pet robot, or a humanoid robot. Good.
- the response processing device 100 is assumed to be installed in the home where the user who uses the response processing device 100 lives.
- the response processing device 100 executes a response process to information (hereinafter, referred to as “input information”) that is a trigger for generating a response, such as a collected voice and a user action.
- input information information
- the response processing device 100 recognizes a question posed by the user, outputs an answer to the question by voice, and displays information about the question on the screen.
- voice recognition process, the output process, and the like executed by the response processing device 100 may be used for the voice recognition process, the output process, and the like executed by the response processing device 100.
- the user uses the response processing device 100 and information devices such as the terminal 10A, the terminal 10B, and the terminal 10C.
- the terminals 10A, 10B, and 10C are various information devices having an agent function.
- the terminal 10A, the terminal 10B, and the terminal 10C are information devices developed by various manufacturers, and each is an information device that cooperates with a different cloud server or the like and can be used as an agent device.
- terminal 10 when it is not necessary to distinguish individual terminals such as the terminal 10A, the terminal 10B, and the terminal 10C, they are collectively referred to as "terminal 10".
- a startup word for starting the use of the agent function is set for each agent device. For this reason, when using a plurality of agent devices, the user needs to issue an activation word corresponding to each agent device.
- each agent device accesses a different service and gets an answer when, for example, a question is received from a user. Specifically, when each agent device is asked by the user for weather information, each agent device accesses a different weather information service and obtains a different answer. For this reason, it is difficult for the user to determine whether or not the agent device that answers the question emits information that the agent device wanted to know (for example, ultraviolet ray information and pollen information). In addition, depending on the agent device, it may not be possible to access the service for obtaining the answer queried by the user, and it may be impossible to generate the answer. If an appropriate answer is not obtained, the user needs to ask the same question to different agent devices.
- each agent device has various different performances and functions such as whether or not image output is possible and whether or not audio output is possible.
- performances and functions such as whether or not image output is possible and whether or not audio output is possible.
- the response processing device 100 solves the above problem by the response processing described below.
- the response processing device 100 functions as a front-end device for a plurality of agent devices and collectively receives interactions with the user. For example, the response processing device 100 analyzes the content of the question received from the user and selects the agent device that generates the response. As an example, the response processing device 100 refers to the functions and performances of a plurality of cooperating agent devices and selects an agent device that is assumed to generate the most appropriate response to the user's question. Thereby, the response processing device 100 can improve the accuracy with which the response desired by the user is generated. In addition, the response processing device 100 determines a mode in which the response generated by the selected agent device is output.
- the response processing device 100 receives the generated response (for example, voice data), detects the position of the user, and transmits the response to another agent device installed at a position closest to the user. Then, the response processing device 100 controls the agent device that receives the response and outputs the response. As a result, the response processing device 100 can output a response from the agent device located closest to the user, so that the information can be appropriately transmitted to the user.
- the generated response for example, voice data
- the response processing device 100 controls the agent device that receives the response and outputs the response.
- the response processing device 100 can output a response from the agent device located closest to the user, so that the information can be appropriately transmitted to the user.
- the response processing device 100 behaves as a front-end device for a plurality of agent devices and controls response generation and output to improve user convenience.
- an example of the response process of the first embodiment according to the present disclosure will be described along the flow with reference to FIGS. 1 to 6.
- the response processing device 100 is assumed to cooperate with each of the terminals 10A, 10B, and 10C.
- the response processing device 100 may include a startup word for activating the terminals 10A, 10B, and 10C, and a format in which each receives a voice (for example, a voice API (Application Programming Interface that can be processed by each agent device). Information such as)) is stored as a database.
- a voice for example, a voice API (Application Programming Interface that can be processed by each agent device).
- Information such as) is stored as a database.
- the response processing device 100 also accepts in advance from the user the setting of the activation word for activating its own device. For example, it is assumed that the response processing device 100 accepts the voice input “hello” as the activation word.
- the response processing apparatus 100 starts the response processing of its own apparatus when the voice A01 “Hello” is input by the user (step S1).
- the response processing device 100 activates each of the associated terminals 10 triggered by the voice A01.
- the response processing device 100 converts the information indicating that “the voice A01 has been input by the user” into information corresponding to the activation word of the terminal 10A, and transmits the converted information A02 to the terminal 10A.
- the information corresponding to the activation word of the terminal 10A may be voice data for actually activating the terminal 10A or a script (program) for activating the terminal 10A.
- the response processing device 100 uses a home network such as Wi-Fi (registered trademark) or wireless communication such as Bluetooth (registered trademark) to transmit the information A02 to the terminal 10A.
- the user can activate the terminal 10 ⁇ /b>A in conjunction with it by simply inputting the activation word voice A ⁇ b>01 to the response processing device 100.
- the response processing device 100 converts the information indicating that “the voice A01 is input by the user” into information corresponding to the activation word of the terminal 10B, and transmits the converted information A03 to the terminal 10B (step). S3). In addition, the response processing device 100 converts the information indicating that “the voice A01 has been input by the user” into information corresponding to the activation word of the terminal 10C, and transmits the converted information A04 to the terminal 10C (step S4). ).
- the response processing device 100 when the response processing device 100 recognizes the activation word of the device itself, the response processing device 100 activates each of the terminal 10A, the terminal 10B, and the terminal 10C that cooperate with each other. As a result, the user can activate all the devices installed at home without issuing the activation word to all the devices with which the user is about to interact.
- the response processing device 100 may accept a setting from the user that individually specifies the terminals 10 that are not activated in association with the device itself. This allows the user to distinguish between the terminal 10 that is activated in conjunction with the terminal 10 that is not activated.
- FIG. 2 is a diagram (2) illustrating an example of response processing according to the first embodiment of the present disclosure.
- the user who has activated the response processing device 100 in the example of FIG. 1 continuously inputs a question to the response processing device 100.
- the user inputs a voice A11 including the content of the utterance to the response processing device 100 by uttering “Tell me the recipe of cooking XXX”.
- the response processing device 100 starts the response process using the voice A11 as input information (step S11). Specifically, the response processing device 100 acquires the voice A11, and includes the voice A11 through automatic voice recognition (ASR (Automatic Speech Recognition)) processing and natural language understanding (NLU (Natural Language Understanding)) processing. Analyze user questions. For example, when the voice A11 includes the question intent from the user, the response processing apparatus 100 recognizes the question intent as input information and starts a process for outputting an answer to the question intent as a response. ..
- ASR Automatic Speech Recognition
- NLU Natural Language Understanding
- the response processing device 100 recognizes that the user's question intent is “recipe search for cooking XXX”. In this case, the response processing device 100 first determines whether or not “recipe search for cooking XXX” is possible with the device itself. The response processing device 100 may generate a response to the user and output the response from the device itself when the device itself is capable of “recipe search for cooking XXX”.
- the response processing device 100 When the response processing device 100 cannot perform the “recipe search for food XXX”, for example, when the service for performing the “recipe search” cannot be accessed or when the “recipe for food XXX” cannot be found, the response processing device 100. Transmits the user's question to the cooperating terminal 10A or the like. That is, the response processing device 100 transmits the “recipe search for cooking XXX”, which is the intention of the user's question, to the terminal 10A or the like, and causes the search to be performed instead of the own device.
- the response processing device 100 transmits, to the terminal 10A, the information A12 indicating “recipe search for cooking XXX” which is the intention of the user's question (step S12).
- the response processing device 100 converts the voice A11 received from the user into information A12 indicating “recipe search for cooking XXX” so as to correspond to, for example, the voice API of the terminal 10A. That is, the response processing device 100 converts the voice A11 into the information A12 in a format that can be recognized by the terminal 10A, and then transmits the information A12 to the terminal 10A. This means the same situation as when the terminal 10A receives the utterance "Tell me the recipe of cooking XXX" from the user.
- the response processing device 100 converts the voice A11 into the information A13 in a format that can be recognized by the terminal 10B, and then transmits the information A13 to the terminal 10B (step S13).
- the response processing device 100 converts the voice A11 into the information A14 in a format that can be recognized by the terminal 10C, and then transmits the information A14 to the terminal 10C (step S14). That is, the response processing device 100 selects the terminal 10A, the terminal 10B, and the terminal 10C as agent devices that generate a response to the user's question.
- the response processing device 100 receives a reply from the terminal 10A, the terminal 10B, or the terminal 10C as to whether or not the answer to the user's question can be generated.
- the terminal 10B transmits a reply indicating that it is possible to generate an answer to the user's question to the response processing device 100 (step S15).
- the terminals 10A and 10C may transmit to the response processing device 100 that it is impossible to generate an answer to the user's question.
- the response processing device 100 Upon receiving a reply from the terminal 10B, the response processing device 100 selects the terminal 10B as an agent device that generates a response output to the user. In this case, the response processing device 100 outputs a voice notifying the user of the terminal 10B that is the output destination. For example, the response processing device 100 outputs the voice A15 including the content “output from the terminal 10B” to the user. After that, the response processing device 100 controls the terminal 10B to output the recipe searched by the terminal 10B by voice.
- the response processing device 100 may acquire voice data to be output from the terminal 10B from the terminal 10B by using the voice API common to the terminal 10B. In this case, the response processing device 100 may output the voice by itself, instead of outputting the voice from the terminal 10B. As a result, the user can obtain the information by voice output from the response processing device 100 even if the information is actually retrieved by the terminal 10B, so that the user does not have to be aware of the terminal 10B or the like other than the response processing device 100. Can interact.
- FIG. 3 is a diagram (3) illustrating an example of response processing according to the first embodiment of the present disclosure.
- the response processing device 100 acquires the voice A16 including the content “Tell me the recipe of cooking XXX” from the user (step S16).
- the response processing device 100 has a database DB01 that stores the functions that each terminal 10 can execute.
- the response processing apparatus 100 determines that the user's intention is “recipe search” through the ASR process and the NLU process for the voice A16, the response processing device 100 refers to the database DB01 and can perform the “recipe search”. Extract 10.
- the response processing device 100 refers to the database DB01 and recognizes that the terminals 10A and 10C do not have a recipe search function, and that the terminal 10B has a recipe search function. In this case, the response processing device 100 does not transmit information to the terminals 10A and 10C, selects the terminal 10B, and transmits the information A17 indicating the intention of the user (step S17).
- the terminal 10B transmits a reply to the effect that the response to the information A17 can be generated to the response processing device 100 (step S18).
- the response processing device 100 outputs the voice A18 including the content such as “output from the terminal 10B.” to the user and outputs the recipe from the terminal 10B by voice, as in the example of FIG.
- the response processing device 100 may check the function of each terminal 10 in advance and transmit the user's request only to the terminal 10 estimated to be capable of generating a response.
- the response processing device 100 does not need to generate useless communication, so that it is possible to reduce the communication load and speed up information processing.
- FIG. 4 is a diagram (4) illustrating an example of the response process according to the first embodiment of the present disclosure.
- the response processing device 100 acquires the voice A21 including the content “Tell me the recipe of cooking XXX” from the user (step S21).
- the response processing device 100 transmits the information A22 indicating the intention of the user to the terminal 10B (step S22).
- the terminal 10B transmits, to the response processing device 100, a reply indicating that it is possible to generate a response to the information A22 (step S23).
- the response processing device 100 acquires the context of the user when outputting the response.
- the user context is, for example, information indicating the current user situation.
- the response processing device 100 acquires, as the context, the position of the user captured by the camera provided in the device itself, the situation of the user obtained by recognizing the image captured by the camera, and the like. Specifically, the response processing device 100 acquires the context in which the user is in the “kitchen” state and the user is “working”, for example, when both hands are closed.
- the response processing device 100 determines the mode of outputting the response according to the acquired context. For example, when the terminal 10B is located in the kitchen, the response processing device 100 determines to output the response generated by the terminal 10B at the terminal 10B.
- the response processing device 100 controls the terminal 10B so that the response is output as an image together with voice so that the user does not have to stop his hand.
- the terminal 10B outputs the generated response (recipe information) to the wall by operating the projector function and projecting the image on the wall of the kitchen. Further, the terminal 10B outputs the generated response by voice. Further, the response processing device 100 outputs the voice A23 including the content such as "output from the terminal 10B" to the user, as in the example of FIG.
- the response processing device 100 may determine the mode of outputting the response according to the context of the user.
- the response processing device 100 causes, for example, the terminal 10 located near the user to output the response, or selects the type of response information (voice, image, moving image, or the like) according to the user's situation.
- the response processing device 100 can realize a dialogue system with higher usability.
- FIG. 5 is a diagram (5) illustrating an example of response processing according to the first embodiment of the present disclosure.
- the response processing device 100 acquires the voice A25 including the content of “Tell me today's weather” from the user (step S31).
- the response processing device 100 determines that the user's intention is “search for today's weather information” through the ASR process and the NLU process for the voice A25, the response processing device 100 transmits the user's intention to each terminal 10.
- the response processing device 100 transmits the information A26 in the format corresponding to the terminal 10A to the terminal 10A (step S32). In addition, the response processing device 100 transmits the information A27 in the format corresponding to the terminal 10B to the terminal 10B (step S33). Further, the response processing device 100 transmits the information A28 in the format corresponding to the terminal 10C to the terminal 10C (step S34).
- the terminal 10A transmits the retrieved weather information to the response processing device 100 as a response corresponding to the information A26 (step S35).
- the terminal 10B transmits the retrieved weather information to the response processing device 100 as a response corresponding to the information A27 (step S36).
- the terminal 10C transmits the retrieved weather information to the response processing device 100 as a response corresponding to the information A28 (step S37).
- the response processing device 100 acquires different responses (weather information) from each of the terminal 10A, the terminal 10B, and the terminal 10C.
- the database DB02 shown in FIG. 5 shows information included in the response acquired by the response processing device 100.
- the weather information acquired by the terminal 10A can be “displayed on the screen”, can be output as “voice”, and includes “probability of precipitation” and “pollen information”. "Information” is not included.
- the weather information acquired by the terminal 10B can be “displayed on the screen”, can be “voice output”, and includes “probability of precipitation”, but includes “ultraviolet information” and “pollen information”. It shows that there is no.
- the weather information acquired by the terminal 10C can be “voice output” and includes “precipitation probability”, “ultraviolet information”, and “pollen information”, but the weather information is displayed as a still image or a video. It indicates that such "screen display” cannot be performed.
- the response processing device 100 refers to the database DB02 and determines which response is output to the user. For example, the response processing device 100 may output the weather information of the terminal 10C, which includes many pieces of information such as “precipitation probability”, “ultraviolet information”, and “pollen information” among the acquired weather information. Alternatively, the response processing device 100 may output the weather information of the terminal 10A or the terminal 10B that can be displayed on the screen among the acquired weather information. The response processing device 100 outputs the voice A29 including the weather information determined to be output and the screen included in the weather information. Alternatively, the response processing device 100 may control the terminal 10A or the like to output the weather information.
- the response processing device 100 may acquire a plurality of responses and determine the response to be output to the user from the acquired responses. For example, the response processing device 100 may determine the response to be actually output to the user according to the information amount and quality of the acquired response. As a result, the response processing device 100 can select and output an appropriate response from a plurality of responses, so that it becomes easy to implement the response processing that the user desires. Further, the response processing device 100 may generate a response by appropriately combining or combining information obtained from a plurality of sources. Specifically, the response processing device 100 may combine a part of the image information and the sound information obtained from different terminals 10 or may edit and combine the respective parts of the plurality of sound information.
- FIG. 6 is a diagram (6) illustrating an example of response processing according to the first embodiment of the present disclosure.
- the response processing device 100 cooperates with the terminal 10A, a terminal 10D that is a pet robot, a terminal 10E that is a humanoid robot, a robot 10F that is a gripping robot, and the like.
- the response processing device 100 acquires the voice A31 including the content “Tell me today's weather” from the user (step S41).
- the response processing apparatus 100 determines that the user's intention is “search for today's weather information” through the ASR processing and the NLU processing for the voice A31, the response processing apparatus 100 transmits the user's intention to each terminal 10.
- the response processing device 100 transmits the user's intention converted into the format corresponding to the terminal 10A to the terminal 10A (step S42). In addition, the response processing device 100 transmits the user's intention converted into the format corresponding to the terminal 10D to the terminal 10D (step S43). In addition, the response processing device 100 transmits the user's intention converted into the format corresponding to the terminal 10E to the terminal 10E (step S44). In addition, the response processing device 100 transmits the user's intention converted into the format corresponding to the terminal 10F to the terminal 10F (step S45).
- the terminal 10A transmits the retrieved weather information to the response processing device 100 (step S46).
- the terminal 10D transmits to the response processing device 100 that the motion corresponding to the retrieved weather information is performed (step S47). For example, when the retrieved weather information is sunny, the terminal 10D notifies the response processing device 100 that a motion indicating joy will be performed. Further, the terminal 10E notifies the response processing device 100 that the retrieved weather information can be output by voice (step S48). Note that the terminal 10F may transmit that it cannot respond to the weather information, or may return error information indicating that the user's intention cannot be understood.
- the response processing device 100 determines the mode of the response output to the user based on the information transmitted from each terminal 10. For example, the response processing device 100 outputs a voice A32 indicating weather information by itself. In addition, the response processing device 100 controls the terminal 10A to output weather information with a screen display. In addition, the response processing device 100 controls the terminal 10D to output a motion indicating joy. In addition, the response processing device 100 controls the terminal 10E to output a voice indicating weather information.
- the response processing device 100 does not necessarily output only one piece of weather information from one terminal 10 but may output a plurality of different responses by utilizing the characteristics of each terminal 10. Thus, the user can confirm various responses output by various terminals 10 with only one dialogue with the response processing device 100.
- the response processing device 100 acquires input information, which is information that is a trigger for each terminal 10 to generate a response, from the user, and the response information of the plurality of terminals 10 is acquired. Of these, one or more terminals 10 that generate a response corresponding to the input information are selected. Furthermore, the response processing device 100 controls the output of the response corresponding to the input information, which is generated by the selected terminal 10.
- the response processing device 100 performs the front-end function of controlling the plurality of terminals 10, so that the user interacts only with the response processing device 100, and the information acquired by the plurality of terminals 10 and the output You can get a response to.
- the response processing device 100 can improve the convenience of the user.
- FIG. 7 is a diagram illustrating a configuration example of the response processing system 1 according to the first embodiment of the present disclosure.
- the response processing system 1 includes a terminal 10, a response processing device 100, and an external server 200.
- the terminal 10, the response processing device 100, and the external server 200 are communicably connected by wire or wirelessly via a network N (for example, the Internet) illustrated in FIG. 7.
- a network N for example, the Internet
- the response processing system 1 may include a plurality of terminals 10 and external servers 200.
- the terminal 10 is an information processing terminal used by the user.
- the terminal 10 is a so-called agent device, and interacts with the user and generates a response to a voice, a motion, or the like uttered by the user.
- the terminal 10 may include all or part of the configuration of the response processing device 100 described below.
- the external server 200 is a service server that provides various services.
- the external server 200 provides weather information, traffic information, etc. according to a request from the terminal 10 or the response processing device 100.
- the response processing device 100 is an information processing terminal that executes response processing according to the present disclosure. As illustrated in FIG. 7, the response processing device 100 includes a sensor 20, an input unit 21, a communication unit 22, a storage unit 30, an acquisition unit 40, a selection unit 50, and an output unit 60.
- the sensor 20 is a device for detecting various information.
- the sensor 20 includes, for example, a voice input sensor 20A that collects a voice uttered by the user.
- the voice input sensor 20A is, for example, a microphone.
- the sensor 20 also includes, for example, an image input sensor 20B.
- the image input sensor 20B is, for example, a camera for capturing an image of the user or the situation inside the user's home.
- the sensor 20 may include a touch sensor that detects that the user touches the response processing device 100, an acceleration sensor, a gyro sensor, or the like. Further, the sensor 20 may include a sensor that detects the current position of the response processing device 100. For example, the sensor 20 receives radio waves transmitted from a GPS (Global Positioning System) satellite, detects position information (for example, latitude and longitude) indicating the current position of the response processing device 100 based on the received radio waves. Good.
- GPS Global Positioning System
- the senor 20 may include a radio wave sensor that detects a radio wave emitted by an external device, an electromagnetic wave sensor that detects an electromagnetic wave, and the like. Further, the sensor 20 may detect the environment in which the response processing device 100 is placed. Specifically, the sensor 20 detects an illuminance sensor that detects the illuminance around the response processing device 100, a humidity sensor that detects the humidity around the response processing device 100, and a magnetic field at the location of the response processing device 100. It may include a geomagnetic sensor or the like.
- the senor 20 does not necessarily have to be provided inside the response processing device 100.
- the sensor 20 may be installed outside the response processing device 100 as long as the sensor 20 can transmit information sensed using communication or the like to the response processing device 100.
- the input unit 21 is a device for receiving various operations from the user.
- the input unit 21 is realized by a keyboard, a mouse, a touch panel, or the like.
- the communication unit 22 is realized by, for example, a NIC (Network Interface Card) or the like.
- the communication unit 22 is connected to the network N in a wired or wireless manner, and transmits/receives information to/from the terminal 10, the external server 200, or the like via the network N.
- the storage unit 30 is realized by, for example, a semiconductor memory device such as a RAM (Random Access Memory) or a flash memory (Flash Memory), or a storage device such as a hard disk or an optical disk.
- the storage unit 30 has a user information table 31, a terminal information table 32, and a function table 33.
- each data table will be described in order.
- the user information table 31 stores information about users who use the response processing device 100.
- FIG. 8 shows an example of the user information table 31 according to the first embodiment.
- FIG. 8 is a diagram showing an example of the user information table 31 according to the first embodiment of the present disclosure.
- the user information table 31 has items such as “user ID”, “user attribute information”, and “history information”.
- the “user ID” indicates identification information for identifying a user.
- the “user attribute information” indicates various kinds of user information registered by the user when the response processing apparatus 100 is used.
- the item of the user attribute information is conceptually described as “F01”, but in reality, the user attribute information includes the age and sex of the user, the place of residence, and the family composition. Attribute information (user profile) such as is included.
- the user attribute information may include information necessary for selecting the type of information to be output, such as that the user has visual impairment.
- the response processing device 100 may convert the content of the response normally displayed on the screen into a voice and output the voice. For such conversion, a known technique such as TTS (text-to-speech) processing may be used.
- TTS text-to-speech
- “History information” indicates the usage history of the response processing device 100 of the user.
- the history information item is conceptually described as “G01”, but in reality, the history information includes the content of the question asked by the user to the response processing device 100 and the response. And various kinds of information such as a history of output responses. Further, the history information may include voiceprint information and waveform information for identifying the user by voice.
- the user identified by the user ID “U01” has user attribute information “F01” and history information “G01”.
- the “history information” shown in FIG. 8 may include information indicating the past behavior of the user.
- FIG. 9 shows an example of user behavior information included in the history information.
- FIG. 9 is a diagram showing an example of the behavior information table 31A according to the first embodiment of the present disclosure.
- the behavior information table 31A has items such as “user ID”, “time”, “position”, “motion”, “situation”, “posture”, and “use history”.
- “User ID” corresponds to the same item shown in FIG.
- “Time” indicates the time when the user's behavior was observed.
- “Position” indicates the position where the user was observed.
- the “motion” indicates the motion of the user.
- “Situation” indicates the situation of the user estimated from the action or the like.
- “Position” indicates the position of the user.
- the motion, the situation, and the posture can be obtained, for example, by recognizing an image or a moving image captured by the response processing device 100.
- the “usage history” indicates a usage history in which the user uses the response processing device 100 when the behavior of the user is observed.
- the response processing device 100 may acquire and store the behavior information of the user and the usage history of the response processing device 100 associated with the behavior information. As a result, the response processing device 100 can acquire the tendency for each user, such as what kind of behavior the user is taking and what kind of question or dialogue they are making.
- the terminal information table 32 stores information about the terminal 10 that cooperates with the response processing device 100.
- FIG. 10 shows an example of the terminal information table 32 according to the first embodiment.
- FIG. 10 is a diagram showing an example of the terminal information table 32 according to the first embodiment of the present disclosure.
- the terminal information table 32 has items such as “terminal ID”, “input information”, “function”, “output format”, and “installation position”.
- the "input information” has small items such as "voice input”, “input method”, and "supported format”.
- Terminal ID indicates identification information for identifying the terminal 10.
- the terminal ID and the reference numeral of the terminal 10 are common.
- the terminal 10 identified by the terminal ID “10A” means “terminal 10A”.
- “Input information” indicates information such as a file format when information is input to the terminal 10.
- “Voice input” indicates information such as in what format the voice input to the terminal 10 is input.
- the “input method” indicates, for example, information about how the voice transmitted from the response processing device 100 is input.
- the “corresponding format” indicates a format of data (voice, image, etc.) that the terminal 10 can process. In the example shown in FIG. 10, the item of the corresponding format is conceptually described as “B01”, but in reality, the item of the corresponding format is a specific audio format that can be processed by the terminal 10. Types (“mp3”, “wav”, etc.), still image format types (“jpg”, etc.), and moving image format types (“mp4”, etc.) are stored. Further, the types of the audio API and the image API of the terminal 10 may be stored in the corresponding format item.
- “Function” indicates the function of the terminal 10.
- the item of the function is conceptually described as “C01”, but in reality, the type of the function executable by the terminal 10 is stored in the item of the function. ..
- the detailed information of the function is stored in the function table 33 described later.
- Output format indicates the format of data that the terminal 10 can output.
- the output format item is conceptually described as “D01”, but actually, the output format item can be audio output or image output.
- the modes that can be output by the terminal 10, such as whether or not the moving image can be reproduced, are specifically stored.
- “Installation position” indicates the position where the terminal 10 is installed.
- the “installation position” is indicated by the name of the user's home such as “living room” or “kitchen”, but different information may be stored in the “installation position” item. ..
- the “installation position” may be indicated by specific position information such as latitude and longitude, or may be indicated by the corresponding position in the map generated by the response processing device 100. That is, the installation position may be any information as long as the response processing device 100 can grasp the position of each terminal 10.
- the voice input is “digital signal”
- the input method is “wireless or wired”
- the corresponding format is “B01”. Is shown.
- the function of the terminal 10A is "C01”
- the output format is "D01”
- the installation position is "living room”.
- the function table 33 stores detailed information of each function of the terminal 10.
- FIG. 11 shows an example of the function table 33 according to the first embodiment.
- FIG. 11 is a diagram showing an example of the function table 33 according to the first embodiment of the present disclosure.
- the function table 33 includes “function ID”, “terminal ID”, “connection service”, “output format”, “average playback time”, “contents”, “user selection history”, and the like. Have items.
- connection ID indicates identification information for identifying a function.
- Terminal ID corresponds to the same item shown in FIG.
- the “connection service” indicates the name of an external service, an application, or the like that each terminal 10 connects to realize a function. If the terminal 10 does not need to connect to an external service to generate a response, the item of “connection service” is blank. Further, in the example shown in FIG. 11, the connection service item is conceptually described as “J01”, but in reality, the service to be connected is a specific name indicating the service or a connection destination. (Specific address, etc.) is stored.
- Output format indicates a format in which each terminal 10 can output the information received from the connection service.
- the output format is voice, image, or the like.
- the “average reproduction time” indicates the time taken for each terminal 10 to reproduce the information received from the connection service.
- the “content” indicates the content that each terminal 10 can acquire from an external service or the like.
- the “user selection history” indicates a history such as how often and which terminal 10 the user who tried to use a certain function selected.
- the function identified by the function ID “K01” is a function related to “weather forecast”, and terminals that realize the function are, for example, “terminal 10A” and “terminal 10B”. Or “terminal 10C”.
- the “terminal 10A” connects to the service “J01” in order to execute the weather forecast (that is, to obtain the information about the weather forecast), and obtains the information corresponding to the output format “K01”.
- the information indicates that the average reproduction time is “10 seconds”.
- the information on the weather forecast acquired by the “terminal 10A” includes contents such as “weather condition, precipitation probability, image output, voice output, pollen,... ”.
- the response processing device 100 executes the function of weather forecast, the history that the “terminal 10A” is selected is “L01”.
- the functions of the terminal 10 include a function of outputting "traffic information” and "news”, a schedule management function such as “calendar”, “recipe search”, “online supermarket order”, “translation”, Functions such as “encyclopedia” and “dictionary” that support user's activities are listed.
- the terminal 10 when the terminal 10 is a robot or the like, the terminal 10 may be provided with functions such as “emotion expression”, “play with user”, and “notify danger”.
- the terminal 10, which is a humanoid robot may have functions such as “cooking assistance”, “family message”, and “translation”.
- the terminal 10, which is a gripping robot or a robot dedicated to cleaning, may have functions such as “cleaning sensor”, “dust sensor”, “move/clean up objects”, and “DIY assistance”.
- the function of the terminal 10, which is a robot includes information such as whether or not it has a "power unit (actuator)" or whether it has an "arm unit (also called a manipulator)”. May be included.
- the acquisition unit 40, the selection unit 50, and the output control unit 55 are processing units that execute information processing executed by the response processing device 100.
- the acquisition unit 40, the selection unit 50, and the output control unit 55 are, for example, programs stored in the response processing device 100 by a CPU (Central Processing Unit), an MPU (Micro Processing Unit), a GPU (Graphics Processing Unit), and the like (for example, the response processing program according to the present disclosure) is implemented by executing a RAM (Random Access Memory) or the like as a work area.
- the acquisition unit 40, the selection unit 50, and the output control unit 55 are controllers, and may be realized by integrated circuits such as ASIC (Application Specific Integrated Circuit) and FPGA (Field Programmable Gate Array), for example. ..
- the acquisition unit 40 is a processing unit that acquires various types of information. As shown in FIG. 7, the acquisition unit 40 includes a detection unit 41, a registration unit 42, and a reception unit 43.
- the detection unit 41 detects various kinds of information via the sensor 20.
- the detection unit 41 detects the voice uttered by the user via the voice input sensor 20A, which is an example of the sensor 20.
- the detection unit 41 detects various kinds of information related to the user's operation, such as the face information of the user, the orientation, inclination, movement, and moving speed of the user's face, via the image input sensor 20B, the acceleration sensor, the infrared sensor, and the like. May be. That is, the detection unit 41 detects various physical quantities such as position information, acceleration, temperature, gravity, rotation (angular velocity), illuminance, geomagnetism, pressure, proximity, humidity, and rotation vector as contexts via the sensor 20. Good.
- the registration unit 42 accepts registration from the user via the input unit 21.
- the registration unit 42 receives registration of a user profile (attribute information) from a user via a touch panel or a keyboard.
- the registration unit 42 may also accept registration of user schedules and the like.
- the registration unit 42 accepts schedule registration from the user by using the application function incorporated in the response processing device 100.
- the receiving unit 43 receives various information. For example, when the attribute information and schedule information of the user are registered in the external service or the like instead of the response processing device 100, the receiving unit 43 receives the attribute information and schedule of the user from the external server 200.
- the receiving unit 43 may also receive a context regarding communication.
- the receiving unit 43 may receive the connection status between the response processing device 100 and various devices (a server on the network, home appliances in the home, etc.) as a context.
- the connection status with various devices is, for example, information indicating whether mutual communication is established, a communication standard used for communication, or the like.
- the acquisition unit 40 acquires various information by controlling the above processing units. For example, the acquisition unit 40 acquires, from the user, input information that is information that triggers the terminal 10 to generate a response.
- the acquisition unit 40 acquires, as input information, voice information uttered by the user. Specifically, the acquisition unit 40 acquires a user's utterance such as “tell me the weather” and acquires some intention included in the utterance as input information.
- the acquisition unit 40 may acquire, as the input information, the detection information obtained by detecting the user's action.
- the detection information is information detected by the detection unit 41 via the sensor 20.
- the detection information includes information indicating that the user has looked at the camera of the response processing device 100, information indicating that the user has moved from the room of the home to the entrance, and the response processing device 100 transmits the response. This is a user action that can be a trigger for generation.
- the acquisition unit 40 may also acquire information regarding various contexts.
- the context is information indicating various situations when the response processing device 100 generates a response. Since the context includes “information indicating the user's situation” such as action information indicating that the user has seen the response processing device 100, the context can also be input information.
- the acquisition unit 40 may acquire the attribute information of the user registered in advance by the user as the context. Specifically, the acquisition unit 40 acquires information such as the user's gender, age, place of residence, and the like. In addition, the acquisition unit 40 may acquire, as the attribute information, information indicating the characteristics of the user, such as that the user has a visual impairment. Further, the acquisition unit 40 may acquire information such as a user's hobbies and preferences as a context based on the usage history of the response processing device 100 and the like.
- the acquisition unit 40 may also acquire position information indicating the position of the user as the context.
- the position information may be information indicating a specific position such as longitude and latitude, or may be information indicating in which room in the home the user is.
- the location information may be information indicating the location of the user, such as whether the user is in the living room at home, in the bedroom, or in the children's room.
- the position information may be information on a specific place that indicates the destination of the user.
- the information indicating the destination of the user may include information indicating a situation such as whether the user is on a train, driving a car, or going to a school or a company.
- the acquisition unit 40 may acquire these pieces of information by mutually communicating with a mobile terminal such as a smartphone owned by the user.
- the acquisition unit 40 may acquire, as a context, estimated information that estimates a user's behavior or emotion.
- the acquisition unit 40 acquires, as the context, the behavior prediction information that is information estimated from the behavior of the user and that is the information indicating the future behavior prediction of the user. Specifically, the acquisition unit 40 acquires action prediction information such as "the user is going out” as the information estimated from the action indicating that the user has moved from the room at home to the entrance. For example, when acquiring the behavior prediction information such as “the user is going out”, the acquisition unit 40 acquires the tagged context such as “going out” based on the information.
- the acquisition unit 40 may acquire schedule information registered in advance by the user as the behavior of the user. Specifically, the acquisition unit 40 acquires the schedule information registered at a scheduled time within a predetermined period (for example, within one day) from the time when the user speaks. Accordingly, the acquisition unit 40 can estimate information such as where the user is going to go at a certain time.
- the acquisition unit 40 may estimate the user's situation or feeling by detecting the moving speed of the user captured by the sensor 20, the position where the user is, the speech speed of the user, or the like. For example, the acquisition unit 40 may estimate the situation or emotion of “the user is in a hurry” when a speech rate faster than a normal user's speech rate is observed. For example, the response processing device 100 can perform adjustment such as outputting a shorter response when the context indicating that the user is in a situation in which the user is in a hurry than usual is acquired.
- the acquisition unit 40 acquires various information such as position information, acceleration, temperature, gravity, rotation (angular velocity), illuminance, geomagnetism, pressure, proximity, humidity, and rotation vector of the response processing device 100, which is acquired via the sensor 20. May be acquired as a context.
- the acquisition unit 40 may acquire a connection status (for example, information regarding establishment of communication or a communication standard being used) with various devices as a context by using a built-in communication function.
- the context may include information regarding a dialogue between a user and another user, or a dialogue between the user and the response processing device 100.
- the context may include dialogue context information indicating the context of the dialogue that the user is having, a dialogue domain (weather, news, train operation information, etc.), user utterance intention, attribute information, and the like.
- the context may include date and time information when the conversation is being performed.
- the date and time information is information such as date, time, day of the week, holiday characteristics (Christmas, etc.), time zone (morning, day, night, midnight) and the like.
- the acquisition unit 40 has information on a specific housework performed by the user, the content of the TV program being watched, information indicating what is being eaten, having a conversation with a specific person, etc. Alternatively, various information indicating the user's situation may be acquired as the context.
- the acquisition unit 40 determines which home appliance is active (for example, whether the power is on or off) by mutual communication with the home appliance (IoT device or the like) placed in the home. Information such as what kind of processing the home appliance is performing may be acquired.
- the acquisition unit 40 may acquire the traffic status, weather information, etc. in the user's living area as a context by mutual communication with an external service.
- the acquisition unit 40 stores the acquired information in the user information table 31 or the like. Further, the acquisition unit 40 may refer to the user information table 31 and the terminal information table 32 to acquire the information required for the processing as appropriate.
- the selection unit 50 includes a request analysis unit 51 and a state estimation unit 52.
- the selection unit 50 selects the terminal 10 that generates a response corresponding to the input information from among the plurality of terminals 10 based on the information obtained by the processing executed by the request analysis unit 51 and the state estimation unit 52.
- the selection unit 50 selects the terminal 10 that generates the response corresponding to the input information from among the plurality of terminals 10. Good.
- the selection unit 50 may generate the response by the own device when the response can be generated by the own device. As a result, the selection unit 50 can quickly respond to the dialogue that can be processed by the own device.
- the selection unit 50 determines whether or not each of the plurality of terminals 10 can generate a response to the input information, and a terminal other than the terminal 10 determined to be unable to generate a response to the input information. 10 may be selected as the terminal 10 that generates the response corresponding to the input information. That is, the selection unit 50 may refer to the terminal information table 32 and the function table 33 to select the terminal 10 that is supposed to be able to generate a response. As a result, the selection unit 50 can save the trouble of randomly transmitting a request to all the terminals 10.
- the selection unit 50 may select a plurality of terminals 10 as the terminals 10 that generate the response corresponding to the input information. That is, the selection unit 50 may select not only one terminal 10 as the terminal 10 that generates the response but also a plurality of terminals 10 that can generate the response. Thereby, the selection unit 50 can diversify the response generated in response to the user's question.
- the selection unit 50 converts the input information into a form that can be recognized by each of the selected terminals 10, and transmits the converted input information to the terminals 10. For example, as shown in FIG. 2 and the like, the selection unit 50 converts the result of analyzing the user's utterance into a format that can be read by each terminal 10, and transmits the converted information to each terminal 10.
- the selection unit 50 may transmit the result of analyzing the user's utterance using the API of each terminal 10. Further, when the API used by the terminal 10 is not available or the API is unknown, the selection unit 50 may transmit the result of analyzing the user's utterance using another method.
- the selection unit 50 can actually reproduce the user's utterance by voice, and The input information may be transmitted.
- the request analysis unit 51 performs a meaning understanding process of the information acquired by the acquisition unit 40. Specifically, the request analysis unit 51 causes the acquisition unit 40 to perform automatic speech recognition (ASR) processing and natural language understanding (NLU) processing on speech information and the like. For example, the request analysis unit 51 decomposes the acquired voice into morphemes through ASR and NLU, and determines what intention and attribute each morpheme has.
- ASR automatic speech recognition
- NLU natural language understanding
- the request analysis unit 51 may pass that fact to the output control unit 55. For example, if the analysis result includes information that cannot be estimated from the user's utterance, the request analysis unit 51 passes the content to the output control unit 55. In this case, the output control unit 55 may generate a response that requests the user to correctly speak unknown information.
- the state estimation unit 52 estimates the user's state based on the context acquired by the acquisition unit 40.
- the selection unit 50 may select the terminal 10 based on the information estimated by the state estimation unit 52. For example, when the state estimation unit 52 estimates that the user is near the entrance at the timing when the user speaks, the selection unit 50 is installed near the entrance as the terminal 10 that generates a response. The terminal 10 may be selected preferentially.
- the output control unit 55 controls the output of the response corresponding to the input information, which is generated by the terminal 10 selected by the selection unit 50.
- the output control unit 55 determines the response to be output to the user based on the information obtained by comparing the responses generated by the plurality of terminals 10.
- the output control unit 55 determines the response to be output to the user based on the information amount or type of each response generated by the plurality of terminals 10.
- the output control unit 55 determines to output the weather information having a larger amount of information to the user.
- the output control unit 55 refers to the history of the dialogue with the user, and if the user has more history of requesting “pollen information” than “ultraviolet information”, the output control unit 55 displays the weather information including the type “pollen information”.
- the output control unit 55 has high credibility of the source information among the respective responses (for example, the service is used by many users, etc.), is a service more preferred by the user, and the like.
- the response to be output may be determined based on the criterion.
- the output control unit 55 may combine a plurality of responses generated by the plurality of terminals 10 and generate a response to be output to the user.
- the output control unit 55 determines the type of information included in each piece of weather information when a response regarding the weather information is generated by a plurality of terminals 10 as shown in FIG.
- the output control unit 55 acquires the presence/absence of information included in each weather information (presence/absence of screen display, presence/absence of voice output, presence/absence of precipitation probability, etc.) as a vector.
- the vector "1" is stored in the dimension where the information exists, and "0" is stored in the dimension where the information does not exist.
- the output control unit 55 acquires a plurality of pieces of weather information and combines the pieces of weather information to generate a vector having many dimensions in which “1” is stored as much as possible.
- the output control unit 55 converts the generated vector into voice and outputs the voice to the user.
- the output control unit 55 outputs the weather information including all the information (in the example of FIG. 5, “ultraviolet information” and “pollen information”) that may not be included when the individual terminals 10 generate the information. It can be provided to the user.
- the output control unit 55 may flexibly combine the information, for example, by selecting information to match a predetermined reproduction time, instead of combining all the types of the acquired weather information.
- the output control unit 55 may also determine the mode of outputting the response generated by the selected terminal 10, based on the context.
- the output control unit 55 may determine the type of response to be output to the user or the output destination to output the response in accordance with the user's attribute information. For example, when outputting weather information, if the user's attribute is “child”, the output control unit 55 recognizes the weather at a glance, not by voice output that may include words that are difficult to understand. Image output” may be selected. In this case, the output control unit 55 may select the terminal 10 to output according to the type of information to be output (image information). Specifically, the output control unit 55 selects the terminal 10 capable of displaying an image and outputs a response.
- the output control unit 55 may prioritize audio output instead of image output when the user's attribute includes “visual impairment”.
- the output control unit 55 may add a voice to be output to the user when the response of the terminal 10 is estimated to be difficult for the user to understand. For example, it is assumed that the user requests the response processing apparatus 100 to “reduce the room temperature”. In this case, the response processing device 100 transmits the user's request to the terminal 10, which is an air conditioner, and causes the terminal 10 to execute a response to the user. In this case, the terminal 10 executes the response “lower the set temperature of the room”.
- the response processing device 100 indicates that the user has said “the temperature of the air conditioner has dropped twice”. Outputs specific information that is easy to understand by voice. Thus, the user can perceive how the terminal 10 operates via the response processing device 100.
- the response processing device 100 displays various sounds corresponding to the user, such as displaying a reaction sound when the terminal 10 operates on the screen. Good.
- the output control unit 55 may determine the terminal 10 that outputs a response to the user, based on the positional relationship between the user and at least one of the plurality of terminals 10.
- the output control unit 55 may perform control so that the response is output from the terminal 10 located closest to the user when the response is generated. For example, the output control unit 55 acquires the response from the terminal 10 that has generated the response when the terminal 10 that has generated the response is far away from the user and there is another terminal 10 near the user. , And transmits the acquired response to another terminal 10 near the user. Then, the output control unit 55 controls to output the response from another terminal 10 near the user. This allows the user to perceive the response more accurately.
- the output control unit 55 when the estimated information that estimates the behavior or emotion of the user is acquired as the context, the output control unit 55, based on the estimated information, the type of response to be output to the user, the mode of the response, or the response. You may determine the terminal 10 which outputs.
- the output control unit 55 estimates that the user is in a situation “more hurry” than usual. In this case, the output control unit 55 outputs, for example, among the responses obtained from the plurality of terminals 10, the response capable of transmitting the weather information to the user in the shortest reproduction time. Alternatively, the output control unit 55 may change the output mode so that the weather information is output at a speed faster than usual.
- the output control unit 55 estimates the behavior that the user is moving to the entrance, when the user speaks “Tell me today's weather” while moving from the living room to the entrance. In this case, the output control unit 55 may control to output the weather information from the terminal 10 installed at the entrance so that the user can easily perceive it.
- FIG. 9 An example of the relationship between the user's behavior and the response will be described by taking the user's behavior shown in FIG. 9 as an example.
- the response processing device 100 is asked for “weather information”.
- the output control unit 55 provides the user with weather information including clothes advice (such as "it seems to be cold today") based on the context that the user asked the weather in the bedroom early in the morning. You may output.
- the output control unit 55 may select and output a response that does not include screen display and is rich in voice information. Further, in the example of FIG. 9, it is assumed that when the user is in the living room (action data at time “6:40” shown in FIG. 9), the “weather information” is asked to the response processing device 100. In this case, since the user is concentrated, the output control unit 55 may select and output a response including a screen display with a large amount of information. Further, in the example of FIG.
- the response processing apparatus 100 is inquired of “weather information” when the user is at the entrance (action data at time “7:42” shown in FIG. 9 ).
- the output control unit 55 outputs a response that includes a voice output that is as short as possible and that includes information related to going out (ultraviolet information, etc.). You may. In this way, the output control unit 55 can control to output various different responses depending on the context.
- the output control unit 55 When outputting the response generated by the output control unit 55, the output control unit 55 converts the response into an output format corresponding to each terminal 10, for example, and transmits the conversion degree information to the terminal 10. For example, the output control unit 55 converts the response including the character string included in the response into voice data corresponding to the terminal 10 that is the output destination. Alternatively, the output control unit 55 converts the response including the image information generated or acquired by any of the terminals 10 into the image data corresponding to the terminal 10 that is the output destination.
- the output unit 60 is a mechanism for outputting various information.
- the output unit 60 is a speaker or a display.
- the output unit 60 when the response is output by the output control unit 55, the output unit 60 outputs the name of the output destination terminal 10 or the like by voice to the user. Further, the output unit 60 may output the image data to the display. Further, when the response processing device 100 generates a response by itself, the output unit 60 outputs the generated response as a voice or an image.
- the output unit 60 may output the response in various modes such as character recognition of the generated voice data and display on the display.
- FIG. 12 is a flowchart showing the flow of processing according to the first embodiment of the present disclosure.
- the response processing device 100 determines whether or not the input information is received (step S101). When the input information is not received (step S101; No), the response processing device 100 waits until the input information is received.
- the response processing device 100 analyzes the input information (step S102). Specifically, the response processing device 100 analyzes the input information, and acquires the intention of the user, the utterance attribute, and the like included in the input information.
- the response processing device 100 determines whether or not the user's request can be executed by the device itself (step S103). When the user's request can be performed by the own device (step S103; Yes), the response processing device 100 further determines whether the user's request can also be performed by the terminal 10 with which the user's request is linked (step S104).
- the response processing device 100 When the user's request can be executed by the cooperating terminal 10 (step S104; Yes), or when the user's request cannot be executed by the own device in step S103 (step S103; No), the response processing device 100 The terminal 10 that transmits the request is selected (step S105). As described above, the response processing device 100 may select one terminal 10 or a plurality of terminals 10.
- the response processing device 100 determines whether or not the API for transmitting the request is provided in the terminal 10 that is the transmission destination (step S106).
- the response processing device 100 transmits the request in a mode adapted to the terminal 10 (step S107).
- the response processing device 100 transmits (transmits) the user's request by converting the character string indicating the request into analog voice and outputting the converted voice to the terminal 10.
- the response processing device 100 instructs the API to execute the request (step S108).
- the response processing device 100 acquires an execution result in which the process corresponding to the user's request is executed in each terminal 10 (step S109). For example, the response processing device 100 acquires, from each terminal 10, the execution result of the search process or the like corresponding to the question uttered by the user.
- step S104 if the request from the user is not executable by the cooperating terminal 10 (step S104; No), the response processing device 100 executes a process for responding to the request by itself (step S110).
- the response processing device 100 that has acquired the execution result determines the output mode of the response to the user (step S111). For example, the response processing device 100 determines a response to be output or a terminal 10 as an output destination to output the response according to the context of the user.
- the response processing device 100 causes the terminal 10 that is the output destination to output the response in the mode determined in step S111 (step S112). Alternatively, the response processing device 100 outputs a response from its own device.
- the response processing device 100 that has output the response to the user determines whether or not the dialogue processing with the user has ended (step S113). Specifically, the response processing device 100 determines whether or not one session regarding the interaction with the user has ended.
- step S113 If the dialogue processing has not ended (step S113; No), the response processing device 100 returns the processing to step S101 and continues the dialogue processing. On the other hand, when the response processing apparatus 100 determines that the interactive processing has ended (step S113; Yes), the response processing apparatus 100 ends the processing.
- the response processing device 100 may periodically update the information stored in the terminal information table 32 and the function table 33.
- the function of the terminal 10 may be expanded via the network.
- the terminal 10 having the “translation” function may update the language that was not previously supported.
- the response processing device 100 receives the information indicating that the update has been performed from the cooperating terminal 10 and updates the information stored in the terminal information table 32 and the function table 33 based on the received information.
- the user can enjoy the latest function without being aware of the update of the function of each of the plurality of terminals 10.
- the response processing device 100 may periodically send an activation word to each terminal 10 to check whether each terminal 10 is operating normally.
- the response processing device 100 may suppress the voice response and the like of the cooperating terminal 10. For example, when the user speaks to the response processing device 100, the terminal 10 located nearby also detects the utterance. In this case, there is a possibility that a voice response may be made from the terminal 10 before the response processing device 100 generates a response. Therefore, the response processing device 100 may control the reply process so that the terminal 10 does not reply before the response processing device 100 itself.
- the response processing device 100 may transmit the requests to the plurality of terminals 10 at the same time, for example, by dividing the band of the voice to be used. As a result, the response processing device 100 can quickly transmit the user's request to the plurality of terminals 10. Further, the response processing device 100 may not use the sound in the audible region when transmitting the request as long as the destination terminal 10 can process the request. Further, the response processing device 100 may detect ambient noise or the frequency of human voice, select a TTS having a voice sound different from the frequency of noise, and then output the voice.
- the response processing device 100 acquires a response to the response output in the past from the user, and outputs the type of the response to be output to the user, the mode of the response, or the response based on the response acquired from the user.
- the output destination may be determined. That is, the response processing device 100 may perform the learning process based on the reaction of the user.
- the response processing device 100 may receive a response such as “tell me other information” from the user. In this case, the response processing device 100 determines that the previously output information is not the information desired by the user. On the other hand, when the next output information is accepted from the user, the response processing device 100 determines that the information is the information desired by the user.
- the response processing apparatus 100 may preferentially select the terminal 10 that can generate the response desired by the user when the same question is received from the user from the next opportunity. .. Further, the response processing device 100 has a tendency that the user wants to be output from a certain terminal 10 (for example, when the user statistically often specifies a specific terminal 10 as an output destination). Etc.), the adjustment may be performed such that the response is preferentially output from the terminal 10. As described above, the response processing device 100 can perform the response process that can further meet the user's request by learning based on the user's instruction and the operation history.
- the response processing device 100 when the response processing device 100 requires biometric authentication (face authentication, fingerprint authentication, etc.) of the user instead of the activation word when the terminal 10 is activated, the response processing device 100 outputs a voice notifying the user. Good. Further, the response processing device 100 may notify the user of the position and information of the terminal 10 that has not been activated, and may prompt the user to activate the terminal 10.
- biometric authentication face authentication, fingerprint authentication, etc.
- the response processing device 100 may select a plurality of terminals 10 as output destinations. In this case, the response processing device 100 may change the output destination according to the type of information output as a response, such as the terminal 10A for voice and the terminal 10B for image. Further, the response processing device 100 may flexibly determine the output destination, such as displaying information simultaneously on both a projector that can display information on a relatively large screen and a smart speaker with a monitor that can display small size. Further, the response processing device 100 may perform output processing according to the surrounding context, such as displaying a projector when the surroundings are dark and displaying a smart TV when the surroundings are bright.
- the response processing device 100 may transmit the input information (voice or the like) accepted from the user without extracting the user's intention when transmitting the user's request to each terminal 10. Further, in this case, the response processing device 100 may convert the character string indicating the request after character recognition of the voice of the user. For example, it is assumed that the user makes a request to the response processing device 100, such as “please show me next month”. At this time, for example, when it is determined that each terminal 10 may not be able to recognize “koyomi”, the response processing device 100 refers to the synonym dictionary or the similar word dictionary, and the user recognizes each terminal 10 in a mode that can be recognized. Request may be converted.
- the response processing device 100 may convert the user's request to “show next month's calendar” and then send the converted information to the terminal 10A.
- the response processing device 100 may convert the user's request to “show the next month's schedule” and then transmit the converted information to the terminal 10B.
- the response processing device 100 as a front-end device, may perform various adjustment processes so that the request to each terminal 10 can be made smoothly. This allows the user to make a request without being aware of the wording or the like that can be recognized by each terminal 10.
- the response processing device 100 may set the priority or the like for the terminal 10 that responds to the user's request. In this case, the response processing device 100 preferentially selects the terminal 10 having a high priority as the terminal 10 that generates a response. For example, the response processing device 100 may set the priority of the external service used when executing the function to be higher as the terminal 10 uses the service that is not charged. As a result, the response processing device 100 can take measures so that the user is not unreasonably charged for using the service.
- FIG. 13 shows an example of information processing according to the second embodiment of the present disclosure.
- FIG. 13 is a diagram illustrating an example of information processing according to the second embodiment of the present disclosure.
- FIG. 13 shows an example in which the response processing device 100A is a wearable device worn by the user.
- the user returns home from the place where he/she goes and removes the response processing apparatus 100A, which is a wearable device, from his/her arm.
- the response processing apparatus 100A acquires the context that the user has returned home from the place where he/she is out and removed the response processing apparatus 100A, which is a wearable device, from his/her arm (step S51).
- the response processing device 100A transfers the function as the response processing device according to the present disclosure to the response processing device 100B, which is an example of the terminal 10 located in the home.
- the response processing device 100A executes the function transfer of the response processing device according to the present disclosure according to the database DB11 illustrated in FIG.
- FIG. 14 is a diagram showing an example of the database DB 11 according to the second embodiment of the present disclosure.
- the database DB11 illustrated in FIG. 14 stores conditions under which the response processing device according to the present disclosure is transferred. For example, in the example of FIG. 14, when the response processing device 100A satisfies the transfer condition “detachment” or “power off”, the present invention is disclosed to the “intercommunication destination” terminal 10 and the “nearby terminal 10”. It shows that the function of the response processing device is transferred.
- the response processing device 100A transfers the function as the response processing device according to the present disclosure to the response processing device 100B according to the information stored in FIG. After that, the response processing device 100A may suspend the function or may function as one of the terminals 10.
- the user newly inputs a request including the content “Tell me today's weather” to the response processing device 100B that newly functions as the response processing device according to the present disclosure.
- the response processing device 100B obtains the voice A41 including the content “Tell me today's weather” (step S52).
- the response processing apparatus 100B determines that the user's intention is “search for today's weather information” through the ASR process and the NLU process for the voice A41, the response processing device 100B transmits the user's intention to each terminal 10.
- the response processing device 100B transmits information in a format suitable for the terminal 10A to the terminal 10A (step S53). In addition, the response processing device 100 transmits information in a format suitable for the terminal 10C to the terminal 10C (step S54).
- the terminal 10A transmits the retrieved weather information to the response processing device 100B (step S55).
- the terminal 10B transmits the retrieved weather information to the response processing device 100B as a response (step S56).
- the response processing device 100B outputs a response to the user according to the configuration provided in the device itself.
- the response processing device 100B when the response processing device 100B is a device that does not output Japanese voice, the response processing device 100B outputs a response by, for example, performing an expression (such as an emotional expression that seems to be fun) indicating sunny. That is, the response processing device 100B converts the output mode according to the configuration of its own device, and outputs it to the user.
- the response processing device 100B may be controlled to output a response from the terminal 10A or the terminal 10C, as in the first embodiment.
- the response processing device 100A and the response processing device 100B may transfer the function as the response processing device according to the present disclosure to the terminal 10 or the like.
- the terminal 10 to which the function as the response processing device according to the present disclosure has been transferred then acts as the response processing device according to the present disclosure.
- This allows the user to execute the response process according to the present disclosure by using the alternative terminal 10 even when the user loses sight of a certain response processing device or leaves it in another place. That is, the response processing device according to the present disclosure is not limited to any device, and may be any of the cooperating terminals 10.
- the response processing device 100 may set information such as the priority of the transfer destination terminal 10.
- the response processing device 100 may transfer the function as the response processing device according to the present disclosure in preference to the terminal 10 having a high priority.
- the response processing device 100 may set a higher priority to the terminal 10 having higher information processing performance or the terminal 10 having more functions.
- FIG. 15 shows an example of information processing according to the third embodiment of the present disclosure.
- FIG. 15 is a diagram illustrating an example of information processing according to the third embodiment of the present disclosure.
- the response processing device 100 receives a voice A51 including a request of “keep a diary” from the user (step S61). At this time, the response processing device 100 refers to the database DB21 that stores information regarding a request to execute a combination of a plurality of pieces of information. As shown in FIG. 15, in the database DB 21, a request from a user, data collected to execute the request, and a data collection destination (resource) are stored in association with each other.
- the response processing device 100 refers to the database DB 21 and recognizes that “photographs”, “texts”, and “videos” are collected as collected data in order to achieve the request of “diary”. Further, the response processing device 100 collects each data from the photo application of the “terminal 10A”, conversation data accumulated by the “terminal 10C”, moving image data uploaded on the network via the “terminal 10B”, and the like. Recognize that you will.
- the response processing device 100 transmits an acquisition request for each data required for keeping a diary to each terminal 10 (step S62, step S63, step S64). In addition, the response processing device 100 acquires the data transmitted from each terminal 10 (step S65, step S66, step S67).
- the response processing device 100 combines the acquired data and responds to the user's request. Specifically, the response processing device 100 combines images captured within a predetermined time (for example, 24 hours), user conversations, moving images, and the like, and stores them as a diary of the user's day. When the request processing device 100 is able to complete the request, the response processing device 100 outputs the voice A52 including the content such as "I'm fine".
- the response processing device 100 may combine the data that can be collected by each terminal 10 and respond to the user's request.
- the response processing device 100 can respond to a complicated request from the user, which is difficult to execute with a single device.
- the response processing device 100 receives a request from the user such as “make a travel plan”.
- the response processing device 100 causes each terminal 10 to execute a process of “searching for tourist spot information”, a process of “reserving transportation”, a process of “reserving accommodation facility”, and the like. Then, the response processing device 100 responds to the user's request by combining them.
- the response processing device 100 can appropriately respond to the request of the user by combining the process that each terminal 10 is good at and the executable function.
- the response processing device 100 may retain information such as the database DB21 in its own device, or may access an external server or the like that retains information for realizing the request each time the user requests it. , Information may be acquired.
- FIG. 16 shows an example of information processing according to the fourth embodiment of the present disclosure.
- FIG. 16 is a diagram illustrating an example of information processing according to the fourth embodiment of the present disclosure.
- the response processing device 100 accepts the voice A61 including a request from the user, “Tell me the recipe of dish YYY” (step S71).
- the response processing device 100 transmits a request corresponding to the voice A61 to the cooperating terminals 10A and 10B (steps S72 and S73).
- the terminal 10A replies that the “recipe for cooking YYY” could not be searched (step S74). Similarly, the terminal 10B also replies that the "cooking YYY recipe" could not be retrieved (step S75).
- the response processing device 100 controls its own device or the camera or the like of the terminal 10A or the terminal 10B to try to detect the context of another user located nearby.
- the response processing device 100 has detected the second user having the name “ZZZ” located near the terminal 10B.
- Information regarding the second user is assumed to be held in advance in the user information table 31 or the like.
- the response processing device 100 When the response processing device 100 detects the second user, the response processing device 100 outputs a voice A62 including a content such as “ZZZ is near. Ask ZZZ.” to the user. If the user does not want the second user to hear the request, the user may input the fact to the response processing device 100.
- the response processing apparatus 100 After outputting the voice A62, the response processing apparatus 100 causes the nearby terminal 10B to output the voice A63 including the content such as "If you know the recipe of Mr. ZZZ, cooking YYY, please input the voice.” (Ste S76).
- the second user knows the “recipe for cooking YYY”, for example, inputs a voice to the terminal 10B (step S77).
- the second user inputs to the terminal 10B that he/she does not know the “recipe for cooking YYY”.
- the response processing device 100 outputs the content returned from the second user to the user. That is, when the response is not generated by each terminal 10, the response processing device 100 outputs the question to the second user or the like to acquire the response to the request.
- the response processing device 100 determines that the response processing device 100 and none of the plurality of terminals 10 can generate a response to the input information
- the response processing device 100 acquires the context of a user other than the user. Then, the response processing device 100 determines the output destination of the output related to the input information, based on the contexts of other users.
- the output related to the input information is, for example, a voice indicating that the agent device cannot generate a response to the input information, a voice indicating that another user requests a response to the input information, or the like.
- the response processing device 100 determines the terminal 10B as the output destination of the voice A63 shown in FIG. 16 and outputs the voice A63. After that, when a response is obtained from another user, the response processing device 100 can respond to the user's request by outputting the voice from the response processing device 100 or the like.
- the response processing device 100 may be able to resolve the request by controlling the plurality of terminals 10 and acquiring the contexts of other users. The user of can be detected. As a result, the response processing device 100 can increase the possibility that some kind of response can be output to the user even for a rare question that cannot be solved only by the dialogue system or a question that is difficult for the agent device to recognize.
- the response processing device 100 is not limited to other users, but does not cooperate with the response processing device 100. Good. In this case, the response processing device 100 may transmit the content described in the specific tool or the book to the user, or may show the location of the specific tool or the book to the user.
- the response processing device 100 is a so-called smart speaker, and an example in which the response processing device 100 performs a stand-alone process is shown.
- the response processing device 100 may perform the response process according to the present disclosure in cooperation with a server device (a so-called cloud server or the like) connected by a network.
- the response processing device 100 acquires a voice or a context input to a terminal such as a smart speaker, generates a response based on the acquired information, and transmits the generated response to the terminal.
- the terminal such as the smart speaker communicates with the user such as a process of collecting the user's utterance, a process of transmitting the collected utterance to the server device, and a process of outputting an answer transmitted from the server device. It functions as an interface that mainly executes the interactive processing of.
- response processing device may be realized in a form such as an IC chip mounted in the response processing device 100.
- each component of each device shown in the drawings is functionally conceptual, and does not necessarily have to be physically configured as shown. That is, the specific form of distribution/integration of each device is not limited to that shown in the figure, and all or a part of the device may be functionally or physically distributed/arranged in arbitrary units according to various loads or usage conditions. It can be integrated and configured.
- the request analysis unit 51 and the state estimation unit 52 may be integrated.
- the response processing device (the response processing device 100 in the embodiment) according to the present disclosure includes the acquisition unit (the acquisition unit 40 in the embodiment), the selection unit (the selection unit 50 in the embodiment), and the output control unit. (The output control unit 55 in the embodiment) is provided.
- the acquisition unit acquires, from the user, input information that is information that triggers the information device (the terminal 10 in the embodiment) to generate a response.
- the selection unit selects, from the plurality of information devices, an information device that generates a response corresponding to the input information.
- the output control unit controls output of a response corresponding to the input information, which is generated by the selected information device.
- the response processing device behaves as a front-end device for a plurality of information devices, selects an information device that generates a response, and controls output.
- the response processing device can save the trouble of having a dialogue with each of the information devices when the user uses the plurality of information devices, so that the convenience of the user can be improved. it can.
- the acquisition unit acquires, as input information, voice information uttered by the user. Accordingly, the response processing device can have an appropriate dialogue according to the user's situation in the communication with the user via voice.
- the acquisition unit acquires, as input information, detection information that detects the user's action.
- the response processing device can generate an appropriate response according to the user's action without the user speaking.
- the selection unit selects an information device that generates a response corresponding to the input information from the plurality of information devices.
- the response processing device sends only the request that cannot be responded to by itself to the information device, so that it is possible to suppress unnecessary communication and suppress the communication volume and communication load.
- the selection unit determines whether each of the plurality of information devices can generate a response to the input information, and an information device other than the information device determined to be unable to generate the response to the input information. Is selected as an information device that generates a response corresponding to the input information.
- the response processing device can selectively transmit the request only to the information device that can respond to the request, so that the communication amount and communication load can be suppressed.
- the selection unit selects a plurality of information devices as information devices that generate a response corresponding to the input information.
- the output control unit determines the response to be output to the user based on the information obtained by comparing the responses generated by the plurality of information devices. With this, the response processing device can prepare a plurality of responses to the user's request, and thus it becomes easier to output a response that meets the user's request.
- the output control unit determines the response to be output to the user based on the information amount or type of each response generated by the plurality of information devices. Accordingly, the response processing device can select and output a response having a large amount of information among the plurality of responses, and thus can easily output the response that meets the user's request.
- the selection unit selects a plurality of information devices as information devices that generate a response corresponding to the input information.
- the output control unit combines a plurality of responses generated by a plurality of information devices and generates a response to be output to the user.
- the response processing device can select information acquired by a plurality of devices and generate a response, and thus can provide an accurate response as desired by the user.
- the selection unit converts the input information into a form that can be recognized by each of the selected information devices, and transmits the converted input information to the information devices.
- the response processing device can quickly send the user's request to a plurality of information devices having various APIs and input methods.
- the acquisition unit acquires the context of the user.
- the output control unit determines, based on the context, an aspect in which the response generated by the selected information device is output.
- the response processing device can output a flexible response that matches the user's context, so that the agent function such as dialogue can be provided to the user more effectively.
- the acquisition unit acquires the attribute information of the user registered in advance by the user as the context.
- the response processing device can generate a response that matches the characteristics of each user, such as old age, children, and users with visual impairment.
- the output control unit determines the type of response to be output to the user or the output destination to output the response, according to the attribute information of the user.
- the response processing device can select an appropriate output such as voice or image according to the attribute of the user.
- the acquisition unit acquires position information indicating the position of the user as the context.
- the response processing device can perform response processing with high usability, such as outputting a response to the position where the user is located.
- the output control unit also determines the information device that outputs a response to the user, based on the positional relationship between the user and at least one of the plurality of information devices.
- the response processing device can perform flexible output that matches the position of the user, such as causing the information device located near the user to output the response.
- the acquisition unit acquires, as a context, estimated information that estimates a user's behavior or emotion.
- the response processing device can output a response in accordance with the action the user is about to perform.
- the output control unit determines the type of response to be output to the user, the mode of response, or the information device to output the response based on the estimated information.
- the response processing device can perform a flexible response such as outputting a response having a shorter reproduction time.
- the acquisition unit determines that neither the response processing device nor the plurality of information devices can generate a response to the input information
- the acquisition unit acquires contexts of users other than the user.
- the output control unit determines the output destination of the output related to the input information based on the contexts of other users.
- the response processing device can ask other users about a request that is difficult for the agent device to respond to, and thus can increase the possibility of responding to the user's request. ..
- the acquisition unit acquires the response to the response output in the past from the user.
- the output control unit determines the type of response to be output to the user, the form of the response, or the output destination to output the response, based on the reaction obtained from the user.
- the response processing device can reflect the result of learning the past reaction of the user in the output, and thus can more accurately meet the user's request.
- FIG. 17 is a hardware configuration diagram illustrating an example of a computer 1000 that realizes the function of the response processing device 100.
- the computer 1000 includes a CPU 1100, a RAM 1200, a ROM (Read Only Memory) 1300, an HDD (Hard Disk Drive) 1400, a communication interface 1500, and an input/output interface 1600.
- Each unit of the computer 1000 is connected by a bus 1050.
- the CPU 1100 operates based on a program stored in the ROM 1300 or the HDD 1400, and controls each part. For example, the CPU 1100 expands a program stored in the ROM 1300 or the HDD 1400 into the RAM 1200 and executes processing corresponding to various programs.
- the ROM 1300 stores a boot program such as a BIOS (Basic Input Output System) executed by the CPU 1100 when the computer 1000 starts up, a program dependent on the hardware of the computer 1000, and the like.
- BIOS Basic Input Output System
- the HDD 1400 is a computer-readable recording medium that non-temporarily records a program executed by the CPU 1100, data used by the program, and the like. Specifically, the HDD 1400 is a recording medium that records the response processing program according to the present disclosure, which is an example of the program data 1450.
- the communication interface 1500 is an interface for connecting the computer 1000 to an external network 1550 (for example, the Internet).
- the CPU 1100 receives data from another device or transmits the data generated by the CPU 1100 to another device via the communication interface 1500.
- the input/output interface 1600 is an interface for connecting the input/output device 1650 and the computer 1000.
- the CPU 1100 receives data from an input device such as a keyboard or a mouse via the input/output interface 1600.
- the CPU 1100 also transmits data to an output device such as a display, a speaker, a printer, etc. via the input/output interface 1600.
- the input/output interface 1600 may function as a media interface for reading a program or the like recorded in a predetermined recording medium (medium).
- Examples of media include optical recording media such as DVD (Digital Versatile Disc) and PD (Phase change rewritable Disk), magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, and semiconductor memory. Is.
- optical recording media such as DVD (Digital Versatile Disc) and PD (Phase change rewritable Disk)
- magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, and semiconductor memory.
- the CPU 1100 of the computer 1000 realizes the functions of the acquisition unit 40 and the like by executing the response processing program loaded on the RAM 1200.
- the HDD 1400 stores the response processing program according to the present disclosure and the data in the storage unit 30.
- the CPU 1100 reads the program data 1450 from the HDD 1400 and executes the program data, but as another example, these programs may be acquired from another device via the external network 1550.
- An acquisition unit that acquires from the user the input information that is the information that triggers the information device to generate a response
- a selection unit that selects, from among a plurality of information devices, an information device that generates a response corresponding to the input information
- An output control unit that controls the output of a response corresponding to the input information and is generated by the selected information device.
- the acquisition unit is The response processing device according to (1) above, which acquires voice information uttered by the user as the input information.
- the acquisition unit is The response processing device according to (1) or (2) above, which acquires, as the input information, detection information obtained by detecting the action of the user.
- the selection unit When it is determined that the response processing device cannot generate a response to the input information, an information device that generates a response corresponding to the input information is selected from the plurality of information devices (1) to The response processing device according to any one of (3). (5) The selection unit, It is determined whether each of the plurality of information devices can generate a response to the input information, and the information device other than the information device determined to be unable to generate a response to the input information is The response processing device according to (4) above, which is selected as an information device that generates a response corresponding to input information.
- the selection unit Select a plurality of information devices as information devices that generate a response corresponding to the input information
- the output control unit The response processing device according to (4) or (5), wherein the response output to the user is determined based on information obtained by comparing responses generated by the plurality of information devices.
- the output control unit The response processing device according to (6), wherein the response output to the user is determined based on the information amount or the type of each response generated by the plurality of information devices.
- the selection unit Select a plurality of information devices as information devices that generate a response corresponding to the input information, The output control unit, The response processing device according to any one of (4) to (7), which combines a plurality of responses generated by the plurality of information devices and generates a response to be output to the user.
- the selection unit The input information after conversion is converted into a form that can be recognized by each of the selected plurality of information devices, and the converted input information is transmitted to the plurality of information devices.
- the acquisition unit is Get the context of the user, The output control unit, The response processing device according to any one of (1) to (9), wherein a mode of outputting a response generated by the selected information device is determined based on the context.
- the acquisition unit is The response processing device according to (10), wherein the attribute information of the user registered in advance by the user is acquired as the context.
- the output control unit The response processing device according to (11), wherein the type of response output to the user or the output destination to output the response is determined according to the attribute information of the user.
- the acquisition unit is The response processing device according to any one of (10) to (12), wherein position information indicating a position of the user is acquired as the context.
- the output control unit The response processing device according to (13), wherein an information device that outputs a response to the user is determined based on a positional relationship between the user and at least one of the plurality of information devices.
- the acquisition unit is The response processing device according to any one of (10) to (14), wherein estimated information that estimates the behavior or emotion of the user is acquired as the context.
- the output control unit The response processing device according to (15), wherein the response type to be output to the user, the mode of the response, or the information device to output the response is determined based on the estimated information.
- the acquisition unit is When it is determined that the response processing device and a response to the input information cannot be generated by any of the plurality of information devices, the context of another user other than the user is acquired, The output control unit, The response processing device according to any of (10) to (16), wherein the output destination of the output related to the input information is determined based on the context of the other user.
- the acquisition unit is Acquire the response to the response output in the past from the user,
- the output control unit The type of response output to the user, the mode of the response, or the output destination to output the response is determined based on the response obtained from the user.
- the input information which is the information that triggers the information device to generate a response, is acquired from the user, From a plurality of information devices, select an information device that generates a response corresponding to the input information, A response processing method for controlling an output of a response corresponding to the input information, the response being generated by the selected information device.
- An acquisition unit that acquires from the user the input information that is the information that triggers the information device to generate a response
- a selection unit that selects, from among a plurality of information devices, an information device that generates a response corresponding to the input information
- An output control unit that controls the output of a response generated by the selected information device, which is a response corresponding to the input information
- Response processing program to function as
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Hospice & Palliative Care (AREA)
- Psychiatry (AREA)
- Child & Adolescent Psychology (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
応答処理装置(100)は、情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部(40)と、複数の情報機器のうち、入力情報に対応した応答を生成する情報機器を選択する選択部(50)と、入力情報に対応する応答であって、選択された情報機器によって生成された応答の出力を制御する出力制御部(55)と、を備える。
Description
本開示は、応答処理装置、応答処理方法及び応答処理プログラムに関する。詳しくは、複数の情報機器を利用するユーザに対する応答処理に関する。
ネットワーク技術の進歩に伴い、ユーザが複数の情報機器を利用する機会が増えている。このような状況に鑑みて、複数の情報機器を円滑に活用するための技術が提案されている。
例えば、ネットワークを介して複数のクライアント機器が接続されたシステムにおいて、システムを統括制御する機器を置くことで、システム全体の処理を効率良く行うための技術が提案されている。
上記の従来技術によれば、システムを統括制御する機器が各情報機器への処理依頼を受け、個々の情報機器の機能に応じた処理を実行することにより、システム全体の処理を効率良く行うことができる。
しかしながら、従来技術では、ユーザの利便性を向上させることができるとは限らない。具体的には、従来技術では、各情報機器が処理依頼を受け入れられるか否かを判定するに過ぎず、例えば各情報機器がユーザの要求を受けて処理を行う場合等に、ユーザの要求に応えるような態様で処理が行われるとは限らない。
そこで、本開示では、ユーザの利便性を向上させることができる応答処理装置、応答処理方法及び応答処理プログラムを提案する。
上記の課題を解決するために、本開示に係る一形態の応答処理装置は、情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部と、複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する選択部と、前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する出力制御部と、を備える。
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
以下に示す項目順序に従って本開示を説明する。
1.第1の実施形態
1-1.第1の実施形態に係る応答処理の一例
1-2.第1の実施形態に係る応答処理システムの構成
1-3.第1の実施形態に係る応答処理の手順
1-4.第1の実施形態に係る変形例
2.第2の実施形態
2-1.第2の実施形態に係る応答処理の一例
2-2.第2の実施形態に係る変形例
3.第3の実施形態
4.第4の実施形態
5.その他の実施形態
6.本開示に係る応答処理装置の効果
7.ハードウェア構成
1.第1の実施形態
1-1.第1の実施形態に係る応答処理の一例
1-2.第1の実施形態に係る応答処理システムの構成
1-3.第1の実施形態に係る応答処理の手順
1-4.第1の実施形態に係る変形例
2.第2の実施形態
2-1.第2の実施形態に係る応答処理の一例
2-2.第2の実施形態に係る変形例
3.第3の実施形態
4.第4の実施形態
5.その他の実施形態
6.本開示に係る応答処理装置の効果
7.ハードウェア構成
(1.第1の実施形態)
[1-1.第1の実施形態に係る応答処理の一例]
図1を用いて、本開示の第1の実施形態に係る応答処理の一例を説明する。図1は、本開示の第1の実施形態に係る応答処理の一例を示す図(1)である。本開示の第1の実施形態に係る情報処理は、図1に示す応答処理装置100によって実行される。
[1-1.第1の実施形態に係る応答処理の一例]
図1を用いて、本開示の第1の実施形態に係る応答処理の一例を説明する。図1は、本開示の第1の実施形態に係る応答処理の一例を示す図(1)である。本開示の第1の実施形態に係る情報処理は、図1に示す応答処理装置100によって実行される。
応答処理装置100は、本開示に係る応答処理装置の一例である。応答処理装置100は、いわゆるIoT(Internet of Things)機器であり、クラウドサーバ等の外部機器と連携して、種々の情報処理を行う。例えば、応答処理装置100は、ユーザとの対話を行う機器であり、音声認識やユーザへの応答生成等の種々の情報処理を行う。応答処理装置100が実行する音声認識及び音声による応答処理等は、エージェント(Agent)機能と称される場合がある。また、応答処理装置100は、エージェント機器と称される場合がある。
第1の実施形態では、応答処理装置100が、いわゆるスマートスピーカー(smart speaker)である例を示す。なお、応答処理装置100は、音声出力を行うスピーカー部のみならず、映像等を出力する表示部(液晶ディスプレイ等)を備えてもよい。また、応答処理装置100は、スマートフォンやタブレット端末等であってもよい。この場合、スマートフォンやタブレット端末は、本開示の応答処理を実現するためのプログラム(アプリケーション)を実行することにより、本開示に係る応答処理装置100として機能する。
また、応答処理装置100は、スマートフォンやタブレット端末以外にも、時計型端末や眼鏡型端末などのウェアラブルデバイス(wearable device)であってもよい。また、応答処理装置100は、情報処理機能を有する種々のスマート機器により実現されてもよい。例えば、応答処理装置100は、テレビやエアコン、冷蔵庫等のスマート家電や、自動車などのスマートビークル(Smart vehicle)や、ドローン(drone)、ペット型ロボットや人型ロボット等の自律型ロボットであってもよい。
図1の例では、応答処理装置100は、応答処理装置100を利用するユーザが居住する自宅に設置されるものとする。第1の実施形態において、応答処理装置100は、集音した音声やユーザの行動等、応答を生成するための契機となる情報(以下、「入力情報」と称する)に対する応答処理を実行する。例えば、応答処理装置100は、ユーザが発した質問を認識し、質問に対する回答を音声出力したり、質問に関する情報を画面に表示したりする。なお、応答処理装置100が実行する音声認識処理や出力処理等については、種々の既知の技術が利用されてもよい。
また、図1に示す例では、ユーザは、応答処理装置100とともに、端末10Aや、端末10Bや、端末10C等の情報機器を利用するものとする。端末10A、端末10B、及び端末10Cは、応答処理装置100と同様、エージェント機能を有する各種情報機器である。例えば、端末10A、端末10B、及び端末10Cは、種々のメーカが開発した情報機器であり、各々が異なるクラウドサーバ等と連携し、各々がエージェント機器として利用可能な情報機器である。なお、以下では、端末10Aや端末10B、端末10C等の個々の端末を区別する必要のない場合、「端末10」と総称する。
図1の例のように、複数のエージェント機器がユーザに利用される状況で適切な運用を行うためには、様々な課題が存在する。
例えば、各々のエージェント機器には、エージェント機能の利用を開始するための起動ワードが設定される。このため、複数のエージェント機器を利用する場合、ユーザは、各々のエージェント機器に対応する起動ワードを発することを要する。
また、各々のエージェント機器は、例えばユーザから質問を受けた場合には、各々異なるサービスにアクセスして回答を得る。具体的には、各々のエージェント機器は、天気情報をユーザから尋ねられた場合、各々が異なる天気情報サービスにアクセスして、各々が異なる回答を得る。このため、ユーザは、質問に答えたエージェント機器が、自身が知りたかった情報(例えば紫外線情報や花粉情報等)を発するか否かを判別することが難しい。また、エージェント機器によっては、ユーザから質問された回答を得るためのサービスにアクセスできず、回答を生成することができない可能性もある。適切な回答が得られなかった場合、ユーザは、異なるエージェント機器に同じ質問を発するという手間を要する。
また、各々のエージェント機器は、画像出力が可能であるか否か、音声出力が可能であるか否か等、様々に異なる性能や機能を有する。エージェント機器が増えるにつれ、ユーザにはそれらの性能や機能を記憶することが難しくなるため、エージェント機器の性能や機能を発揮させにくくなる。また、エージェント機器が更新され、新たな機能が追加された場合等にも、ユーザがその更新を一つ一つ確認することは負担が大きく、追加された機能が利用されないおそれもある。
そこで、本開示に係る応答処理装置100は、以下に説明する応答処理によって、上記課題を解決する。
具体的には、応答処理装置100は、複数のエージェント機器のフロンドエンド機器として機能し、ユーザとのやりとりを一括して受け付ける。例えば、応答処理装置100は、ユーザから受け付けた質問の内容を解析し、応答を生成するエージェント機器を選択する。一例として、応答処理装置100は、連携する複数のエージェント機器の機能や性能を参照し、ユーザの質問に対して最も適切な応答を生成すると想定されるエージェント機器を選択する。これにより、応答処理装置100は、ユーザが望む応答が生成される精度を向上させることができる。また、応答処理装置100は、選択されたエージェント機器によって生成された応答を出力する態様を決定する。例えば、応答処理装置100は、生成された応答(例えば音声データ)を受け付けたのち、ユーザの位置を検知し、ユーザから最も近い位置に設置されている他のエージェント機器に応答を送信する。そして、応答処理装置100は、応答を受信したエージェント機器を制御し、応答を出力させる。これにより、応答処理装置100は、ユーザから最も近い位置にあるエージェント機器から応答を出力できるため、ユーザに情報を適切に伝達することができる。
このように、応答処理装置100は、複数のエージェント機器のフロントエンド機器としてふるまい、応答の生成や出力を制御することにより、ユーザの利便性を向上させる。以下、本開示に係る第1の実施形態の応答処理の一例について、図1乃至図6を用いて、流れに沿って説明する。
図1に示す例では、応答処理装置100は、端末10A、端末10B、端末10Cの各々と連携しているものとする。例えば、応答処理装置100は、端末10A、端末10B、端末10Cを起動するための起動ワードや、各々が音声を受け付けるための形式(例えば、各々のエージェント機器が処理可能な音声API(Application Programming Interface)の種類等)等の情報をデータベースとして記憶する。
また、応答処理装置100は、自装置を起動するための起動ワードの設定もユーザから予め受け付ける。例えば、応答処理装置100は、「ハロー」という音声入力を起動ワードとして受け付けているものとする。
この場合、応答処理装置100は、ユーザから「ハロー」という音声A01が入力された場合、自装置の応答処理を起動する(ステップS1)。また、応答処理装置100は、音声A01を契機として、連携する各々の端末10を起動させる。
具体的には、応答処理装置100は、「ユーザから音声A01が入力された」ということを示す情報を端末10Aの起動ワードに相当する情報に変換し、変換した情報A02を端末10Aに送信する(ステップS2)。端末10Aの起動ワードに相当する情報とは、実際に端末10Aを起動させるための音声データであってもよいし、端末10Aを起動させるためのスクリプト(プログラム)であってもよい。例えば、応答処理装置100は、Wi-Fi(登録商標)等の家庭内ネットワークや、Bluetooth(登録商標)等の無線通信を利用し、情報A02を端末10Aに送信する。
すなわち、ユーザは、応答処理装置100に起動ワードである音声A01を入力するだけで、端末10Aも連動して起動させることができる。
同様に、応答処理装置100は、「ユーザから音声A01が入力された」ということを示す情報を端末10Bの起動ワードに相当する情報に変換し、変換した情報A03を端末10Bに送信する(ステップS3)。また、応答処理装置100は、「ユーザから音声A01が入力された」ということを示す情報を端末10Cの起動ワードに相当する情報に変換し、変換した情報A04を端末10Cに送信する(ステップS4)。
このように、応答処理装置100は、自装置の起動ワードを認識した場合に、連携する端末10A、端末10B、端末10Cの各々を起動させる。これにより、ユーザは、これから対話を行おうとする機器の全てに起動ワードを発することなく、自宅に設置された全ての機器を起動させることができる。なお、応答処理装置100は、自装置と連動して起動させない端末10を個別に指定する設定をユーザから受け付けておいてもよい。これにより、ユーザは、連動して起動させる端末10と起動させない端末10とを区別することができる。
次に、図2を用いて、応答処理装置100が、ユーザから受け付けた質問に対して応答を出力する一例について説明する。図2は、本開示の第1の実施形態に係る応答処理の一例を示す図(2)である。
図1の例において応答処理装置100を起動させたユーザは、続けて、応答処理装置100に対して質問を入力する。例えば、ユーザは、「料理XXXのレシピおしえて」と発話することで、発話の内容を含む音声A11を応答処理装置100に入力する。
応答処理装置100は、音声A11を入力情報として、応答処理を開始する(ステップS11)。具体的には、応答処理装置100は、音声A11を取得し、自動音声認識(ASR(Automatic Speech Recognition))処理や自然言語理解(NLU(Natural Language Understanding))処理を経て、音声A11に含まれるユーザの質問を解析する。例えば、応答処理装置100は、音声A11にユーザからの質問の意図が含まれている場合、質問の意図を入力情報と認識し、質問の意図に対する回答を応答として出力するための処理を開始する。
図2に示す例では、応答処理装置100は、ユーザの質問の意図が「料理XXXに関するレシピ検索」であると認識する。この場合、応答処理装置100は、まず自装置で「料理XXXに関するレシピ検索」が可能であるか否かを判定する。応答処理装置100は、自装置で「料理XXXに関するレシピ検索」が可能である場合には、ユーザへの応答を生成し、自装置から出力してもよい。
応答処理装置100が「料理XXXに関するレシピ検索」が不可能な場合、例えば、「レシピ検索」を行うサービスにアクセスできない場合や、「料理XXXのレシピ」を発見できなかった場合、応答処理装置100は、連携する端末10A等にユーザの質問を送信する。すなわち、応答処理装置100は、ユーザの質問の意図である「料理XXXに関するレシピ検索」を端末10A等に送信し、自装置の代わりに検索を実行させる。
例えば、応答処理装置100は、ユーザの質問の意図である「料理XXXに関するレシピ検索」を示す情報A12を端末10Aに送信する(ステップS12)。このとき、応答処理装置100は、例えば端末10Aの音声API等に対応するように、ユーザから受け付けた音声A11を「料理XXXに関するレシピ検索」を示す情報A12に変換する。すなわち、応答処理装置100は、音声A11を端末10Aが認識可能な形式である情報A12に変換したうえで、情報A12を端末10Aに送信する。このことは、端末10Aが、ユーザから「料理XXXのレシピおしえて」という発話を受け付けたことと同様の状況を意味する。
同様に、応答処理装置100は、音声A11を端末10Bが認識可能な形式である情報A13に変換したうえで、情報A13を端末10Bに送信する(ステップS13)。また、応答処理装置100は、音声A11を端末10Cが認識可能な形式である情報A14に変換したうえで、情報A14を端末10Cに送信する(ステップS14)。すなわち、応答処理装置100は、ユーザの質問に対する応答を生成させるエージェント機器として、端末10A、端末10B及び端末10Cを選択する。
その後、応答処理装置100は、ユーザの質問に対する回答を生成することが可能であるか否かの返信を端末10A、端末10B又は端末10Cから受信する。図2の例では、端末10Bが、ユーザの質問に対する回答を生成することが可能である旨の返信を応答処理装置100に送信するものとする(ステップS15)。なお、図2では図示を省略しているが、端末10A及び端末10Cは、ユーザの質問に対する回答を生成することが不可能である旨を応答処理装置100に送信してもよい。
端末10Bからの返信を受けて、応答処理装置100は、ユーザに対して出力される応答を生成するエージェント機器として、端末10Bを選択する。この場合、応答処理装置100は、出力先となる端末10Bをユーザに通知する旨の音声を出力する。例えば、応答処理装置100は、「端末10Bから出力します。」といった内容を含む音声A15をユーザに対して出力する。その後、応答処理装置100は、端末10Bを制御し、端末10Bが検索したレシピを音声出力させる。
なお、応答処理装置100は、端末10Bと共通する音声APIを利用して、端末10Bが出力しようとする音声データを端末10Bから取得してもよい。この場合、応答処理装置100は、端末10Bから音声を出力させるのではなく、自装置が音声を出力してもよい。これにより、ユーザは、実際には端末10Bが検索した情報であっても、応答処理装置100による音声出力によって情報を得ることができるため、応答処理装置100以外の端末10B等を意識せずに対話を行うことができる。
次に、図3を用いて、応答処理装置100が、ユーザの質問に対する応答を生成させる端末10を指定する処理について説明する。図3は、本開示の第1の実施形態に係る応答処理の一例を示す図(3)である。
図2と同様、応答処理装置100は、ユーザから「料理XXXのレシピおしえて」という内容を含む音声A16を取得する(ステップS16)。
図3の例では、応答処理装置100は、各端末10が実行可能な機能を記憶したデータベースDB01を有する。この場合、応答処理装置100は、音声A16に対するASR処理やNLU処理を経て、ユーザの意図が「レシピ検索」であると判定した場合、データベースDB01を参照し、「レシピ検索」が可能である端末10を抽出する。
応答処理装置100は、データベースDB01を参照し、端末10Aや端末10Cはレシピ検索の機能を有しないこと、及び、端末10Bはレシピ検索の機能を有することを認識する。この場合、応答処理装置100は、端末10Aや端末10Cには情報を送信せず、端末10Bを選択して、ユーザの意図を示す情報A17を送信する(ステップS17)。
端末10Bは、情報A17に対する応答を生成することが可能である旨の返信を応答処理装置100に送信する(ステップS18)。その後、応答処理装置100は、図2の例と同様、「端末10Bから出力します。」といった内容を含む音声A18をユーザに対して出力するとともに、端末10Bからレシピを音声出力させる。このように、応答処理装置100は、予め各端末10の機能を確認し、応答を生成することができると推定される端末10のみにユーザの依頼を送信してもよい。これにより、応答処理装置100は、無駄な通信を発生させずに済むため、通信負荷を低減させたり、情報処理を高速化させたりすることができる。
次に、図4を用いて、応答処理装置100が、ユーザのコンテキスト(context)に基づいて応答を出力する一例について説明する。図4は、本開示の第1の実施形態に係る応答処理の一例を示す図(4)である。
図2と同様、応答処理装置100は、ユーザから「料理XXXのレシピおしえて」という内容を含む音声A21を取得する(ステップS21)。また、応答処理装置100は、ユーザの意図を示す情報A22を端末10Bに送信する(ステップS22)。端末10Bは、情報A22に対する応答を生成することが可能である旨の返信を応答処理装置100に送信する(ステップS23)。
図4の例では、応答処理装置100は、応答を出力する際にユーザのコンテキストを取得する。ユーザのコンテキストとは、例えば、現在のユーザの状況を示す情報である。図4の例では、応答処理装置100は、コンテキストとして、自装置が備えたカメラで捉えたユーザの位置や、カメラで撮像された画像を認識することで得られるユーザの状況等を取得する。具体的には、応答処理装置100は、ユーザが「台所にいる」状態であり、また、例えば両手がふさがっている等、ユーザが「作業中」であるというコンテキストを取得する。
そして、応答処理装置100は、取得したコンテキストに応じて、応答を出力する態様を決定する。例えば、応答処理装置100は、端末10Bが台所に所在する場合、端末10Bが生成した応答を端末10Bで出力することを決定する。
また、応答処理装置100は、ユーザが作業中であることから、ユーザが手をとめないで済むように、音声とともに画像で応答を出力するよう、端末10Bを制御する。例えば、端末10Bは、プロジェクタ機能を動作させ、画像を台所の壁に投影することにより、生成した応答(レシピ情報)を壁に出力する。また、端末10Bは、生成した応答を音声出力する。また、応答処理装置100は、図3の例と同様、「端末10Bから出力します。」といった内容を含む音声A23をユーザに対して出力する。
このように、応答処理装置100は、ユーザのコンテキストに応じて応答を出力する態様を決定してもよい。応答処理装置100は、例えば、ユーザの近くに所在する端末10に応答を出力させたり、ユーザの状況に応じて応答の情報の種別(音声か画像か動画か等)を選択したりする。これにより、応答処理装置100は、よりユーザビリティに優れた対話システムを実現することができる。
次に、図5を用いて、応答処理装置100が、複数の応答を取得した場合の一例について説明する。図5は、本開示の第1の実施形態に係る応答処理の一例を示す図(5)である。
図5の例では、応答処理装置100は、ユーザから「今日の天気おしえて」という内容を含む音声A25を取得する(ステップS31)。応答処理装置100は、音声A25に対するASR処理やNLU処理を経て、ユーザの意図が「今日の天気情報の検索」であると判定した場合、各端末10にユーザの意図を送信する。
すなわち、図2と同様、応答処理装置100は、端末10Aに応じた形式の情報A26を端末10Aに送信する(ステップS32)。また、応答処理装置100は、端末10Bに応じた形式の情報A27を端末10Bに送信する(ステップS33)。また、応答処理装置100は、端末10Cに応じた形式の情報A28を端末10Cに送信する(ステップS34)。
端末10Aは、情報A26に対応する応答として、検索した天気情報を応答処理装置100に送信する(ステップS35)。同様に、端末10Bは、情報A27に対応する応答として、検索した天気情報を応答処理装置100に送信する(ステップS36)。同様に、端末10Cは、情報A28に対応する応答として、検索した天気情報を応答処理装置100に送信する(ステップS37)。
上述のように、端末10A、端末10B及び端末10Cは、それぞれ異なるサービスから情報を取得するため、同じ天気情報でも、応答処理装置100に送信する情報が異なる。すなわち、応答処理装置100は、端末10A、端末10B及び端末10Cの各々から異なる応答(天気情報)を取得する。
例えば、図5に示すデータベースDB02は、応答処理装置100が取得した応答に含まれる情報を示す。図5に示す例では、端末10Aが取得した天気情報は、「画面表示」が可能であり、「音声出力」が可能であり、「降水確率」や「花粉情報」が含まれるものの、「紫外線情報」が含まれないことを示している。また、端末10Bが取得した天気情報は、「画面表示」が可能であり、「音声出力」が可能であり、「降水確率」が含まれるものの、「紫外線情報」や「花粉情報」が含まれないことを示している。また、端末10Cが取得した天気情報は、「音声出力」が可能であり、「降水確率」や「紫外線情報」や「花粉情報」が含まれるものの、静止画や動画等で天気情報を表示するような「画面表示」はできないことを示す。
応答処理装置100は、データベースDB02を参照し、いずれの応答をユーザに出力するかを決定する。例えば、応答処理装置100は、取得した天気情報のうち、「降水確率」や「紫外線情報」や「花粉情報」といった多くの情報が含まれる、端末10Cの天気情報を出力してもよい。あるいは、応答処理装置100は、取得した天気情報のうち、画面表示が可能な、端末10Aや端末10Bの天気情報を出力してもよい。応答処理装置100は、出力すると決定した天気情報を含む音声A29や、天気情報に含まれる画面を出力する。あるいは、応答処理装置100は、端末10A等を制御し、天気情報を出力させてもよい。
このように、応答処理装置100は、複数の応答を取得し、取得した応答から、ユーザに出力する応答を決定してもよい。例えば、応答処理装置100は、取得した応答の情報量や質等に応じて、実際にユーザに出力する応答を決定してもよい。これにより、応答処理装置100は、複数の応答から適切な応答を選択して出力できるので、ユーザが所望するような応答処理を実現しやすくなる。また、応答処理装置100は、複数のソースから得られた情報を、適宜、統合したり組み合わせたりして応答を生成してもよい。具体的には、応答処理装置100は、異なる端末10から得られた画像情報と音声情報との一部を組み合わせたり、複数の音声情報の各部分を編集して組み合わせたりしてもよい。
次に、図6を用いて、応答処理装置100が、様々な態様の端末10と連携して応答処理を行う一例について説明する。図6は、本開示の第1の実施形態に係る応答処理の一例を示す図(6)である。
図6に示す例では、応答処理装置100は、端末10Aの他に、ペット型ロボットである端末10Dや、人型ロボットである端末10Eや、把持ロボットである10F等と連携する。
図6の例では、図5の例と同様、応答処理装置100は、ユーザから「今日の天気おしえて」という内容を含む音声A31を取得する(ステップS41)。応答処理装置100は、音声A31に対するASR処理やNLU処理を経て、ユーザの意図が「今日の天気情報の検索」であると判定した場合、各端末10にユーザの意図を送信する。
すなわち、図5と同様、応答処理装置100は、端末10Aに応じた形式に変換したユーザの意図を端末10Aに送信する(ステップS42)。また、応答処理装置100は、端末10Dに応じた形式に変換したユーザの意図を端末10Dに送信する(ステップS43)。また、応答処理装置100は、端末10Eに応じた形式に変換したユーザの意図を端末10Eに送信する(ステップS44)。また、応答処理装置100は、端末10Fに応じた形式に変換したユーザの意図を端末10Fに送信する(ステップS45)。
端末10Aは、検索した天気情報を応答処理装置100に送信する(ステップS46)。一方、端末10Dは、出力として、検索した天気情報に対応した動きを行う旨を応答処理装置100に伝達する(ステップS47)。例えば、端末10Dは、検索した天気情報が晴れである場合、喜びを示す動きを行う旨を応答処理装置100に伝達する。また、端末10Eは、検索した天気情報を音声出力することができる旨を応答処理装置100に伝達する(ステップS48)。なお、端末10Fは、天気情報に応答することができない旨を送信するか、あるいは、ユーザの意図が理解できない旨を示すエラー情報を返してもよい。
応答処理装置100は、各々の端末10から送信された情報に基づいて、ユーザに出力する応答の態様を決定する。例えば、応答処理装置100は、自装置で天気情報を示す音声A32を出力する。また、応答処理装置100は、端末10Aを制御し、画面表示付きの天気情報を出力させる。また、応答処理装置100は、端末10Dを制御し、喜びを示す動きを出力させる。また、応答処理装置100は、端末10Eを制御し、天気情報を示す音声を出力させる。
このように、応答処理装置100は、必ずしも一つの天気情報のみを一つの端末10から出力するのではなく、各端末10の特性を生かして、異なる複数の態様の応答を出力させてもよい。これにより、ユーザは、応答処理装置100に対する一つの対話のみで、様々な端末10が出力する種々の応答を確認することができる。
図1乃至図6で示すように、第1の実施形態に係る応答処理装置100は、各端末10が応答を生成する契機となる情報である入力情報をユーザから取得し、複数の端末10のうち、入力情報に対応した応答を生成する端末10を一つあるいは複数選択する。さらに、応答処理装置100は、入力情報に対応する応答であって、選択された端末10によって生成された応答の出力を制御する。
このように、応答処理装置100が複数の端末10を制御するフロントエンドの機能を果たすことにより、ユーザは、応答処理装置100とのみ対話することで、複数の端末10が取得する情報や、出力する応答を得ることができる。これにより、応答処理装置100は、ユーザの利便性を向上させることができる。
[1-2.第1の実施形態に係る応答処理システムの構成]
続いて、上述した第1の実施形態に係る応答処理装置100等の構成について、図7を用いて説明する。図7は、本開示の第1の実施形態に係る応答処理システム1の構成例を示す図である。
続いて、上述した第1の実施形態に係る応答処理装置100等の構成について、図7を用いて説明する。図7は、本開示の第1の実施形態に係る応答処理システム1の構成例を示す図である。
図7に示すように、応答処理システム1は、端末10と、応答処理装置100と、外部サーバ200とを含む。端末10、応答処理装置100及び外部サーバ200は、図7に図示するネットワークN(例えば、インターネット)を介して、有線又は無線により通信可能に接続される。なお、図7での図示は省略するが、応答処理システム1は、複数台の端末10や外部サーバ200を含んでもよい。
端末10は、ユーザに利用される情報処理端末である。端末10は、いわゆるエージェント機器であり、ユーザとの対話を行ったり、ユーザが発した音声や動作等に対する応答を生成したりする。端末10は、後述する応答処理装置100が備える構成の全て又は一部を備えていてもよい。
外部サーバ200は、各種サービスを提供するサービスサーバである。例えば、外部サーバ200は、端末10や応答処理装置100の要求に従い、天気情報や交通情報等を提供する。
応答処理装置100は、本開示に係る応答処理を実行する情報処理端末である。図7に示すように、応答処理装置100は、センサ20と、入力部21と、通信部22と、記憶部30と、取得部40と、選択部50と、出力部60とを有する。
センサ20は、各種情報を検知するためのデバイスである。センサ20は、例えば、ユーザが発話した音声を集音する音声入力センサ20Aを含む。音声入力センサ20Aは、例えば、マイクロフォンである。また、センサ20は、例えば、画像入力センサ20Bを含む。画像入力センサ20Bは、例えば、ユーザやユーザの自宅内の状況を撮影するためのカメラである。
また、センサ20は、ユーザが応答処理装置100に触れたことを検知するタッチセンサや、加速度センサやジャイロセンサ等を含んでもよい。また、センサ20は、応答処理装置100の現在位置を検知するセンサを含んでもよい。例えば、センサ20は、GPS(Global Positioning System)衛星から送出される電波を受信し、受信した電波に基づいて応答処理装置100の現在位置を示す位置情報(例えば、緯度及び経度)を検知してもよい。
また、センサ20は、外部装置が発する電波を検知する電波センサや、電磁波を検知する電磁波センサ等を含んでもよい。また、センサ20は、応答処理装置100が置かれた環境を検知してもよい。具体的には、センサ20は、応答処理装置100の周囲の照度を検知する照度センサや、応答処理装置100の周囲の湿度を検知する湿度センサや、応答処理装置100の所在位置における磁場を検知する地磁気センサ等を含んでもよい。
また、センサ20は、必ずしも応答処理装置100の内部に備えられなくてもよい。例えば、センサ20は、通信等を用いてセンシングした情報を応答処理装置100に送信することが可能であれば、応答処理装置100の外部に設置されてもよい。
入力部21は、ユーザから各種操作を受け付けるためのデバイスである。例えば、入力部21は、キーボードやマウス、タッチパネル等によって実現される。
通信部22は、例えば、NIC(Network Interface Card)等によって実現される。通信部22は、ネットワークNと有線又は無線で接続され、ネットワークNを介して、端末10や外部サーバ200等との間で情報の送受信を行う。
記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部30は、ユーザ情報テーブル31と、端末情報テーブル32と、機能テーブル33とを有する。以下、各データテーブルについて順に説明する。
ユーザ情報テーブル31は、応答処理装置100を利用するユーザに関する情報を記憶する。図8に、第1の実施形態に係るユーザ情報テーブル31の一例を示す。図8は、本開示の第1の実施形態に係るユーザ情報テーブル31の一例を示す図である。図8に示した例では、ユーザ情報テーブル31は、「ユーザID」、「ユーザ属性情報」、「履歴情報」といった項目を有する。
「ユーザID」は、ユーザを識別する識別情報を示す。「ユーザ属性情報」は、応答処理装置100の利用の際にユーザから登録される、ユーザの各種情報を示す。図8に示した例では、ユーザ属性情報の項目を「F01」のように概念的に記載しているが、実際には、ユーザ属性情報には、ユーザの年齢や性別、居住地、家族構成等の属性情報(ユーザプロファイル)が含まれる。また、ユーザ属性情報には、例えば、ユーザに視覚障碍があること等、出力する情報の種別を選択するために要する情報が含まれてもよい。例えば、ユーザ属性情報に視覚障碍があることが登録されている場合、応答処理装置100は、通常であれば画面に表示される応答の内容を、音声に変換して出力してもよい。このような変換は、例えばTTS(text-to-speech)処理等の既知の技術が用いられてもよい。
「履歴情報」は、ユーザの応答処理装置100の利用履歴を示す。図8に示した例では、履歴情報の項目を「G01」のように概念的に記載しているが、実際には、履歴情報には、ユーザが応答処理装置100に質問した内容や、聞き返しの履歴や、出力された応答の履歴等の各種情報が含まれる。また、履歴情報には、ユーザを音声で識別するための声紋情報や波形情報等が含まれてもよい。
すなわち、図8に示した例では、ユーザIDが「U01」で識別されるユーザは、ユーザ属性情報が「F01」であり、履歴情報が「G01」であることを示している。
なお、図8に示した「履歴情報」には、ユーザの過去の行動を示す情報が含まれてもよい。図9に、履歴情報に含まれるユーザの行動情報の例を示す。
図9は、本開示の第1の実施形態に係る行動情報テーブル31Aの一例を示す図である。図9に示した例では、行動情報テーブル31Aは、「ユーザID」、「時刻」、「位置」、「動作」、「状況」、「体勢」、「利用履歴」といった項目を有する。
「ユーザID」は、図8に示した同一の項目に対応する。「時刻」は、ユーザの行動が観測された時刻を示す。「位置」は、ユーザが観測された位置を示す。「動作」は、ユーザの動作を示す。「状況」は、動作等から推定されるユーザの状況を示す。「体勢」は、ユーザの体勢を示す。なお、動作や状況や体勢は、例えば、応答処理装置100が撮影した画像や動画を画像認識すること等により得られる。「利用履歴」は、ユーザの行動が観測された場合に、ユーザが応答処理装置100を利用した利用履歴を示す。
図9に示すように、応答処理装置100は、ユーザの行動情報や、行動情報と対応付けた応答処理装置100の利用履歴を取得し、記憶してもよい。これにより、応答処理装置100は、ユーザがどのような行動をとっているときに、どのような質問や対話を行っているかといった、ユーザごとの傾向を取得することができる。
次に、端末情報テーブル32について説明する。端末情報テーブル32は、応答処理装置100と連携する端末10に関する情報を記憶する。
図10に、第1の実施形態に係る端末情報テーブル32の一例を示す。図10は、本開示の第1の実施形態に係る端末情報テーブル32の一例を示す図である。図10に示した例では、端末情報テーブル32は、「端末ID」、「入力情報」、「機能」、「出力フォーマット」、「設置位置」といった項目を有する。また、「入力情報」は、「音声入力」、「入力方式」、「対応フォーマット」といった小項目を有する。
「端末ID」は、端末10を識別する識別情報を示す。なお、明細書中では、端末IDと端末10の参照符号は共通するものとする。例えば、端末IDが「10A」で識別される端末10とは、「端末10A」を意味する。
「入力情報」は、端末10に情報が入力される際のファイル形式等の情報を示す。「音声入力」は、端末10に入力される音声がどのような形式で入力されるかといった情報を示す。「入力方式」は、例えば、応答処理装置100から送信される音声がどのような方式で入力されるかといった情報を示す。「対応フォーマット」は、端末10が処理可能なデータ(音声や画像等)のフォーマットを示す。図10に示した例では、対応フォーマットの項目を「B01」のように概念的に記載しているが、実際には、対応フォーマットの項目には、端末10が処理可能な具体的な音声フォーマットの種類(「mp3」や「wav」等)や静止画フォーマットの種類(「jpg」等)、動画フォーマットの種類(「mp4」等)が記憶される。また、対応フォーマットの項目には、端末10が有する音声APIや画像API等の種別が記憶されてもよい。
「機能」は、端末10が有する機能を示す。図10に示した例では、機能の項目を「C01」のように概念的に記載しているが、実際には、機能の項目には、端末10が実行可能な機能の種別が記憶される。なお、機能の詳細な情報については、後述する機能テーブル33に記憶される。
「出力フォーマット」は、端末10が出力可能なデータのフォーマットを示す。図10に示した例では、出力フォーマットの項目を「D01」のように概念的に記載しているが、実際には、出力フォーマットの項目には、音声出力が可能か、画像出力が可能か、動画再生が可能かといった、端末10が出力することが可能な態様が具体的に記憶される。
「設置位置」は、端末10が設置される位置を示す。なお、図10の例では、「設置位置」を「リビング」や「台所」等、ユーザの自宅における名称で示しているが、「設置位置」の項目には、異なる情報が記憶されてもよい。例えば、「設置位置」は、具体的な経度緯度等の位置情報で示されてもよいし、応答処理装置100が生成したマップにおける対応位置で示されてもよい。すなわち、設置位置は、応答処理装置100が各端末10の位置を把握することが可能な情報であれば、どのような情報であってもよい。
すなわち、図10に示した例では、端末ID「10A」で識別される端末10Aは、音声入力が「デジタル信号」であり、入力方式が「無線又は有線」であり、対応フォーマットが「B01」であることを示している。また、図10に示した例では、端末10Aが備える機能が「C01」であり、出力フォーマットが「D01」であり、設置位置が「リビング」であることを示している。
次に、機能テーブル33について説明する。機能テーブル33は、端末10が備える各機能の詳細な情報を記憶する。
図11に、第1の実施形態に係る機能テーブル33の一例を示す。図11は、本開示の第1の実施形態に係る機能テーブル33の一例を示す図である。図11に示した例では、機能テーブル33は、「機能ID」、「端末ID」、「接続サービス」、「出力フォーマット」、「平均再生時間」、「内容」、「ユーザの選択履歴」といった項目を有する。
「機能ID」は、機能を識別する識別情報を示す。「端末ID」は、図10に示した同一の項目に対応する。「接続サービス」は、各端末10が機能を実現するために接続する外部サービスやアプリケーション等の名称を示す。なお、端末10が応答を生成するために外部サービスに接続する必要のない場合、「接続サービス」の項目は空欄となる。また、図11に示した例では、接続サービスの項目を「J01」のように概念的に記載しているが、実際には、接続するサービスとは、サービスを示す具体的な名称や接続先(具体的なアドレス等)が記憶される。
「出力フォーマット」は、各端末10が接続サービスから受信した情報を出力することが可能なフォーマットを示す。例えば、出力フォーマットは、音声や画像等である。「平均再生時間」は、各端末10が接続サービスから受信した情報を再生する際にかかる時間を示す。「内容」は、各端末10が外部サービス等から取得可能な内容を示す。「ユーザの選択履歴」は、ある機能を利用しようとしたユーザが、どのくらいの頻度でどの端末10を選択したかといった履歴を示す。
すなわち、図11に示した例では、機能ID「K01」で識別される機能は、「天気予報」に関する機能であり、その機能を実現する端末は、例えば、「端末10A」や「端末10B」や「端末10C」であることを示している。また、「端末10A」は、天気予報を実行するために(すなわち、天気予報に関する情報を取得するために)、「J01」というサービスに接続し、出力フォーマット「K01」に対応する情報を取得し、その情報は、平均再生時間「10秒」であることを示している。また、「端末10A」が取得する天気予報に関する情報には、「天気概況、降水確率、画像出力、音声出力、花粉、・・・」といった内容が含まれる。また、応答処理装置100が天気予報という機能を実行した場合に、「端末10A」が選択された履歴は、「L01」であることを示している。
なお、図11では、機能の一例として「天気予報」を示したが、機能はこの例に限られない。例えば、端末10が有する機能としては、「交通情報」や「ニュース」等を出力する機能や、「カレンダー」等のスケジュール管理機能や、「レシピ検索」や「ネットスーパー注文」、「翻訳」、「百科事典」、「辞書」等、ユーザの活動を支援する機能等が挙げられる。また、端末10がロボット等である場合には、端末10は、「感情表現」や、「ユーザと遊ぶ」や「危険を知らせる」等の機能を備えてもよい。また、人型ロボットである端末10は、「調理補助」や「家族間伝言」や「翻訳」等の機能を備えてもよい。また、把持ロボットや掃除専用ロボットである端末10は、「掃除センサ」や「ほこりセンサ」、「物の移動や片づけ」、「DIY補助」等の機能を備えてもよい。また、ロボットである端末10の機能には、「動力部(アクチュエータ)」を備えているか否か、あるいは、「アーム部(マニピュレータ等と称される)」を備えているか否か等の情報が含まれてもよい。
図7に戻って説明を続ける。取得部40、選択部50及び出力制御部55は、応答処理装置100が実行する情報処理を実行する処理部である。取得部40、選択部50及び出力制御部55は、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等によって、応答処理装置100内部に記憶されたプログラム(例えば、本開示に係る応答処理プログラム)がRAM(Random Access Memory)等を作業領域として実行されることにより実現される。また、取得部40、選択部50及び出力制御部55は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
取得部40は、各種情報を取得する処理部である。図7に示すように、取得部40は、検知部41と、登録部42と、受信部43とを含む。
検知部41は、センサ20を介して、各種情報を検知する。例えば、検知部41は、センサ20の一例である音声入力センサ20Aを介して、ユーザが発話した音声を検知する。また、検知部41は、画像入力センサ20Bや加速度センサ、赤外線センサ等を介して、ユーザの顔情報、ユーザの身体の向き、傾き、動きや移動速度等、ユーザの動作に関する各種情報を検知してもよい。すなわち、検知部41は、センサ20を介して、位置情報、加速度、温度、重力、回転(角速度)、照度、地磁気、圧力、近接、湿度、回転ベクトルといった、種々の物理量をコンテキストとして検知してもよい。
登録部42は、入力部21を介して、ユーザからの登録を受け付ける。例えば、登録部42は、タッチパネルやキーボードを介して、ユーザプロファイル(属性情報)の登録をユーザから受け付ける。
また、登録部42は、ユーザのスケジュール等の登録を受け付けてもよい。例えば、登録部42は、応答処理装置100に組み込まれたアプリケーション機能を利用して、スケジュール登録をユーザから受け付ける。
受信部43は、各種情報を受信する。例えば、受信部43は、ユーザの属性情報やスケジュール情報が、応答処理装置100ではなく外部サービス等に登録されている場合、外部サーバ200から、ユーザの属性情報やスケジュール等を受信する。
また、受信部43は、通信に関するコンテキストを受信してもよい。例えば、受信部43は、応答処理装置100と各種機器(ネットワーク上のサーバや、自宅内の家電等)との接続状況をコンテキストとして受信してもよい。各種機器との接続状況とは、例えば、相互通信が確立しているか否かを示す情報や、通信に利用している通信規格等である。
取得部40は、上記各処理部を制御することにより、各種情報を取得する。例えば、取得部40は、端末10が応答を生成する契機となる情報である入力情報をユーザから取得する。
例えば、取得部40は、入力情報として、ユーザが発した音声情報を取得する。具体的には、取得部40は、「天気おしえて」などのユーザの発話を取得し、当該発話に含まれる何らかの意図を入力情報として取得する。
あるいは、取得部40は、入力情報として、ユーザの行動を検知した検知情報を取得してもよい。検知情報とは、検知部41がセンサ20を介して検知した情報である。具体的には、検知情報とは、ユーザが応答処理装置100のカメラを見たことを示す情報や、ユーザが自宅の部屋から玄関へ移動したことを示す情報等、応答処理装置100が応答を生成する契機となりうるユーザの行動である。
また、取得部40は、各種のコンテキストに関する情報を取得してもよい。コンテキストとは、応答処理装置100が応答を生成する際の各種状況を示す情報である。なお、コンテキストには、ユーザが応答処理装置100を見たことを示す行動情報等の「ユーザの状況を示す情報」が含まれるため、コンテキストは、入力情報にもなりうる。
例えば、取得部40は、コンテキストとして、ユーザによって予め登録されたユーザの属性情報を取得してもよい。具体的には、取得部40は、ユーザの性別や年齢、居住地等の情報を取得する。また、取得部40は、属性情報として、ユーザが視覚障碍を有すること等、ユーザの特徴を示す情報を取得してもよい。また、取得部40は、応答処理装置100の利用履歴等に基づいて、ユーザの趣味嗜好等の情報をコンテキストとして取得してもよい。
また、取得部40は、コンテキストとして、ユーザの位置を示す位置情報を取得してもよい。位置情報とは、具体的な経度緯度等の位置を示す情報であってもよいし、ユーザが自宅内のどの部屋にいるか等を示す情報であってもよい。例えば、位置情報は、ユーザが自宅内のリビングにいるか、寝室にいるか、子供部屋にいるかといった、ユーザの所在地を示した情報であってもよい。あるいは、位置情報は、ユーザの外出先を示す具体的な場所の情報であってもよい。また、ユーザの外出先を示す情報には、ユーザが電車に乗っているか、自動車を運転しているか、あるいは、学校や会社に出かけていること等の状況を示す情報が含まれてもよい。取得部40は、例えば、ユーザが所有するスマートフォン等の携帯端末と相互に通信を行うことにより、これらの情報を取得してもよい。
また、取得部40は、コンテキストとして、ユーザの行動もしくは感情を推定した推定情報を取得してもよい。
例えば、取得部40は、コンテキストとして、ユーザの行動から推定される情報であって、ユーザの将来の行動予測を示した情報である行動予測情報を取得する。具体的には、取得部40は、ユーザが自宅の部屋から玄関へ移動したことを示す行動から推定される情報として、「ユーザが外出しようとしている」といった行動予測情報を取得する。例えば、取得部40は、「ユーザが外出しようとしている」といった行動予測情報を取得した場合、当該情報に基づいて、「外出」といったタグ付けされたコンテキストを取得する。
また、取得部40は、ユーザの行動として、ユーザが予め登録したスケジュール情報を取得してもよい。具体的には、取得部40は、ユーザが発話した時刻から所定期間以内(例えば1日以内等)の予定時刻で登録されたスケジュール情報を取得する。これにより、取得部40は、ある時刻にユーザがどこに出かけようとしているかといった情報等を推定することができる。
また、取得部40は、センサ20で捉えられたユーザの移動速度や、ユーザが所在する位置や、ユーザの発話速度等を検知すること等によりユーザの状況や感情を推定してもよい。例えば、取得部40は、通常のユーザの発話速度よりも速い発話速度が観測された場合、「ユーザが急いでいる」という状況や感情を推定してもよい。例えば、応答処理装置100は、ユーザが通常よりも急いでいる状況にあることを示すコンテキストが取得された場合、より手短な応答を出力する等の調整を行うことができる。
なお、上記で示したコンテキストは一例であり、ユーザや応答処理装置100が置かれた状況を示すあらゆる情報がコンテキストとなりうる。例えば、取得部40は、センサ20を介して取得される、応答処理装置100の位置情報、加速度、温度、重力、回転(角速度)、照度、地磁気、圧力、近接、湿度、回転ベクトルといった、種々の物理量をコンテキストとして取得してもよい。また、取得部40は、内蔵する通信機能を利用して、各種装置との接続状況(例えば、通信の確立に関する情報や、利用している通信規格)などを、コンテキストとして取得してもよい。
また、コンテキストには、ユーザと他のユーザや、ユーザと応答処理装置100とが交わしている対話に関する情報が含まれてもよい。例えば、コンテキストには、ユーザが交わしている対話の文脈を示す対話文脈情報、対話のドメイン(天気、ニュース、電車運行情報等)、ユーザ発話の意図や属性情報等が含まれてもよい。
また、コンテキストには、対話が行われている際の日時情報が含まれてもよい。具体的には、日時情報とは、日付、時間、曜日、祝日特性(クリスマス等)、時間帯(朝、昼、夜、夜中)等の情報である。
また、取得部40は、ユーザが行っている特定の家事の情報や、視聴しているテレビ番組の内容や、何を食べているかを示す情報や、特定の人物と会話をしていること等、ユーザの状況を示す種々の情報をコンテキストとして取得してもよい。
また、取得部40は、自宅内に置かれた家電(IoT機器等)との相互通信により、どの家電がアクティブであるか否か(例えば、電源がオンであるかオフであるか)、どの家電がどのような処理を実行しているか、といった情報を取得してもよい。
また、取得部40は、外部サービスとの相互通信により、ユーザの生活圏における交通状況や気象情報等をコンテキストとして取得してもよい。取得部40は、取得した各情報をユーザ情報テーブル31等に格納する。また、取得部40は、ユーザ情報テーブル31や端末情報テーブル32を参照し、処理に要する情報を適宜取得してもよい。
続いて、選択部50について説明する。図7に示すように、選択部50は、依頼分析部51と、状態推定部52とを含む。選択部50は、依頼分析部51及び状態推定部52が実行する処理により得られる情報に基づき、複数の端末10のうち入力情報に対応した応答を生成する端末10を選択する。
なお、選択部50は、入力情報に対する応答を応答処理装置100が生成することができないと判定した場合に、複数の端末10のうち、入力情報に対応した応答を生成する端末10を選択してもよい。言い換えれば、選択部50は、自装置で応答を生成することができる場合には自装置で応答を生成してもよい。これにより、選択部50は、自装置で処理が可能な対話に関しては迅速な対応を行うことができる。
また、選択部50は、複数の端末10の各々が入力情報に対する応答を生成することができるか否かを判定し、入力情報に対する応答を生成することができないと判定された端末10以外の端末10を、当該入力情報に対応した応答を生成する端末10として選択してもよい。すなわち、選択部50は、端末情報テーブル32や機能テーブル33を参照し、応答を生成することができると想定される端末10を選択するようにしてもよい。これにより、選択部50は、全ての端末10に無作為に要求を送信するような手間を省くことができる。
また、選択部50は、入力情報に対応した応答を生成する端末10として複数の端末10を選択してもよい。すなわち、選択部50は、応答を生成する端末10として一つの端末10のみを選択するのではなく、応答を生成することが可能な複数の端末10を選択してもよい。これにより、選択部50は、ユーザの質問に対して生成される応答を多様化することができる。
選択部50は、選択した複数の端末10の各々が認識可能な態様に入力情報を変換し、変換後の入力情報を複数の端末10に送信する。例えば、選択部50は、図2等で示したように、ユーザの発話を分析した結果を各端末10が読み込み可能な形式に変換し、変換後の情報を各端末10に送信する。
例えば、選択部50は、各端末10のAPIを利用してユーザの発話を分析した結果を送信してもよい。また、選択部50は、端末10が利用するAPIが利用できなかったり、APIが不明であったりする場合には、他の手法を用いてユーザの発話を分析した結果を送信してもよい。
例えば、選択部50は、通信での情報が不可能であり、アナログ音声入力のみしか受け付けることのできない端末10に対しては、ユーザの発話を実際に音声で再生することにより、当該端末10に入力情報を送信してもよい。
依頼分析部51は、取得部40によって取得された情報の意味理解処理を行う。具体的には、依頼分析部51は、取得部40によって音声情報等について、自動音声認識(ASR)処理や自然言語理解(NLU)処理を行う。例えば、依頼分析部51は、ASRやNLUを経て、取得した音声を形態素に分解したり、各形態素がどのような意図や属性を有する要素であるかを判定したりする。
なお、依頼分析部51は、入力情報の解析の結果、ユーザの意図が理解不能であった場合、その旨を出力制御部55に渡してもよい。例えば、依頼分析部51は、解析の結果、ユーザの発話から推定することのできない情報が含まれている場合、その内容を出力制御部55に渡す。この場合、出力制御部55は、不明な情報について、ユーザにもう一度正確に発話してもらうことを要求するような応答を生成してもよい。
状態推定部52は、取得部40によって取得されたコンテキストに基づいて、ユーザの状態を推定する。選択部50は、状態推定部52によって推定された情報に基づいて、端末10を選択するようにしてもよい。例えば、ユーザから発話があったタイミングで、状態推定部52によって当該ユーザが玄関付近にいることが推定された場合、選択部50は、応答を生成する端末10として、玄関付近に設置されている端末10を優先的に選択してもよい。
出力制御部55は、入力情報に対応する応答であって、選択部50によって選択された端末10によって生成された応答の出力を制御する。
例えば、出力制御部55は、複数の端末10によって応答が生成された場合に、複数の端末10によって生成された応答を比較した情報に基づいて、ユーザに対して出力する応答を決定する。
一例として、出力制御部55は、複数の端末10によって生成された各々の応答の情報量もしくは種別に基づいて、ユーザに対して出力する応答を決定する。
例えば、出力制御部55は、図5で示したように、複数の端末10によって天気情報に関する応答が生成された場合、情報量のより多い天気情報をユーザに対して出力するよう決定する。あるいは、出力制御部55は、ユーザとの対話の履歴を参照し、ユーザが「紫外線情報」よりも「花粉情報」を要求した履歴が多い場合、「花粉情報」という種別が含まれる天気情報をユーザに対して出力するよう決定してもよい。すなわち、出力制御部55は、複数の応答が存在する場合、応答の情報量や種別、また、ユーザのこれまでの履歴や状況(すなわちコンテキスト)に応じて、実際にユーザに出力する応答を柔軟に決定する。これにより、出力制御部55は、よりユーザの要望に沿った応答を出力することができる。
なお、出力制御部55は、各々の応答のうち、ソース情報の信憑性が高いこと(例えば、多くのユーザに利用されているサービスであること等)や、よりユーザが好むサービスであること等を判定基準として、出力する応答を決定してもよい。
なお、出力制御部55は、複数の端末10によって生成された複数の応答を合成し、ユーザに対して出力する応答を生成してもよい。
例えば、出力制御部55は、図5で示したように、複数の端末10によって天気情報に関する応答が生成された場合、各天気情報に含まれる情報の種別を判定する。一例として、出力制御部55は、各天気情報に含まれる情報の有無(画面表示の有無、音声出力の有無、降水確率の有無等)をベクトルとして取得する。この場合、ベクトルは、情報が存在する次元では「1」が記憶され、情報が存在しない次元では「0」が記憶される。出力制御部55は、複数の天気情報を取得し合成することにより、できる限り「1」が記憶される次元の多いベクトルを生成する。そして、出力制御部55は、生成したベクトルを音声に変換し、ユーザに対して出力する。これにより、出力制御部55は、個々の端末10が生成した場合には含まれない可能性のある情報(図5の例では、「紫外線情報」や「花粉情報」)を全て含む天気情報をユーザに提供することができる。
なお、出力制御部55は、取得した天気情報の全ての種別を合成するのではなく、例えば所定の再生時間に合うよう情報を取捨選択するなど、柔軟に情報を合成してもよい。
また、出力制御部55は、コンテキストに基づいて、選択された端末10によって生成された応答を出力する態様を決定してもよい。
一例として、出力制御部55は、ユーザの属性情報に応じて、ユーザに対して出力する応答の種別、もしくは、応答を出力する出力先を決定してもよい。例えば、天気情報を出力する場合に、ユーザの属性が「子ども」である場合、出力制御部55は、理解の難しい単語等が含まれる可能性のある音声出力ではなく、一目で天気がわかる「画像出力」を選択してもよい。この場合、出力制御部55は、出力する情報の種別(画像情報)に合わせて、出力する端末10を選択してもよい。具体的には、出力制御部55は、画像表示が可能な端末10を選択して、応答を出力させる。
また、出力制御部55は、ユーザの属性に「視覚障碍」が含まれる場合、画像出力ではなく、音声出力を優先してもよい。また、出力制御部55は、端末10の応答がユーザにとってわかりにくいと推定される場合、ユーザに出力する音声を付与してもよい。例えば、ユーザが「部屋の温度を下げて」と応答処理装置100に依頼したとする。この場合、応答処理装置100は、エアコンである端末10にユーザの依頼を送信し、ユーザに対する応答を実行させる。この場合、端末10は、「部屋の設定温度を下げる」という応答を実行する。このとき、ユーザの属性に「視覚障碍」が含まれる場合、ユーザはエアコンを見ても動作の状況がわからないため、応答処理装置100が、「エアコンの温度が2度下がりました」といった、ユーザが理解しやすい具体的な情報を音声出力する。これにより、ユーザは、端末10がどのように動作したかを、応答処理装置100を介して知覚することができる。また、応答処理装置100は、ユーザの属性に「聴覚障碍」が含まれる場合、端末10が動作したときの反応音を画面上に表示する等、ユーザに対応して様々な出力を行ってもよい。
また、出力制御部55は、ユーザと複数の端末10の少なくともいずれかとの位置関係に基づいて、ユーザに対して応答を出力する端末10を決定してもよい。
例えば、出力制御部55は、応答が生成された時点で、最もユーザの近くに所在する端末10から応答が出力されるよう制御してもよい。例えば、出力制御部55は、応答を生成した端末10とユーザの位置が遠く離れており、かつ、ユーザの近くに他の端末10が存在する場合、応答を生成した端末10から応答を取得し、取得した応答をユーザの近くの他の端末10に送信する。そして、出力制御部55は、応答をユーザの近くの他の端末10から出力するよう制御する。これにより、ユーザは、より的確に応答を知覚することができる。
また、出力制御部55は、コンテキストとしてユーザの行動もしくは感情を推定した推定情報が取得されている場合、推定情報に基づいて、ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する端末10を決定してもよい。
例えば、出力制御部55は、ユーザが通常よりも速い発話速度で「今日の天気おしえて」と発話した場合、ユーザが通常よりも「急いでいる」という状況にあることを推定する。この場合、出力制御部55は、例えば複数の端末10から得られた応答のうち、最も短い再生時間でユーザに天気情報を伝えることのできる応答を出力する。あるいは、出力制御部55は、通常よりも速い速度で天気情報を出力するよう、出力の態様を変化させてもよい。
また、出力制御部55は、ユーザがリビングから玄関に移動しながら「今日の天気おしえて」と発話した場合、ユーザが玄関へ移動中であるという行動を推定する。この場合、出力制御部55は、ユーザに知覚されやすいよう、玄関に設置された端末10から天気情報を出力するよう制御してもよい。
ユーザの行動と応答の関係の一例について、図9で示したユーザの行動を例に挙げて説明する。図9の例において、ユーザが寝室にいるとき(図9に示す時刻「6:05」の行動データ)に、「天気情報」を応答処理装置100に尋ねたとする。この場合、出力制御部55は、朝の早い時間に寝室でユーザが天気を質問したというコンテキストに基づいて、服装のアドバイス(「今日は寒くなりそうです」等)が含まれる天気情報をユーザに出力してもよい。
また、図9の例において、ユーザが台所にいるとき(図9に示す時刻「6:15」の行動データ)に、「天気情報」を応答処理装置100に尋ねたとする。この場合、出力制御部55は、ユーザが集中している状態であることから、画面表示を含まず、かつ、音声情報が豊富な応答を選択して出力してもよい。また、図9の例において、ユーザがリビングにいるとき(図9に示す時刻「6:40」の行動データ)に、「天気情報」を応答処理装置100に尋ねたとする。この場合、出力制御部55は、ユーザが集中している状態であることから、情報量が豊富な画面表示を含む応答を選択して出力してもよい。また、図9の例において、ユーザが玄関にいるとき(図9に示す時刻「7:42」の行動データ)に、「天気情報」を応答処理装置100に尋ねたとする。この場合、出力制御部55は、外出前でユーザが急いでいると推定されることから、なるべく短い音声出力を含む応答であって、外出に関係する情報(紫外線情報等)を含む応答を出力してもよい。このように、出力制御部55は、コンテキストに応じて、種々に異なる応答を出力するよう制御することができる。
出力制御部55は、出力制御部55によって生成された応答を出力する場合、例えば各端末10が対応する出力フォーマットに応答を変換し、変換度の情報を端末10に送信する。例えば、出力制御部55は、応答に含まれる文字列からなる応答を、出力先となる端末10に対応する音声データに変換する。あるいは、出力制御部55は、いずれかの端末10によって生成もしくは取得された画像情報を伴う応答を、出力先となる端末10に対応する画像データに変換する。
出力部60は、種々の情報を出力するための機構である。例えば、出力部60は、スピーカーやディスプレイである。例えば、出力部60は、出力制御部55によって応答が出力される場合に、出力先となる端末10の名称等をユーザに対して音声出力する。また、出力部60は、画像データをディスプレイに出力してもよい。また、出力部60は、応答処理装置100が自装置で応答を生成した場合、生成した応答を音声もしくは画像等で出力する。なお、出力部60は、生成された音声データを文字認識してディスプレイに表示する等、種々の態様で応答を出力してもよい。
[1-3.第1の実施形態に係る応答処理の手順]
次に、図12を用いて、第1の実施形態に係る応答処理の手順について説明する。図12は、本開示の第1の実施形態に係る処理の流れを示すフローチャートである。
次に、図12を用いて、第1の実施形態に係る応答処理の手順について説明する。図12は、本開示の第1の実施形態に係る処理の流れを示すフローチャートである。
図12に示すように、応答処理装置100は、入力情報を受け付けたか否かを判定する(ステップS101)。入力情報を受け付けていない場合(ステップS101;No)、応答処理装置100は、入力情報を受け付けるまで待機する。
一方、入力情報を受け付けた場合(ステップS101;Yes)、応答処理装置100は、入力情報を解析する(ステップS102)。具体的には、応答処理装置100は、入力情報を解析し、入力情報に含まれるユーザの意図や、発話の属性等を取得する。
続いて、応答処理装置100は、ユーザの依頼を自装置で実施可能か否かを判定する(ステップS103)。ユーザの依頼を自装置で実施可能である場合(ステップS103;Yes)、応答処理装置100は、さらに、ユーザの依頼が連携する端末10でも実施可能か否かを判定する(ステップS104)。
ユーザの依頼が連携する端末10で実施可能である場合(ステップS104;Yes)、もしくは、ステップS103においてユーザの依頼を自装置で実施可能でない場合(ステップS103;No)、応答処理装置100は、依頼を送信する端末10を選択する(ステップS105)。上述のように、応答処理装置100は、一つの端末10を選択してもよいし、複数の端末10を選択してもよい。
このとき、応答処理装置100は、依頼を伝えるAPIが送信先となる端末10に備わっているか否かを判定する(ステップS106)。APIが端末10に備わっていない場合(ステップS106;No)、応答処理装置100は、端末10に合わせた態様で依頼を送信する(ステップS107)。例えば、応答処理装置100は、依頼を示す文字列をアナログ音声に変換し、変換した音声を端末10に対して出力することで、ユーザの依頼を送信(伝達)する。一方、APIが端末10に備わっている場合(ステップS106;Yes)、応答処理装置100は、APIで依頼の実行を指示する(ステップS108)。
その後、応答処理装置100は、各端末10でユーザの依頼に対する処理が実行された実行結果を取得する(ステップS109)。例えば、応答処理装置100は、ユーザが発話した質問に対応する検索処理等の実行結果を各端末10から取得する。
なお、ステップS104において、ユーザの依頼が連携する端末10で実施可能でない場合(ステップS104;No)、応答処理装置100は、依頼に応答するための処理を自装置で実行する(ステップS110)。
実行結果を取得した応答処理装置100は、ユーザに対する応答の出力態様を決定する(ステップS111)。例えば、応答処理装置100は、ユーザのコンテキスト等に従い、出力する応答を決定したり、応答を出力する出力先となる端末10を決定したりする。
応答処理装置100は、ステップS111において決定した態様で、出力先となる端末10に応答を出力させる(ステップS112)。もしくは、応答処理装置100は、自装置から応答を出力する。
応答をユーザに対して出力した応答処理装置100は、ユーザとの対話処理が終了したか否かを判定する(ステップS113)。具体的には、応答処理装置100は、ユーザとの対話に関する一つのセッションが終了したか否かを判定する。
対話処理が終了していない場合(ステップS113;No)、応答処理装置100は、処理をステップS101に戻し、対話処理を継続する。一方、対話処理が終了したと判定した場合(ステップS113;Yes)、応答処理装置100は、処理を終了する。
[1-4.第1の実施形態に係る変形例]
上記で説明した第1の実施形態に係る応答処理は、様々な変形を伴ってもよい。以下に、第1の実施形態の変形例について説明する。
上記で説明した第1の実施形態に係る応答処理は、様々な変形を伴ってもよい。以下に、第1の実施形態の変形例について説明する。
例えば、応答処理装置100は、端末情報テーブル32や機能テーブル33に格納された情報について、定期的にアップデートを行ってもよい。例えば、端末10は、ネットワークを介して機能が拡張される場合がある。具体的には、「翻訳」機能を有する端末10が、以前は対応できなかった言語に対応する等のアップデートを行う場合がある。
この場合、応答処理装置100は、連携する端末10からアップデートが行われた旨の情報を受信し、受信した情報に基づいて、端末情報テーブル32や機能テーブル33に格納された情報を更新する。これにより、ユーザは、複数の端末10の各々の機能のアップデート等を意識せずとも、最新の機能を享受することができる。
また、応答処理装置100は、定期的に各端末10に対して起動ワードを送信し、各端末10が正常に稼働しているかをチェックしてもよい。
また、応答処理装置100は、連携する端末10の音声返答等を抑止してもよい。例えば、ユーザが応答処理装置100に対して発話した際には、近くに所在する端末10もその発話を検知することになる。この場合、応答処理装置100が応答を生成する前に、端末10から音声返答がなされるおそれがある。このため、応答処理装置100は、自装置よりも先に端末10が返答を行うことのないよう、返答処理を制御してもよい。
また、応答処理装置100は、複数の端末10にユーザの依頼を送信する場合、例えば、利用する音声の帯域を分けること等により、複数の端末10に同時に依頼を送信してもよい。これにより、応答処理装置100は、迅速にユーザの依頼を複数の端末10に伝達することができる。また、応答処理装置100は、依頼を送信する場合、送信先の端末10が処理可能であれば、可聴領域の音声を用いないようにしてもよい。また、応答処理装置100は、周囲の雑音や人の声の周波数を検知し、雑音の周波数とは異なる声音を持つTTSを選択したうえで、音声を出力するようにしてもよい。
また、応答処理装置100は、過去に出力した応答に対する反応をユーザから取得し、ユーザから取得した反応に基づいて、ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する出力先を決定してもよい。すなわち、応答処理装置100は、ユーザの反応に基づいて、学習処理を行ってもよい。
例えば、ある情報を質問したユーザに対して応答を出力した際に、応答処理装置100は、ユーザから「ほかの情報をおしえて」などの反応を受ける可能性がある。この場合、応答処理装置100は、前に出力した情報はユーザが欲していた情報でないと判定する。一方、応答処理装置100は、次に出力した情報がユーザから受け入れられた場合、当該情報がユーザの欲していた情報と判定する。
この場合、応答処理装置100は、次の機会からは、ユーザから同様の質問を受けた場合、ユーザが欲していた応答を生成することのできる端末10を優先的に選択するようにしてもよい。また、応答処理装置100は、例えば、ある端末10から出力されることをユーザが望んでいるような傾向がある場合(ユーザが出力先に特定の端末10を指定することが統計的に多い場合等)、当該端末10から優先的に応答が出力されるように調整を行ってもよい。このように、応答処理装置100は、ユーザの指示や操作履歴に基づいて学習を行うことにより、よりユーザの要望に応えることのできる応答処理を実行することができる。
また、応答処理装置100は、例えば、端末10の起動において、起動ワードではなく、ユーザの生体認証(顔認証や指紋認証等)を要する場合、ユーザにその旨を通知する音声を出力してもよい。また、応答処理装置100は、起動されなかった端末10の位置や情報をユーザに通知し、ユーザに端末10を起動させるよう促すようにしてもよい。
また、応答処理装置100は、出力先として複数の端末10を選択してもよい。この場合、応答処理装置100は、例えば音声は端末10A、画像は端末10Bなど、応答として出力される情報の種別に応じて出力先を変えてもよい。また、応答処理装置100は、比較的大画面で情報を表示できるプロジェクタと、小さく表示できるモニター付きスマートスピーカーの両方で情報を同時に表示するなど、柔軟に出力先を決定してもよい。また、応答処理装置100は、周囲が暗い場合にはプロジェクタを表示させ、周囲が明るい場合にはスマートテレビを表示させる等、周囲のコンテキストに応じた出力処理を行ってもよい。
また、応答処理装置100は、ユーザの依頼を各端末10に送信する際に、ユーザの意図を抽出せずに、ユーザから受け付けた入力情報(音声等)をそのまま送信してもよい。また、この場合、応答処理装置100は、ユーザの音声を文字認識したうえで、依頼を示す文字列を変換してもよい。例えば、ユーザが「来月のこよみ見せておくれ」といった依頼を応答処理装置100に行ったとする。このとき、例えば「こよみ」を各端末10が認識できない可能性があると判定した場合、応答処理装置100は、同義語辞書や類似語辞書を参照し、各端末10が認識可能な態様にユーザの依頼を変換してもよい。例えば、応答処理装置100は、端末10Aに対しては、ユーザの依頼を「来月のカレンダー見せて」に変換したうえで、変換後の情報を送信してもよい。また、応答処理装置100は、端末10Bに対しては、ユーザの依頼を「来月の予定表見せて」に変換したうえで、変換後の情報を送信してもよい。このように、応答処理装置100は、フロントエンド機器として、各端末10への依頼がスムーズに行われるよう、種々の調整処理を行ってもよい。これにより、ユーザは、各端末10が認識可能な言い回し等を意識せずに依頼を行うことができる。
また、応答処理装置100は、ユーザの依頼に応答する端末10について優先度等を設定していてもよい。この場合、応答処理装置100は、優先度の高い端末10を優先して、応答を生成する端末10として選択する。例えば、応答処理装置100は、機能の実行時に利用する外部サービスについて、課金されないサービスを利用する端末10ほど優先度を高く設定してもよい。これにより、応答処理装置100は、サービスの利用等でユーザに不当に課金がされないよう対処することができる。
(2.第2の実施形態)
[2-1.第2の実施形態に係る応答処理の一例]
次に、第2の実施形態について説明する。第2の実施形態では、ユーザの状況に応じて、本開示に係る応答処理装置としてふるまう情報機器が変化する例を示す。なお、第2の実施形態では、区別のため応答処理装置100Aや応答処理装置100B等の参照符号を付与するが、応答処理装置100Aや応答処理装置100Bの機能構成は、第1の実施形態で示した応答処理装置100と同様である。また、以下の説明において、応答処理装置100Aや応答処理装置100B等を区別する必要のない場合、「応答処理装置100」と総称する。
[2-1.第2の実施形態に係る応答処理の一例]
次に、第2の実施形態について説明する。第2の実施形態では、ユーザの状況に応じて、本開示に係る応答処理装置としてふるまう情報機器が変化する例を示す。なお、第2の実施形態では、区別のため応答処理装置100Aや応答処理装置100B等の参照符号を付与するが、応答処理装置100Aや応答処理装置100Bの機能構成は、第1の実施形態で示した応答処理装置100と同様である。また、以下の説明において、応答処理装置100Aや応答処理装置100B等を区別する必要のない場合、「応答処理装置100」と総称する。
図13に、本開示の第2の実施形態に係る情報処理の一例を示す。図13は、本開示の第2の実施形態に係る情報処理の一例を示す図である。図13では、応答処理装置100Aが、ユーザが身に着けるウェアラブルデバイスである例を示す。
図13の例では、ユーザは、外出先から帰宅し、ウェアラブルデバイスである応答処理装置100Aを腕から外す。このとき、応答処理装置100Aは、ユーザが外出先から帰宅し、ウェアラブルデバイスである応答処理装置100Aを腕から外したというコンテキストを取得する(ステップS51)。
このとき、応答処理装置100Aは、本開示に係る応答処理装置としての機能を、自宅内に所在する端末10の一例である応答処理装置100Bに譲渡する。例えば、応答処理装置100Aは、図14に示すデータベースDB11に従い、本開示に係る応答処理装置の機能の譲渡を実行する。
図14は、本開示の第2の実施形態に係るデータベースDB11の一例を示す図である。図14に示すデータベースDB11は、本開示に係る応答処理装置が譲渡される条件を記憶する。例えば、図14の例では、応答処理装置100Aが、譲渡条件「装着解除」もしくは「電源オフ」を満たした場合、「相互通信先」の端末10や、「近くの端末10」に本開示に係る応答処理装置の機能を譲渡することを示している。
図13の例では、応答処理装置100Aは、図14に記憶された情報に従い、本開示に係る応答処理装置としての機能を応答処理装置100Bに譲渡する。この後、応答処理装置100Aは、機能を一時停止してもよいし、端末10の一つとして機能してもよい。
この後、ユーザは、新たに本開示に係る応答処理装置として機能する応答処理装置100Bに対して、「今日の天気おしえて」という内容を含む依頼を入力する。応答処理装置100Bは、「今日の天気おしえて」という内容を含む音声A41を取得する(ステップS52)。応答処理装置100Bは、音声A41に対するASR処理やNLU処理を経て、ユーザの意図が「今日の天気情報の検索」であると判定した場合、各端末10にユーザの意図を送信する。
応答処理装置100Bは、端末10Aに応じた形式の情報を端末10Aに送信する(ステップS53)。また、応答処理装置100は、端末10Cに応じた形式の情報を端末10Cに送信する(ステップS54)。
端末10Aは、応答として、検索した天気情報を応答処理装置100Bに送信する(ステップS55)。同様に、端末10Bは、応答として、検索した天気情報を応答処理装置100Bに送信する(ステップS56)。
こののち、応答処理装置100Bは、自装置に備えられた構成に応じて、ユーザに応答を出力する。例えば、応答処理装置100Bが日本語の音声出力を行わない装置である場合、応答処理装置100Bは、例えば晴れを示す表現(楽しそうな感情表現等)を行うことで、応答を出力する。すなわち、応答処理装置100Bは、自装置に備えられた構成に応じて出力態様を変換し、ユーザに対して出力する。なお、応答処理装置100Bは、第1の実施形態と同様、端末10Aや端末10Cから応答を出力させるよう制御してもよい。
このように、応答処理装置100Aや応答処理装置100Bは、本開示に係る応答処理装置としての機能を端末10等に譲渡してもよい。本開示に係る応答処理装置としての機能が譲渡された端末10は、その後、本開示に係る応答処理装置としてふるまう。これにより、ユーザは、ある応答処理装置を見失ったり、別の場所に置き忘れたりした場合であっても、代わりの端末10を利用して本開示に係る応答処理を実行させることができる。すなわち、本開示に係る応答処理装置とは、いずれかの装置に限定されるものではなく、連携する端末10のいずれかであってもよい。
[2-2.第2の実施形態に係る変形例]
応答処理装置100は、譲渡先となる端末10について、優先度等の情報を設定していてもよい。この場合、応答処理装置100は、優先度の高い端末10に優先して本開示に係る応答処理装置としての機能を譲渡してもよい。例えば、応答処理装置100は、情報処理性能の高い端末10や、機能を多く有する端末10ほど、優先度を高く設定してもよい。
応答処理装置100は、譲渡先となる端末10について、優先度等の情報を設定していてもよい。この場合、応答処理装置100は、優先度の高い端末10に優先して本開示に係る応答処理装置としての機能を譲渡してもよい。例えば、応答処理装置100は、情報処理性能の高い端末10や、機能を多く有する端末10ほど、優先度を高く設定してもよい。
(3.第3の実施形態)
次に、第3の実施形態について説明する。第3の実施形態では、応答処理装置100が、各端末10が有する機能を組み合わせて、ユーザの依頼に応答する例を示す。
次に、第3の実施形態について説明する。第3の実施形態では、応答処理装置100が、各端末10が有する機能を組み合わせて、ユーザの依頼に応答する例を示す。
図15に、本開示の第3の実施形態に係る情報処理の一例を示す。図15は、本開示の第3の実施形態に係る情報処理の一例を示す図である。
図15の例では、応答処理装置100は、ユーザから「日記をつけておいて」という依頼を含む音声A51を受け付ける(ステップS61)。このとき、応答処理装置100は、複数の情報を組み合わせて実行する依頼に関する情報が記憶されたデータベースDB21を参照する。図15に示すように、データベースDB21には、ユーザからの依頼と、依頼を実行するために収集するデータと、データの収集先(リソース)とが対応付けられて記憶される。
応答処理装置100は、データベースDB21を参照し、「日記」という依頼を達成するためには、収集データとして、「写真」や「テキスト」や「動画」を収集することを認識する。また、応答処理装置100は、それぞれのデータを「端末10A」の写真アプリや、「端末10C」が蓄積した会話データや、「端末10B」を介してネットワーク上にアップされた動画データ等から収集することを認識する。
そして、応答処理装置100は、日記をつけるために要する各データの取得要求を各端末10に送信する(ステップS62、ステップS63、ステップS64)。また、応答処理装置100は、各端末10から送信されるデータを取得する(ステップS65、ステップS66、ステップS67)。
そして、応答処理装置100は、取得したデータを組み合わせて、ユーザの依頼に応答する。具体的には、応答処理装置100は、所定時間内(例えば24時間)に撮影された画像や、ユーザの会話や、動画等を組み合わせて、ユーザの当日の日記として記憶する。応答処理装置100は、依頼を完了することができた場合、「かしこまりました。」といった内容を含む音声A52を出力する。
このように、応答処理装置100は、各端末10が収集可能なデータを組み合わせて、ユーザの依頼に応答してもよい。これにより、応答処理装置100は、単独の機器では実行が難しい、ユーザの複雑な依頼にも応答することができる。例えば、応答処理装置100は、ユーザから「旅行計画を立てて」といった依頼を受けたとする。この場合、応答処理装置100は、「観光地情報を検索する」処理や、「交通機関を予約する」処理や、「宿泊施設を予約する」処理等を、各端末10に実行させる。そして、応答処理装置100は、それらを組み合わせてユーザの依頼に応答する。このように、応答処理装置100は、各々の端末10の得意とする処理や、実行可能な機能を組み合わせることで、ユーザの依頼に的確に応答することができる。なお、応答処理装置100は、データベースDB21のような情報を自装置で保持してもよいし、ユーザの依頼を受けるたびに、当該依頼を実現するための情報を保持する外部サーバ等にアクセスし、情報を取得してもよい。
(4.第4の実施形態)
次に、第4の実施形態について説明する。第4の実施形態では、応答処理装置100が、各端末10が応答できない依頼について、他のユーザに対して依頼内容を出力する例を示す。
次に、第4の実施形態について説明する。第4の実施形態では、応答処理装置100が、各端末10が応答できない依頼について、他のユーザに対して依頼内容を出力する例を示す。
図16に、本開示の第4の実施形態に係る情報処理の一例を示す。図16は、本開示の第4の実施形態に係る情報処理の一例を示す図である。
図16の例では、応答処理装置100は、ユーザから「料理YYYのレシピおしえて」という依頼を含む音声A61を受け付ける(ステップS71)。応答処理装置100は、連携する端末10Aや端末10Bに対して、音声A61に対応する依頼を送信する(ステップS72、ステップS73)。
送信された依頼に対して、端末10Aは、「料理YYYのレシピ」が検索できなかった旨を返信する(ステップS74)。同様に、端末10Bも、「料理YYYのレシピ」が検索できなかった旨を返信する(ステップS75)。
この場合、応答処理装置100は、自装置や端末10Aや端末10Bが備えるカメラ等を制御し、近くに所在する他のユーザのコンテキストの検知を試みる。図16の例では、応答処理装置100は、端末10Bの近くに所在する「ZZZ」という名称の第2のユーザを検知したものとする。なお、第2のユーザに関する情報は、予めユーザ情報テーブル31等に保持されているものとする。
応答処理装置100は、第2のユーザを検知した場合、「ZZZさんが近くにいます。ZZZさんに聞いてみます。」といった内容を含む音声A62をユーザに対して出力する。なお、ユーザは、第2のユーザに依頼が聞かれたくない場合、応答処理装置100にその旨を入力してもよい。
応答処理装置100は、音声A62を出力したのち、「ZZZさん、料理YYYのレシピをご存じでしたら、音声を入力してください。」といった内容を含む音声A63を、近くの端末10Bから出力させる(ステップS76)。第2のユーザは、「料理YYYのレシピ」を知っている場合、例えば、端末10Bに音声を入力する(ステップS77)。あるいは、第2のユーザは、「料理YYYのレシピ」を知らない旨を端末10Bに入力する。
応答処理装置100は、第2のユーザから返答された内容をユーザに対して出力する。すなわち、応答処理装置100は、各端末10によって応答が生成されない場合には、第2のユーザ等に質問を出力することで、依頼に対する応答を取得する。
このように、応答処理装置100は、入力情報に対する応答を応答処理装置100、及び、複数の端末10のいずれもが生成できないと判定した場合、ユーザ以外の他のユーザのコンテキストを取得する。そして、応答処理装置100は、他のユーザのコンテキストに基づいて、入力情報に関する出力の出力先を決定する。入力情報に関する出力とは、例えば、エージェント機器が入力情報に対する応答を生成できない旨を示す音声や、入力情報に対する回答を他のユーザに求める旨を示す音声等である。具体的には、応答処理装置100は、図16に示す音声A63の出力先として端末10Bを決定し、音声A63を出力する。この後、応答処理装置100は、他のユーザから回答が得られた場合、その音声を応答処理装置100等から出力することで、ユーザの依頼に応答することができる。
上記のように、応答処理装置100は、対話システム上で解決できない依頼がなされた場合も、複数の端末10を制御して他のユーザのコンテキストを取得することで、依頼を解決できそうな他のユーザを検知することができる。これにより、応答処理装置100は、対話システムのみでは解決できない珍しい質問や、エージェント機器が認識しにくい質問に対しても、何らかの応答をユーザに出力することのできる可能性を高めることができる。なお、応答処理装置100は、他のユーザに限らず、応答処理装置100と連携していないものの、依頼の回答になりうると想定されるもの(例えば、特定の道具や本)を検知してもよい。この場合、応答処理装置100は、特定の道具や本に記載された内容をユーザに伝達したり、特定の道具や本の所在場所をユーザに提示したりしてもよい。
(5.その他の実施形態)
上述した各実施形態に係る処理は、上記各実施形態以外にも種々の異なる形態にて実施されてよい。
上述した各実施形態に係る処理は、上記各実施形態以外にも種々の異なる形態にて実施されてよい。
上記各実施形態では、応答処理装置100がいわゆるスマートスピーカーであり、スタンドアロンで処理を行う例を示した。しかし、応答処理装置100は、ネットワークによって接続されたサーバ装置(いわゆるクラウドサーバ(Cloud Server)等)と連携して本開示に係る応答処理を行ってもよい。
この場合、応答処理装置100は、スマートスピーカー等の端末に入力された音声やコンテキストを取得し、取得した情報に基づいて応答を生成し、生成した応答を端末に送信する。この場合には、スマートスピーカー等の端末は、ユーザの発話を集音する処理や、集音した発話をサーバ装置に送信する処理や、サーバ装置から送信された回答を出力する処理といった、ユーザとの対話処理を主に実行するインターフェイスとして機能する。
また、本開示に係る応答処理装置とは、応答処理装置100内に搭載されるICチップ等の態様で実現されてもよい。
また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、依頼分析部51と状態推定部52は統合されてもよい。
また、上述してきた各実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、他の効果があってもよい。
(6.本開示に係る応答処理装置の効果)
上述のように、本開示に係る応答処理装置(実施形態では応答処理装置100)は、取得部(実施形態では取得部40)と、選択部(実施形態では選択部50)と、出力制御部(実施形態では出力制御部55)を備える。取得部は、情報機器(実施形態では端末10)が応答を生成する契機となる情報である入力情報をユーザから取得する。選択部は、複数の情報機器のうち、入力情報に対応した応答を生成する情報機器を選択する。出力制御部は、入力情報に対応する応答であって、選択された情報機器によって生成された応答の出力を制御する。
上述のように、本開示に係る応答処理装置(実施形態では応答処理装置100)は、取得部(実施形態では取得部40)と、選択部(実施形態では選択部50)と、出力制御部(実施形態では出力制御部55)を備える。取得部は、情報機器(実施形態では端末10)が応答を生成する契機となる情報である入力情報をユーザから取得する。選択部は、複数の情報機器のうち、入力情報に対応した応答を生成する情報機器を選択する。出力制御部は、入力情報に対応する応答であって、選択された情報機器によって生成された応答の出力を制御する。
このように、本開示に係る応答処理装置は、複数の情報機器のフロントエンド機器としてふるまい、応答を生成する情報機器を選択したり、出力を制御したりする。これにより、応答処理装置は、複数の情報機器をユーザが利用する際に、個々の情報機器に対して対話を行うような手間を省かせることができるので、ユーザの利便性を向上させることができる。
また、取得部は、入力情報として、ユーザが発した音声情報を取得する。これにより、応答処理装置は、音声を介したユーザとのコミュニケーションにおいて、ユーザの状況に合わせた適切な対話を行うことができる。
また、取得部は、入力情報として、ユーザの行動を検知した検知情報を取得する。これにより、応答処理装置は、ユーザが発話をせずとも、ユーザの行動に合わせた適切な応答を生成することができる。
また、選択部は、入力情報に対する応答を応答処理装置が生成することができないと判定した場合に、複数の情報機器のうち、入力情報に対応した応答を生成する情報機器を選択する。これにより、応答処理装置は、自装置で応答が不可能な依頼のみを情報機器に送るので、無駄な通信を発生させず、通信量や通信負荷を抑制することができる。
また、選択部は、複数の情報機器の各々が入力情報に対する応答を生成することができるか否かを判定し、入力情報に対する応答を生成することができないと判定された情報機器以外の情報機器を、入力情報に対応した応答を生成する情報機器として選択する。これにより、応答処理装置は、依頼に対して対応が可能な情報機器のみに選択的に依頼を送信することができるので、通信量や通信負荷を抑制することができる。
また、選択部は、入力情報に対応した応答を生成する情報機器として複数の情報機器を選択する。出力制御部は、複数の情報機器によって生成された応答を比較した情報に基づいて、ユーザに対して出力する応答を決定する。これにより、応答処理装置は、ユーザの依頼に対して、複数の応答を用意することができるため、よりユーザの要望に沿った応答を出力しやすくなる。
また、出力制御部は、複数の情報機器によって生成された各々の応答の情報量もしくは種別に基づいて、ユーザに対して出力する応答を決定する。これにより、応答処理装置は、複数の応答のうち、情報量が多い応答等を選択して出力できるので、よりユーザの要望に沿った応答を出力しやすくなる。
また、選択部は、入力情報に対応した応答を生成する情報機器として複数の情報機器を選択する。出力制御部は、複数の情報機器によって生成された複数の応答を合成し、ユーザに対して出力する応答を生成する。これにより、応答処理装置は、複数の機器が取得した情報を取捨選択して応答を生成することができるので、ユーザが要望するような的確な応答を行うことができる。
また、選択部は、選択した複数の情報機器の各々が認識可能な態様に入力情報を変換し、変換後の入力情報を複数の情報機器に送信する。これにより、応答処理装置は、様々なAPIや入力方式を有する複数の情報機器に対しても、迅速にユーザの依頼を送信することができる。
また、取得部は、ユーザのコンテキストを取得する。出力制御部は、コンテキストに基づいて、選択された情報機器によって生成された応答を出力する態様を決定する。これにより、応答処理装置は、ユーザのコンテキストに合わせた柔軟な応答を出力することができるため、対話等のエージェント機能をより効果的にユーザに提供することができる。
また、取得部は、コンテキストとして、ユーザによって予め登録されたユーザの属性情報を取得する。これにより、応答処理装置は、老齢や子ども、視覚障碍を有するユーザ等、各々のユーザの特性に合わせた応答を生成することができる。
また、出力制御部は、ユーザの属性情報に応じて、ユーザに対して出力する応答の種別、もしくは、応答を出力する出力先を決定する。これにより、応答処理装置は、音声や画像等、ユーザの属性に合わせた適切な出力を選択することができる。
また、取得部は、コンテキストとして、ユーザの位置を示す位置情報を取得する。これにより、応答処理装置は、ユーザが所在する位置に対して応答を出力する等、ユーザビリティの高い応答処理を行うことができる。
また、出力制御部は、ユーザと複数の情報機器の少なくともいずれかとの位置関係に基づいて、ユーザに対して応答を出力する情報機器を決定する。これにより、応答処理装置は、ユーザから近い位置に所在する情報機器に応答を出力させる等、ユーザの位置に合わせた柔軟な出力を行うことができる。
また、取得部は、コンテキストとして、ユーザの行動もしくは感情を推定した推定情報を取得する。これにより、応答処理装置は、ユーザがこれから実行しようとする行動に即した応答を出力することができる。
また、出力制御部は、推定情報に基づいて、ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する情報機器を決定する。これにより、応答処理装置は、例えば、ユーザが通常よりも急いでいるという状況にあると推定される場合には、より短い再生時間の応答を出力する等、柔軟な対応を行うことができる。
また、取得部は、入力情報に対する応答を応答処理装置、及び、複数の情報機器のいずれもが生成できないと判定した場合、ユーザ以外の他のユーザのコンテキストを取得する。出力制御部は、他のユーザのコンテキストに基づいて、入力情報に関する出力の出力先を決定する。これにより、応答処理装置は、エージェント機器では対応の難しいような依頼については、その依頼を他のユーザに質問すること等ができるので、ユーザの要望に応えることのできる可能性を高めることができる。
また、取得部は、過去に出力した応答に対する反応をユーザから取得する。出力制御部は、ユーザから取得した反応に基づいて、ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する出力先を決定する。これにより、応答処理装置は、過去のユーザの反応を学習した結果を出力に反映できるので、より的確にユーザの要望に応えることができる。
(7.ハードウェア構成)
上述してきた各実施形態に係る応答処理装置100や端末10、外部サーバ200等の情報機器は、例えば図17に示すような構成のコンピュータ1000によって実現される。以下、第1の実施形態に係る応答処理装置100を例に挙げて説明する。図17は、応答処理装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
上述してきた各実施形態に係る応答処理装置100や端末10、外部サーバ200等の情報機器は、例えば図17に示すような構成のコンピュータ1000によって実現される。以下、第1の実施形態に係る応答処理装置100を例に挙げて説明する。図17は、応答処理装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係る応答処理プログラムを記録する記録媒体である。
通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が第1の実施形態に係る応答処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされた応答処理プログラムを実行することにより、取得部40等の機能を実現する。また、HDD1400には、本開示に係る応答処理プログラムや、記憶部30内のデータが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
なお、本技術は以下のような構成も取ることができる。
(1)
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部と、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する選択部と、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する出力制御部と
を備える応答処理装置。
(2)
前記取得部は、
前記入力情報として、前記ユーザが発した音声情報を取得する
前記(1)に記載の応答処理装置。
(3)
前記取得部は、
前記入力情報として、前記ユーザの行動を検知した検知情報を取得する
前記(1)又は(2)に記載の応答処理装置。
(4)
前記選択部は、
前記入力情報に対する応答を前記応答処理装置が生成することができないと判定した場合に、前記複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する
前記(1)~(3)のいずれかに記載の応答処理装置。
(5)
前記選択部は、
前記複数の情報機器の各々が前記入力情報に対する応答を生成することができるか否かを判定し、当該入力情報に対する応答を生成することができないと判定された情報機器以外の情報機器を、当該入力情報に対応した応答を生成する情報機器として選択する
前記(4)に記載の応答処理装置。
(6)
前記選択部は、
前記入力情報に対応した応答を生成する情報機器として複数の情報機器を選択し、
前記出力制御部は、
前記複数の情報機器によって生成された応答を比較した情報に基づいて、前記ユーザに対して出力する応答を決定する
前記(4)又は(5)に記載の応答処理装置。
(7)
前記出力制御部は、
前記複数の情報機器によって生成された各々の応答の情報量もしくは種別に基づいて、前記ユーザに対して出力する応答を決定する
前記(6)に記載の応答処理装置。
(8)
前記選択部は、
前記入力情報に対応した応答を生成する情報機器として複数の情報機器を選択し、
前記出力制御部は、
前記複数の情報機器によって生成された複数の応答を合成し、前記ユーザに対して出力する応答を生成する
前記(4)~(7)のいずれかに記載の応答処理装置。
(9)
前記選択部は、
前記選択した複数の情報機器の各々が認識可能な態様に前記入力情報を変換し、変換後の入力情報を当該複数の情報機器に送信する
前記(1)~(8)のいずれかに記載の応答処理装置。
(10)
前記取得部は、
前記ユーザのコンテキストを取得し、
前記出力制御部は、
前記コンテキストに基づいて、前記選択された情報機器によって生成された応答を出力する態様を決定する
前記(1)~(9)のいずれかに記載の応答処理装置。
(11)
前記取得部は、
前記コンテキストとして、前記ユーザによって予め登録された当該ユーザの属性情報を取得する
前記(10)に記載の応答処理装置。
(12)
前記出力制御部は、
前記ユーザの属性情報に応じて、当該ユーザに対して出力する応答の種別、もしくは、応答を出力する出力先を決定する
前記(11)に記載の応答処理装置。
(13)
前記取得部は、
前記コンテキストとして、前記ユーザの位置を示す位置情報を取得する
前記(10)~(12)のいずれかに記載の応答処理装置。
(14)
前記出力制御部は、
前記ユーザと前記複数の情報機器の少なくともいずれかとの位置関係に基づいて、当該ユーザに対して応答を出力する情報機器を決定する
前記(13)に記載の応答処理装置。
(15)
前記取得部は、
前記コンテキストとして、前記ユーザの行動もしくは感情を推定した推定情報を取得する
前記(10)~(14)のいずれかに記載の応答処理装置。
(16)
前記出力制御部は、
前記推定情報に基づいて、前記ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する情報機器を決定する
前記(15)に記載の応答処理装置。
(17)
前記取得部は、
前記入力情報に対する応答を前記応答処理装置、及び、前記複数の情報機器のいずれもが生成できないと判定した場合、前記ユーザ以外の他のユーザのコンテキストを取得し、
前記出力制御部は、
前記他のユーザのコンテキストに基づいて、前記入力情報に関する出力の出力先を決定する
前記(10)~(16)のいずれかに記載の応答処理装置。
(18)
前記取得部は、
過去に出力した応答に対する反応を前記ユーザから取得し、
前記出力制御部は、
前記ユーザから取得した反応に基づいて、前記ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する出力先を決定する
前記(1)~(17)のいずれかに記載の応答処理装置。
(19)
コンピュータが、
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得し、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択し、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する
応答処理方法。
(20)
コンピュータを、
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部と、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する選択部と、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する出力制御部と、
として機能させるための応答処理プログラム。
(1)
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部と、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する選択部と、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する出力制御部と
を備える応答処理装置。
(2)
前記取得部は、
前記入力情報として、前記ユーザが発した音声情報を取得する
前記(1)に記載の応答処理装置。
(3)
前記取得部は、
前記入力情報として、前記ユーザの行動を検知した検知情報を取得する
前記(1)又は(2)に記載の応答処理装置。
(4)
前記選択部は、
前記入力情報に対する応答を前記応答処理装置が生成することができないと判定した場合に、前記複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する
前記(1)~(3)のいずれかに記載の応答処理装置。
(5)
前記選択部は、
前記複数の情報機器の各々が前記入力情報に対する応答を生成することができるか否かを判定し、当該入力情報に対する応答を生成することができないと判定された情報機器以外の情報機器を、当該入力情報に対応した応答を生成する情報機器として選択する
前記(4)に記載の応答処理装置。
(6)
前記選択部は、
前記入力情報に対応した応答を生成する情報機器として複数の情報機器を選択し、
前記出力制御部は、
前記複数の情報機器によって生成された応答を比較した情報に基づいて、前記ユーザに対して出力する応答を決定する
前記(4)又は(5)に記載の応答処理装置。
(7)
前記出力制御部は、
前記複数の情報機器によって生成された各々の応答の情報量もしくは種別に基づいて、前記ユーザに対して出力する応答を決定する
前記(6)に記載の応答処理装置。
(8)
前記選択部は、
前記入力情報に対応した応答を生成する情報機器として複数の情報機器を選択し、
前記出力制御部は、
前記複数の情報機器によって生成された複数の応答を合成し、前記ユーザに対して出力する応答を生成する
前記(4)~(7)のいずれかに記載の応答処理装置。
(9)
前記選択部は、
前記選択した複数の情報機器の各々が認識可能な態様に前記入力情報を変換し、変換後の入力情報を当該複数の情報機器に送信する
前記(1)~(8)のいずれかに記載の応答処理装置。
(10)
前記取得部は、
前記ユーザのコンテキストを取得し、
前記出力制御部は、
前記コンテキストに基づいて、前記選択された情報機器によって生成された応答を出力する態様を決定する
前記(1)~(9)のいずれかに記載の応答処理装置。
(11)
前記取得部は、
前記コンテキストとして、前記ユーザによって予め登録された当該ユーザの属性情報を取得する
前記(10)に記載の応答処理装置。
(12)
前記出力制御部は、
前記ユーザの属性情報に応じて、当該ユーザに対して出力する応答の種別、もしくは、応答を出力する出力先を決定する
前記(11)に記載の応答処理装置。
(13)
前記取得部は、
前記コンテキストとして、前記ユーザの位置を示す位置情報を取得する
前記(10)~(12)のいずれかに記載の応答処理装置。
(14)
前記出力制御部は、
前記ユーザと前記複数の情報機器の少なくともいずれかとの位置関係に基づいて、当該ユーザに対して応答を出力する情報機器を決定する
前記(13)に記載の応答処理装置。
(15)
前記取得部は、
前記コンテキストとして、前記ユーザの行動もしくは感情を推定した推定情報を取得する
前記(10)~(14)のいずれかに記載の応答処理装置。
(16)
前記出力制御部は、
前記推定情報に基づいて、前記ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する情報機器を決定する
前記(15)に記載の応答処理装置。
(17)
前記取得部は、
前記入力情報に対する応答を前記応答処理装置、及び、前記複数の情報機器のいずれもが生成できないと判定した場合、前記ユーザ以外の他のユーザのコンテキストを取得し、
前記出力制御部は、
前記他のユーザのコンテキストに基づいて、前記入力情報に関する出力の出力先を決定する
前記(10)~(16)のいずれかに記載の応答処理装置。
(18)
前記取得部は、
過去に出力した応答に対する反応を前記ユーザから取得し、
前記出力制御部は、
前記ユーザから取得した反応に基づいて、前記ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する出力先を決定する
前記(1)~(17)のいずれかに記載の応答処理装置。
(19)
コンピュータが、
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得し、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択し、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する
応答処理方法。
(20)
コンピュータを、
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部と、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する選択部と、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する出力制御部と、
として機能させるための応答処理プログラム。
1 応答処理システム
10 端末
100 応答処理装置
20 センサ
20A 音声入力センサ
20B 画像入力センサ
21 入力部
22 通信部
30 記憶部
31 ユーザ情報テーブル
32 端末情報テーブル
33 機能テーブル
40 取得部
41 検知部
42 登録部
43 受信部
50 選択部
51 依頼分析部
52 状態推定部
55 出力制御部
60 出力部
200 外部サーバ
10 端末
100 応答処理装置
20 センサ
20A 音声入力センサ
20B 画像入力センサ
21 入力部
22 通信部
30 記憶部
31 ユーザ情報テーブル
32 端末情報テーブル
33 機能テーブル
40 取得部
41 検知部
42 登録部
43 受信部
50 選択部
51 依頼分析部
52 状態推定部
55 出力制御部
60 出力部
200 外部サーバ
Claims (20)
- 情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部と、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する選択部と、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する出力制御部と
を備える応答処理装置。 - 前記取得部は、
前記入力情報として、前記ユーザが発した音声情報を取得する
請求項1に記載の応答処理装置。 - 前記取得部は、
前記入力情報として、前記ユーザの行動を検知した検知情報を取得する
請求項1に記載の応答処理装置。 - 前記選択部は、
前記入力情報に対する応答を前記応答処理装置が生成することができないと判定した場合に、前記複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する
請求項1に記載の応答処理装置。 - 前記選択部は、
前記複数の情報機器の各々が前記入力情報に対する応答を生成することができるか否かを判定し、当該入力情報に対する応答を生成することができないと判定された情報機器以外の情報機器を、当該入力情報に対応した応答を生成する情報機器として選択する
請求項4に記載の応答処理装置。 - 前記選択部は、
前記入力情報に対応した応答を生成する情報機器として複数の情報機器を選択し、
前記出力制御部は、
前記複数の情報機器によって生成された応答を比較した情報に基づいて、前記ユーザに対して出力する応答を決定する
請求項4に記載の応答処理装置。 - 前記出力制御部は、
前記複数の情報機器によって生成された各々の応答の情報量もしくは種別に基づいて、前記ユーザに対して出力する応答を決定する
請求項6に記載の応答処理装置。 - 前記選択部は、
前記入力情報に対応した応答を生成する情報機器として複数の情報機器を選択し、
前記出力制御部は、
前記複数の情報機器によって生成された複数の応答を合成し、前記ユーザに対して出力する応答を生成する
請求項4に記載の応答処理装置。 - 前記選択部は、
前記選択した複数の情報機器の各々が認識可能な態様に前記入力情報を変換し、変換後の入力情報を当該複数の情報機器に送信する
請求項4に記載の応答処理装置。 - 前記取得部は、
前記ユーザのコンテキストを取得し、
前記出力制御部は、
前記コンテキストに基づいて、前記選択された情報機器によって生成された応答を出力する態様を決定する
請求項1に記載の応答処理装置。 - 前記取得部は、
前記コンテキストとして、前記ユーザによって予め登録された当該ユーザの属性情報を取得する
請求項10に記載の応答処理装置。 - 前記出力制御部は、
前記ユーザの属性情報に応じて、当該ユーザに対して出力する応答の種別、もしくは、応答を出力する出力先を決定する
請求項11に記載の応答処理装置。 - 前記取得部は、
前記コンテキストとして、前記ユーザの位置を示す位置情報を取得する
請求項10に記載の応答処理装置。 - 前記出力制御部は、
前記ユーザと前記複数の情報機器の少なくともいずれかとの位置関係に基づいて、当該ユーザに対して応答を出力する情報機器を決定する
請求項13に記載の応答処理装置。 - 前記取得部は、
前記コンテキストとして、前記ユーザの行動もしくは感情を推定した推定情報を取得する
請求項10に記載の応答処理装置。 - 前記出力制御部は、
前記推定情報に基づいて、前記ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する情報機器を決定する
請求項15に記載の応答処理装置。 - 前記取得部は、
前記入力情報に対する応答を前記応答処理装置、及び、前記複数の情報機器のいずれもが生成できないと判定した場合、前記ユーザ以外の他のユーザのコンテキストを取得し、
前記出力制御部は、
前記他のユーザのコンテキストに基づいて、前記入力情報に関する出力の出力先を決定する
請求項10に記載の応答処理装置。 - 前記取得部は、
過去に出力した応答に対する反応を前記ユーザから取得し、
前記出力制御部は、
前記ユーザから取得した反応に基づいて、前記ユーザに対して出力する応答の種別、応答の態様、もしくは、応答を出力する出力先を決定する
請求項1に記載の応答処理装置。 - コンピュータが、
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得し、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択し、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する
応答処理方法。 - コンピュータを、
情報機器が応答を生成する契機となる情報である入力情報をユーザから取得する取得部と、
複数の情報機器のうち、前記入力情報に対応した応答を生成する情報機器を選択する選択部と、
前記入力情報に対応する応答であって、前記選択された情報機器によって生成された応答の出力を制御する出力制御部と、
として機能させるための応答処理プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/309,423 US20220036897A1 (en) | 2018-12-07 | 2019-10-11 | Response processing apparatus, response processing method, and response processing program |
EP19891969.8A EP3893087A4 (en) | 2018-12-07 | 2019-10-11 | RESPONSE PROCESSING DEVICE, RESPONSE PROCESSING METHOD AND RESPONSE PROCESSING PROGRAM |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018-230404 | 2018-12-07 | ||
JP2018230404 | 2018-12-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020116026A1 true WO2020116026A1 (ja) | 2020-06-11 |
Family
ID=70974614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/040156 WO2020116026A1 (ja) | 2018-12-07 | 2019-10-11 | 応答処理装置、応答処理方法及び応答処理プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220036897A1 (ja) |
EP (1) | EP3893087A4 (ja) |
WO (1) | WO2020116026A1 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022117472A (ja) * | 2021-01-29 | 2022-08-10 | ネイバー コーポレーション | アシスタントサービス提供方法及びシステム |
JP2022149730A (ja) * | 2021-03-25 | 2022-10-07 | 本田技研工業株式会社 | 宅配装置 |
EP4338039A4 (en) * | 2021-09-21 | 2024-08-21 | Samsung Electronics Co Ltd | METHOD OF PROVIDING A PERSONALIZED RESPONSE FOR AN ELECTRONIC DEVICE |
JP7541120B2 (ja) | 2020-10-16 | 2024-08-27 | グーグル エルエルシー | 自動化された音声アシスタントにおける失敗の検出および処理 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210375267A1 (en) * | 2020-05-30 | 2021-12-02 | Jio Platforms Limited | Method and system for smart interaction in a multi voice capable device environment |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH074882A (ja) | 1993-06-11 | 1995-01-10 | Hitachi Ltd | 熱交換器 |
JP2002132804A (ja) * | 2000-10-24 | 2002-05-10 | Sanyo Electric Co Ltd | ユーザ支援システム |
JP2015011621A (ja) * | 2013-07-01 | 2015-01-19 | シャープ株式会社 | 会話処理装置、制御方法、制御プログラム、および記録媒体 |
JP2016502192A (ja) * | 2012-12-14 | 2016-01-21 | ロウルズ リミテッド ライアビリティ カンパニー | 応答エンドポイント選択 |
WO2017184587A1 (en) * | 2016-04-18 | 2017-10-26 | Google Inc. | Automated assistant invocation of appropriate agent |
JP2018013894A (ja) * | 2016-07-19 | 2018-01-25 | Gatebox株式会社 | 画像表示装置、話題選択方法、話題選択プログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9858927B2 (en) * | 2016-02-12 | 2018-01-02 | Amazon Technologies, Inc | Processing spoken commands to control distributed audio outputs |
US10311856B2 (en) * | 2016-10-03 | 2019-06-04 | Google Llc | Synthesized voice selection for computational agents |
US20180121432A1 (en) * | 2016-11-02 | 2018-05-03 | Microsoft Technology Licensing, Llc | Digital assistant integration with music services |
CN107122179A (zh) * | 2017-03-31 | 2017-09-01 | 阿里巴巴集团控股有限公司 | 语音的功能控制方法和装置 |
US10425780B1 (en) * | 2018-02-22 | 2019-09-24 | Amazon Technologies, Inc. | Outputting notifications using device groups |
-
2019
- 2019-10-11 WO PCT/JP2019/040156 patent/WO2020116026A1/ja unknown
- 2019-10-11 EP EP19891969.8A patent/EP3893087A4/en not_active Withdrawn
- 2019-10-11 US US17/309,423 patent/US20220036897A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH074882A (ja) | 1993-06-11 | 1995-01-10 | Hitachi Ltd | 熱交換器 |
JP2002132804A (ja) * | 2000-10-24 | 2002-05-10 | Sanyo Electric Co Ltd | ユーザ支援システム |
JP2016502192A (ja) * | 2012-12-14 | 2016-01-21 | ロウルズ リミテッド ライアビリティ カンパニー | 応答エンドポイント選択 |
JP2015011621A (ja) * | 2013-07-01 | 2015-01-19 | シャープ株式会社 | 会話処理装置、制御方法、制御プログラム、および記録媒体 |
WO2017184587A1 (en) * | 2016-04-18 | 2017-10-26 | Google Inc. | Automated assistant invocation of appropriate agent |
JP2018013894A (ja) * | 2016-07-19 | 2018-01-25 | Gatebox株式会社 | 画像表示装置、話題選択方法、話題選択プログラム |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7541120B2 (ja) | 2020-10-16 | 2024-08-27 | グーグル エルエルシー | 自動化された音声アシスタントにおける失敗の検出および処理 |
JP2022117472A (ja) * | 2021-01-29 | 2022-08-10 | ネイバー コーポレーション | アシスタントサービス提供方法及びシステム |
JP7379550B2 (ja) | 2021-01-29 | 2023-11-14 | ネイバー コーポレーション | アシスタントサービス提供方法及びシステム |
TWI843984B (zh) * | 2021-01-29 | 2024-06-01 | 南韓商納寶股份有限公司 | 助手服務提供方法及系統 |
JP2022149730A (ja) * | 2021-03-25 | 2022-10-07 | 本田技研工業株式会社 | 宅配装置 |
JP7246424B2 (ja) | 2021-03-25 | 2023-03-27 | 本田技研工業株式会社 | 宅配装置 |
EP4338039A4 (en) * | 2021-09-21 | 2024-08-21 | Samsung Electronics Co Ltd | METHOD OF PROVIDING A PERSONALIZED RESPONSE FOR AN ELECTRONIC DEVICE |
Also Published As
Publication number | Publication date |
---|---|
EP3893087A4 (en) | 2022-01-26 |
EP3893087A1 (en) | 2021-10-13 |
US20220036897A1 (en) | 2022-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020116026A1 (ja) | 応答処理装置、応答処理方法及び応答処理プログラム | |
US10853650B2 (en) | Information processing apparatus, information processing method, and program | |
JP7491221B2 (ja) | 応答生成装置、応答生成方法及び応答生成プログラム | |
CN110996796B (zh) | 信息处理设备、方法和程序 | |
JP7276129B2 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
WO2016181670A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
WO2020195821A1 (ja) | 情報処理装置、情報処理方法、情報処理プログラム | |
JPWO2019026617A1 (ja) | 情報処理装置、及び情報処理方法 | |
WO2020202862A1 (ja) | 応答生成装置及び応答生成方法 | |
JP6973380B2 (ja) | 情報処理装置、および情報処理方法 | |
JP2019036201A (ja) | 出力制御装置、出力制御方法及び出力制御プログラム | |
WO2016052520A1 (ja) | 対話装置 | |
WO2016052501A1 (ja) | ユーザインタフェース装置、プログラム及びコンテンツの通知方法 | |
JP6250852B1 (ja) | 判定プログラム、判定装置及び判定方法 | |
US20210004747A1 (en) | Information processing device, information processing method, and program | |
JP7415952B2 (ja) | 応答処理装置及び応答処理方法 | |
JPWO2019207918A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2017059040A (ja) | 認知機能支援システム及びそのプログラム | |
WO2019073668A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
US11936718B2 (en) | Information processing device and information processing method | |
WO2019146199A1 (ja) | 情報処理装置、及び情報処理方法 | |
US11270682B2 (en) | Information processing device and information processing method for presentation of word-of-mouth information | |
JPWO2018051596A1 (ja) | 情報処理装置 | |
JP2017068592A (ja) | ロボット、ロボット制御装置、ロボット制御方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19891969 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2019891969 Country of ref document: EP Effective date: 20210707 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |