Information processing device, information processing method, and information processing program
The information processing device simplifies voice interactions by detecting a first designation and dynamically switching to another agent function unit if needed, reducing complexity and improving user experience.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- PIONEER IP
- Filing Date
- 2026-01-08
- Publication Date
- 2026-05-11
AI Technical Summary
Conventional technologies require users to make repeated voice requests to multiple agent function units when one unit cannot respond, leading to complexity in interactions.
An information processing device that detects a first designation information specifying an agent function unit and presents a response from that unit, with the ability to dynamically switch to another unit if a predetermined voice command is detected, eliminating the need for re-entering the request.
Simplifies voice request interactions by allowing seamless switching between agent function units without requiring users to repeat their requests, enhancing user experience and efficiency.
Smart Images

Figure 2026076194000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing apparatus, an information processing method, and an information processing program.
Background Art
[0002] Conventionally, technologies related to an agent function that provides information suitable for a user by interacting with the user have been proposed.
[0003] For example, when one agent function unit among a plurality of agent function units cannot respond to a passenger's request and the other agent can respond to this request, a technology for recommending the other agent function unit to the passenger has been proposed.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] By the way, in the above conventional technology, since the user needs to make voice requests to each of the plurality of agent function units, there are cases where the same request has to be spoken many times. For this reason, there is room for improvement in the conventional technology in terms of the complexity when making voice requests.
[0006] The present invention has been made in view of the above, and an object thereof is to provide an information processing apparatus, an information processing method, and an information processing program that can eliminate the complexity of voice requests when there are a plurality of agent function units, for example.
Means for Solving the Problems
[0007] The information processing device according to claim 1 is an information processing device that presents information in response to a voice request from a user, comprising: a request destination detection unit that detects from the voice a first designation information which specifies which agent function unit the user will use as the recipient of the first request from among a plurality of agent function units; and a presentation control unit that causes the user to present a first response obtained from the first agent function unit corresponding to the first designation information among the plurality of agent function units as a response to the first request, wherein the request destination detection unit detects whether the user has uttered a predetermined voice command which includes a second designation information which designates any of the agent function units other than the first agent function unit as the new recipient of the request after the first response has been presented to the user, and the presentation control unit, if the predetermined voice command is detected, causes the user to present a second response obtained from the second agent function unit corresponding to the second designation information as a response to the first request.
[0008] The information processing method described in claim 11 is an information processing method performed by an information processing device that presents information in response to a voice request from a user, comprising: a request destination detection step of detecting from the voice a first designation information which designates an agent function unit among a plurality of agent function units as the recipient of the first request by the user; and a presentation control step of causing the user to present a first response obtained from the first agent function unit corresponding to the first designation information among the plurality of agent function units as a response to the first request, wherein the request destination detection step detects whether the user has uttered a predetermined voice command which includes a second designation information which designates any of the agent function units other than the first agent function unit as a new recipient after the first response has been presented to the user, and the presentation control step, if the predetermined voice command is detected, causes the user to present a second response obtained from the second agent function unit corresponding to the second designation information as a response to the first request.
[0009] The information processing program described in claim 12 is an information processing program executed by an information processing device that presents information in response to a voice request from a user, wherein the information processing device is caused to execute a request destination detection procedure which detects from the voice a first designation information which specifies which agent function unit the user will use as the recipient of the first request from among a plurality of agent function units, and a presentation control procedure which causes the information processing device to present to the user a first response obtained from the first agent function unit corresponding to the first designation information among the plurality of agent function units as a response to the first request, wherein the request destination detection procedure detects whether the user has uttered a predetermined voice command which includes a second designation information which designates any of the agent function units other than the first agent function unit as the new recipient of the request, and if the predetermined voice command is detected, the presentation control procedure causes the user to present a second response obtained from the second agent function unit corresponding to the second designation information as a response to the first request. [Brief explanation of the drawing]
[0010] [Figure 1] Figure 1 shows an example of an information processing system according to an embodiment. [Figure 2] Figure 2 is a diagram (1) showing an example configuration of the information processing device according to the first embodiment. [Figure 3] Figure 3 is a diagram (2) showing an example of the configuration of an information processing device according to the first embodiment. [Figure 4] Figure 4 is a flowchart (1) showing the information processing procedure according to the first embodiment. [Figure 5] Figure 5 is a flowchart (2) showing the information processing procedure according to the first embodiment. [Figure 6] Figure 6 shows an example of the determination process according to the first embodiment. [Figure 7] Figure 7 is a flowchart (1) showing the information processing procedure according to the second embodiment. [Figure 8]Figure 8 is a flowchart (2) showing the information processing procedure according to the second embodiment. [Figure 9] Figure 9 is a hardware configuration diagram showing an example of a computer that implements the functions of the information processing device 100. [Modes for carrying out the invention]
[0011] [Embodiment] Below, an example of an embodiment for implementing an information processing device, an information processing method, and an information processing program (hereinafter referred to as "embodiment") will be described in detail with reference to the drawings. Note that this embodiment does not limit the information processing device, information processing method, and information processing program. Furthermore, the same parts will be denoted by the same reference numerals in the following embodiments, and redundant explanations will be omitted.
[0012] <Overview of Embodiments> In the following, the embodiments will be described in two parts: the first embodiment and the second embodiment.
[0013] In the first embodiment, when a voice request is input in a state where an agent function unit is specified, even if the specified agent function unit is unable to respond to the voice request, the system dynamically presents a response from another agent function unit without requiring the user to re-enter the voice request.
[0014] In the second embodiment, for example, if the user is not satisfied with the response from the agent function unit specified in the voice request and specifies another agent function unit, the system will present a response from the other agent function unit without requiring the user to re-enter the voice request.
[0015] <System Configuration> First, the configuration of the information processing system according to the embodiment will be explained using Figure 1. Figure 1 is a diagram showing an example of the information processing system according to the embodiment. Figure 1 shows information processing system 1 as an example of the information processing system according to the embodiment.
[0016] As shown in FIG. 1, the information processing system 1 may include an information processing device 100 and an agent device 300. Further, the information processing device 100 and the agent device 300 are communicably connected by wire or wirelessly via a network N. Also, the information processing system 1 shown in FIG. 1 may include any number of information processing devices 100 and any number of agent devices 300.
[0017] The information processing device 100 is an example of an information processing device that presents information in response to a request by voice from a user. Specifically, the information processing device 100 is an example of an information processing device according to the first embodiment described later and an information processing device according to the second embodiment.
[0018] As shown in FIG. 1, the information processing device 100 may be mounted on the vehicle VEx. That is, the information processing device 100 may be an in-vehicle device.
[0019] Specifically, the information processing device 100 may be a dedicated navigation device built in or loaded on the vehicle VEx.
[0020] Note that the information processing device 100 may be composed of a navigation device and a recording device. As an example, the information processing device 100 may be a composite device in which a navigation device and a recording device that are independent of each other are communicably connected. As another example, the information processing device 100 may be a single device having a navigation function and a recording function.
[0021] Also, the information processing device 100 may include various sensors. For example, the information processing device 100 may include various sensors such as a camera, an acceleration sensor, a gyro sensor, a GPS sensor, and an atmospheric pressure sensor. As a result, the information processing device 100 can perform dialogue and information provision for assisting the user's driving based on the sensor information acquired by the various sensors.
[0022] Furthermore, users can operate their everyday portable terminal devices (e.g., smartphones, tablet devices, notebook PCs, desktop PCs, PDAs, etc.) in the same way as the information processing device 100 by installing a predetermined application on these devices. In other words, users can substitute their own portable terminal devices for in-vehicle devices. For these reasons, a portable terminal device owned by a user can also be understood as an information processing device according to this embodiment.
[0023] The agent device 300 is a server device that actually performs response processing to respond to voice requests from users. For example, the agent device 300 executes response processing in accordance with the control of the agent function unit described later. Furthermore, the agent device 300 and the agent function unit may be paired for each service, and there may be as many agent devices as there are agent function units.
[0024] For example, if the agent device 300 is unable to obtain an appropriate response to the request as a result of response processing, it returns response information to the agent function unit indicating that it is unable to respond. On the other hand, if the agent device 300 is able to obtain an appropriate response to the request as a result of response processing, it returns response information including the response to the request to the agent function unit.
[0025] <First Embodiment> [1. Functional Configuration] From here, we will describe the information processing according to the first embodiment. First, we will describe the information processing device 100A according to the first embodiment using Figure 2. Figure 2 is Figure (1) showing an example of the configuration of the information processing device according to the first embodiment.
[0026] The information processing device 100A is an example of an information processing device according to the first embodiment and is an in-vehicle device installed in a vehicle VEx. The information processing device 100A has an agent function that recognizes the user's voice and provides services including a response based on the recognition result. As a result, the user can receive various driving assistance and useful information by interacting with the agent function.
[0027] As shown in Figure 2, the information processing device 100A includes a microphone 11, a speaker 12, an application group 30A, a storage unit 120, and a control unit 130A.
[0028] (Regarding microphone 11) Microphone 11 collects sounds generated inside the VEx vehicle. For example, microphone 11 collects speech sounds made by passengers in the VEx vehicle.
[0029] (Speaker 12) Speaker 12 corresponds to the output unit that outputs sound. For example, in response to presentation control (output control) by the control unit 130A, speaker 12 outputs a response sound corresponding to the utterance input via microphone 11.
[0030] (Application Group 30A) The application group 30A is a group of applications that provide services related to driving assistance and useful information. The applications included in the application group 30A (hereinafter abbreviated as "apps") may each provide different types of services, or they may provide the same type of service but with different performance characteristics. In addition, each app included in the application group 30A has an agent function unit that acts as an intermediary for providing the service. Furthermore, each app (agent function unit) is associated with an agent device 300 that performs processing to realize the service corresponding to that app. This point will be explained in more detail using the example in Figure 2.
[0031] As shown in the example in Figure 2, application group 30A may include applications 30A-1 and 30A-2, etc. For the sake of explanation, only applications 30A-1 and 30A-2 are shown in Figure 2.
[0032] As shown in the example in Figure 2, application 30A-1 has an agent function unit 301A as a voice agent function, and an agent device 300A-1 (an example of agent device 300) is associated with the agent function unit 301A.
[0033] Here, for example, if application 30A-1 is a general-purpose application that enables everyday conversation with the user, the agent function unit 301A causes the agent device 300A-1 to perform response processing to the voice from the user. Furthermore, the agent function unit 301A enables dialogue with the user by having the user provide response information (dialogue information) that indicates the result of the response processing.
[0034] Furthermore, as shown in the example in Figure 2, application 30A-2 has an agent function unit 302A as a voice agent function, and an agent device 300A-2 (an example of agent device 300) is associated with the agent function unit 302A.
[0035] For example, if application 30A-2 is an application that provides tourist information, agent function unit 302A causes agent device 300A-2 to perform response processing based on sensor information. Agent function unit 301A then provides the user with response information (tourist destination information) indicating the result of the response processing, thereby realizing tourist information for the user.
[0036] (Storage unit 120) The storage unit 120 is implemented by, for example, a semiconductor memory element such as RAM (Random Access Memory) or flash memory, or a storage device such as a hard disk or optical disc. The storage unit 120 may store, for example, data or programs related to information processing according to the embodiment.
[0037] (Control Unit 130A) The control unit 130A is implemented by a CPU (Central Processing Unit) or MPU (Micro Processing Unit), etc., which executes various programs (for example, the information processing program according to the embodiment) stored in the memory device inside the information processing device 100A using RAM as the working area. Alternatively, the control unit 130A can be implemented by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or FPGA (Field Programmable Gate Array).
[0038] As shown in Figure 2, the control unit 130A includes a request detection unit 131A, a response acquisition unit 132, a determination unit 133, a presentation control unit 134, and a voice generation unit 135, and realizes or executes the information processing functions and operations described below. Note that the internal configuration of the control unit 130A is not limited to the configuration shown in Figure 2, and other configurations are also possible as long as they perform the information processing described later. Also, the connection relationships of the various processing units in the control unit 130A are not limited to the connection relationships shown in Figure 2, and other connection relationships are also possible.
[0039] (Request destination detection unit 131A) When the request destination detection unit 131A receives a voice request from a user (hereinafter sometimes referred to as the "first request"), it detects from the voice the first designation information that specifies which of the agent function units 301A and 302A will be the recipient of the first request.
[0040] In the example shown in Figure 2, the first designation information may be a predetermined word set for each of the agent function units 301A and 302A.
[0041] For example, the first designation information defined in the agent function unit 301A may be a wake word indicating the name of the agent function unit 301A. Figure 2 shows an example where the name of the agent function unit 301A is "NA1". Therefore, the first designation information corresponding to the agent function unit 301A may be the first wake word "NA1".
[0042] Similarly, the first designation information defined for the agent function unit 302A may be a wake word indicating the name of the agent function unit 302A. Figure 2 shows an example where the name of the agent function unit 302A is "NA2". Therefore, the first designation information corresponding to the agent function unit 302A may be the first wake word "NA2".
[0043] When the request detection unit 131A recognizes speech, it converts the recognized speech into text. Then, the request detection unit 131A determines whether or not the speech is a request through intent analysis based on the text obtained through the conversion. For example, if the text contains keywords indicating a predetermined command (e.g., "What about...", "Look it up", "I want to go", "Call me", etc.) and keywords indicating the content of the request (e.g., "Weather", "Shop", etc.), the request detection unit 131A determines that the recognized speech is a request and can obtain request content information indicating the content of the request.
[0044] Furthermore, if the request destination detection unit 131A determines that it is a request voice, it detects whether the voice of the request contains first designation information that specifies which agent function unit among the agent function units 301A and 302A is the recipient of the request indicated by the acquired request content information (first request). In the example in Figure 2, the request destination detection unit 131A detects whether the converted text acquired from the voice contains the first wake word "NA1" or the first wake word "NA2".
[0045] For example, suppose the voice input is "Agent NA1, what's the weather like tomorrow?". In this case, the request detection unit 131A determines that this voice is a request based on the text "Agent NA1, what's the weather like tomorrow?", and recognizes "to investigate tomorrow's weather" as the content of the voice request. The request detection unit 131A also detects the first wake word "NA1".
[0046] Furthermore, if the request destination detection unit 131A detects the first designation information from the voice request, it causes the agent function units 301A and 302A to perform response processing for the voice request indicated by the voice request, i.e., the first request. As in the example above, suppose the voice input is "Agent NA1, what's the weather like tomorrow?". In this case, the request destination detection unit 131A causes not only the request destination agent function unit 301A, which was designated as the request destination by the first wake word "NA1", but also the non-request destination agent function unit 302A, which was not designated as the request destination by the first wake word "NA1", to perform response processing for the first request. In this way, if the request destination detection unit 131A detects the first designation information from the voice request, it causes all agent function units associated with its own device, the information processing device 100A, to perform response processing for the first request.
[0047] The agent function unit 301A may, in response to control from the request destination detection unit 131A, cause agent device 300A-1 to perform response processing for the first request. The agent function unit 302A may, in response to control from the request destination detection unit 131A, cause agent device 300A-2 to perform response processing for the first request.
[0048] In the following explanation, the agent function unit designated as the recipient of the request by the first specified information will be referred to as agent function unit 301A (requested agent function unit 301A), and the agent function unit not designated as the recipient of the request by the first specified information will be referred to as agent function unit 302A (non-requested agent function unit 302A).
[0049] (Regarding the response acquisition unit 132) The response acquisition unit 132 acquires response information from the agent function unit 301A that indicates the result of the agent function unit 301A performing response processing for the first request, in response to control by the request destination detection unit 131A. The response acquisition unit 132 also acquires response information from the agent function unit 302A that indicates the result of the agent function unit 302A performing response processing for the first request, in response to control by the request destination detection unit 131A.
[0050] The response information may include information indicating an appropriate response to the first request, or information indicating that the first request could not be processed properly. The response acquisition unit 132 also outputs the response information to the determination unit 133.
[0051] (Regarding the determination unit 133) The determination unit 133 determines whether the response information from the requesting agent function unit 301A and the response information from the non-requesting agent function unit 302A are capable of handling the first request. For example, the determination unit 133 may determine whether each agent function unit is capable of handling the first request based on whether the response information contains information indicating an appropriate response to the first request, or whether the response information contains information indicating that the first request could not be processed appropriately.
[0052] (Regarding the display control unit 134) The presentation control unit 134 controls the system so that a first response, which is a response based on the response information of the requesting agent function unit 301A, is presented (output) to the user. As described above, the response information includes either an answer to the first request or information indicating that the first request cannot be fulfilled. For this reason, if the presentation control unit 134 contains an answer to the first request, it causes this answer to be presented as the first response. On the other hand, if the presentation control unit 134 contains information indicating that the request cannot be fulfilled, it causes the requesting agent function unit 301A to present a message indicating that the request cannot be fulfilled as the first response.
[0053] Furthermore, the presentation control unit 134 may, in accordance with the determination result by the determination unit 133, present to the user a second response, which is a response based on the response information of the non-requested agent function unit 302A, in addition to the first response.
[0054] For example, the presentation control unit 134 may present a first response based on the response information of the requesting agent function unit 301A, or it may present a combination of the first response and a second response based on the response information of the non-requesting agent function unit 302A, depending on the four determination result patterns shown below.
[0055] One example of pattern 1 is a situation in which, of the requesting agent function unit 301A and the non-requesting agent function unit 302A, only the requesting agent function unit 301A is determined to be capable of handling the first request.
[0056] One example of the second pattern is a situation in which the requesting agent function unit 301A is determined to be able to handle the first request, and the non-requesting agent function unit 302A is also determined to be able to handle the first request.
[0057] One example of pattern 3 is a situation in which the requesting agent function unit 301A is determined to be unable to respond to the first request, while the non-requesting agent function unit 302A is determined to be able to respond to the first request.
[0058] One example of pattern 4 is a situation in which both the requesting agent function unit 301A and the non-requesting agent function unit 302A are determined to be unable to respond to the first request.
[0059] For example, the presentation control unit 134 may, as part of the process of presenting a response as described above, create a sentence indicating the content of the response and control the speech generation unit 135 to output an audio reading of the created sentence. Details of the response presentation process by the presentation control unit 134 for each of these four patterns will be described later.
[0060] (Speech generation unit 135) The voice generation unit 135 synthesizes speech in response to control by the presentation control unit 134 and outputs the synthesized speech from the speaker 12. For example, the voice generation unit 135 synthesizes speech that reads a sentence based on a sentence created by the presentation control unit 134.
[0061] For example, if the requesting agent function unit 301A is agent NA1 with a female voice V1, the voice generation unit 135 may synthesize speech such that the female voice V1 reads aloud a sentence indicating the content of the first response. Figure 2 shows an example in which, in response to the requesting agent function unit 301A determining that the response information is compatible with the first request "Investigate tomorrow's weather," the first response "Tomorrow's weather will be rain followed by cloudy" is output from the speaker 12 in the female voice V1, which is the voice of agent NA1.
[0062] On the other hand, if the non-requested agent function unit 302A is agent N2 with a male voice V2, the voice generation unit 135 may synthesize speech such that a sentence indicating the content of the second response is read aloud in the male voice V2.
[0063] [2. Variations of Functional Configuration] Users can, for example, install a predetermined application on a portable terminal device (e.g., a smartphone, tablet, notebook PC, desktop PC, PDA, etc.) to make the portable terminal device operate in the same way as the information processing device 100.
[0064] Figure 3 shows an example in which a user installs a predetermined application on their smartphone, thereby realizing some (or all) of the functions of the in-vehicle information processing device 100A on their smartphone. Specifically, Figure 3 shows an information processing device 100B, which is a smartphone on which some of the functions of the information processing device 100A are realized.
[0065] As a result, information processing device 100A and information processing device 100B can recognize each other's presence, for example, through short-range wireless communication. In this way, users can add any number of portable terminal devices to system M11, which corresponds to their own area, within the information processing system 1.
[0066] In the following, each device will be described using the example of a case where the information processing device 100A and the information processing device 100B are connected by short-range wireless communication. Figure 3 is Figure (2) showing an example of the configuration of the information processing device according to the first embodiment.
[0067] [3. Functional Configuration] From here, using Figure 3, we will describe an information processing device 100B related to a modified example corresponding to the first embodiment. We will also describe the operation of the information processing device 100A in accordance with the fact that the information processing device 100B has been added to the system M11.
[0068] The information processing device 100B is an example of an information processing device according to the first embodiment, and is a smartphone having some functions equivalent to the in-vehicle information processing device 100A. The information processing device 100B has an agent function that recognizes the user's voice and provides services including responses based on the recognition results. As a result, the user can receive various driving assistance and useful information through interaction with the agent function.
[0069] As shown in Figure 3, the information processing device 100B includes a microphone 11, an application group 30B, and a control unit 130B. The microphone 11 is the same as that of the information processing device 100A, so its description is omitted. Although not shown in Figure 3, the information processing device 100B may also have a storage unit corresponding to the storage unit 120.
[0070] (App group 30B) The application group 30B is a group of applications that provide services related to driving assistance and useful information. The applications included in application group 30B may each provide different types of services, or they may provide the same type of service but with different performance characteristics. In addition, each application included in application group 30B has an agent function unit that acts as an intermediary for providing the service. Furthermore, each application (agent function unit) is associated with an agent device 300 that performs processing to realize the service corresponding to that application. This point will be explained in more detail using the example in Figure 3.
[0071] In the example shown in Figure 3, the application group 30B includes an example where application 30B-1 is included. For the sake of explanation, only one application 30B-1 is shown in Figure 3. Also, in the example shown in Figure 3, application 30B-1 has an agent function unit 301B as a voice agent function, and an agent device 300B-1 (an example of agent device 300) is associated with the agent function unit 301B.
[0072] Here, for example, if application 30B-1 is an application that enables specialized conversations with the user on specific topics, the agent function unit 301B causes the agent device 300B-1 to perform response processing to the voice from the user. Furthermore, the agent function unit 301B enables dialogue with the user by having the user provide response information (specialized information) that indicates the result of the response processing.
[0073] (Control Unit 130B) The control unit 130B is implemented by a CPU or MPU, etc., which executes various programs (for example, the information processing program according to this embodiment) stored in the memory device inside the information processing device 100B using RAM as a working area. Alternatively, the control unit 130B may be implemented by an integrated circuit such as an ASIC or FPGA.
[0074] As shown in Figure 3, the control unit 130B includes a request detection unit 131B and a registration acceptance unit 136B, and realizes or executes the information processing functions and operations described below. Note that the internal configuration of the control unit 130B is not limited to the configuration shown in Figure 3, and other configurations are also possible as long as they perform the information processing described later. Furthermore, the connection relationships of the various processing units in the control unit 130B are not limited to the connection relationships shown in Figure 3, and other connection relationships are also possible.
[0075] (Registration reception desk 136B / Registration reception desk 136A) For example, from the perspective of information processing device 100B, information processing device 100A can be considered another information processing device 100. Similarly, from the perspective of information processing device 100A, information processing device 100B can also be considered another information processing device 100. In this way, to accommodate cases where multiple information processing devices 100 are connected in a way that allows communication via short-range wireless communication, etc., information processing device 100B may have a registration acceptance unit 136B.
[0076] Furthermore, in case multiple information processing devices 100 are connected to each other via short-range wireless communication or the like, the information processing device 100A may also have a registration acceptance unit 136A, as shown in Figure 3.
[0077] The registration reception unit 136B can accept registration of identification information that identifies the agent function units 301A and 302A associated with the information processing device 100A. For example, the registration reception unit 136B may accept a wake word indicating the name "NA1" for agent function unit 301A and a wake word indicating the name "NA2" for agent function unit 302A as identification information. This allows the request destination detection unit 131B, described later, to recognize which agent function units are associated with the connected information processing device 100A.
[0078] On the other hand, the registration reception unit 136A can accept registration of identification information that identifies the agent function unit 301B associated with the information processing device 100B. Here, Figure 3 shows an example where the name of the agent function unit 301B is "NA3". In this case, the registration reception unit 136A may accept a wake word indicating the name of the agent function unit 301B, "NA3", as identification information. This allows the request destination detection unit 131A to recognize which agent function unit is associated with the connected information processing device 100B.
[0079] (Request destination detection unit 131B / Request destination detection unit 131A) The request destination detection unit 131B is a processing unit corresponding to the request destination detection unit 131A of the information processing device 100A, and may have the same functions as the request destination detection unit 131A.
[0080] Furthermore, the request destination detection unit 131B recognizes that, because the registration of identification information has been accepted by the registration acceptance unit 136B, the connected information processing device 100A is linked to an agent function unit 301A called agent NA1 and an agent function unit 302A called agent NA2.
[0081] In such cases, when the request destination detection unit 131B receives a voice request (first request) from the user, it detects from the voice first designation information that designates which agent function unit to be the recipient of the first request, from among the agent function unit 301B linked to its own device, the information processing device 100B, and the agent function units 301A and 302A linked to another device, the information processing device 100A.
[0082] In the example shown in Figure 3, the first designated information may be a wake word predetermined for each of the agent function units 301A, 302A, and 301B.
[0083] Specifically, the first designation information defined in the agent function unit 301A may be a wake word indicating the name of the agent function unit 301A. That is, the first designation information corresponding to the agent function unit 301A is the first wake word "NA1".
[0084] Furthermore, the first designation information defined in the agent function unit 302A may be a wake word indicating the name of the agent function unit 302A. That is, the first designation information corresponding to the agent function unit 302A is the first wake word "NA2".
[0085] Furthermore, as shown in the example in Figure 3, the first designation information corresponding to the agent function unit 301B may be the first wake word "NA3".
[0086] When the request recipient detection unit 131B recognizes speech, it converts the recognized speech into text. Then, the request recipient detection unit 131B determines whether or not the speech is a request based on intent analysis of the text obtained through the conversion. For example, the request recipient detection unit 131B can also recognize the content of the request from the result of the intent analysis.
[0087] Furthermore, if the request destination detection unit 131B determines that it is a request voice, it detects whether the request voice contains first designation information that specifies which agent function unit among the agent function units 301A, 302A, and 301B is the recipient of the recognized request (first request). In the example in Figure 3, the request destination detection unit 131B detects whether the converted text obtained from the voice contains any of the first wake word "NA1", the first wake word "NA2", or the first wake word "NA3".
[0088] For example, suppose the voice input is "Agent NA1, what's the weather like tomorrow?". In this case, the request detection unit 131B determines that this voice is a request based on the text indicating "Agent NA1, what's the weather like tomorrow?", and recognizes "to investigate tomorrow's weather" as the content of the voice request. The request detection unit 131B also detects the first wake word "NA1".
[0089] Furthermore, if the request destination detection unit 131B detects the first designation information from the request voice, it causes the agent function unit 301B to execute a response process for the voice request indicated by this request voice, i.e., the first request. As in the example above, suppose the voice input is "Agent NA1, what's the weather like tomorrow?". In this case, the request destination detection unit 131B also causes the non-request destination agent function unit 301B, which was not designated as the request destination by the first wake word "NA1", to execute a response process for the first request. In this way, if the request destination detection unit 131B detects the first designation information from the request voice, it causes all agent function units associated with its own device, the information processing device 100B, to execute a response process for the first request.
[0090] The agent function unit 301B may, in response to control from the request destination detection unit 131B, cause the agent device 300B-1 to perform response processing for the first request.
[0091] As in the example above, while the request destination detection unit 131B is processing, the request destination detection unit 131A will also operate as explained in Figure 2. However, in the example in which the information processing device 100B is added to system M11, the request destination detection unit 131A will detect whether the first designation information specifying which agent function unit to be the recipient of the first request is included in the voice of the request.
[0092] In the following explanation, the agent function unit designated as the recipient by the first specified information will be referred to as agent function unit 301A (requested agent function unit 301A), and the agent function units not designated as recipients by the first specified information will be referred to as agent function units 302A and 301B (non-requested agent function units X). Furthermore, subsequent processing may be performed on the information processing device 100A side.
[0093] (Regarding the response acquisition unit 132) The response acquisition unit 132 acquires response information from the agent function unit 301A that indicates the result of the agent function unit 301A performing response processing for the first request, in response to control by the request destination detection unit 131A. The response acquisition unit 132 also acquires response information from the agent function unit 302A that indicates the result of the agent function unit 302A performing response processing for the first request, in response to control by the request destination detection unit 131A.
[0094] Furthermore, the response acquisition unit 132 may acquire response information from the agent function unit 301B indicating the result of the agent function unit 301B performing response processing for the first request, in response to the control of the request destination detection unit 131B.
[0095] The response information may include information indicating an appropriate response to the first request, or information indicating that the first request could not be processed properly. The response acquisition unit 132 also outputs the response information to the determination unit 133.
[0096] (Regarding the determination unit 133) The determination unit 133 determines whether the response information of the requesting agent function unit 301A and the response information of the non-requesting agent function unit X are capable of handling the first request. For example, the determination unit 133 may determine whether each agent function unit is capable of handling the first request based on whether the response information contains information indicating an appropriate response to the first request, or whether the response information contains information indicating that the first request could not be processed appropriately.
[0097] (Regarding the presentation control unit 134 / speech generation unit 135) A detailed explanation of the presentation control unit 134 and the voice generation unit 135 is omitted as it would be redundant with the example in Figure 2.
[0098] In short, the presentation control unit 134 may, in accordance with the determination result by the determination unit 133, present to the user a second response, which is a response based on the response information of the non-requested agent function unit X, in addition to the first response.
[0099] Figure 3 also shows an example where, in response to the requesting agent function unit 301A determining that it is capable of handling the first request "Investigate tomorrow's weather," the first response, "Tomorrow's weather will be rain followed by cloudy," is output from speaker 12 in the female voice V1 of agent NA1.
[0100] The information processing device 100B may also have a speaker 12, but the speaker 12 to which the response is output may be the one on the information processing device 100A side. The speaker 12 of the information processing device 100A may typically be a vehicle speaker installed in a vehicle.
[0101] [4. Processing Procedure] Next, the information processing procedure according to the first embodiment will be explained using Figures 4 and 5. Figure 4 focuses on the overall picture of the information processing according to the first embodiment and explains the information processing procedure according to the first embodiment. On the other hand, Figure 5 focuses on the response control according to the four judgment result patterns described above and explains the information processing procedure according to the first embodiment.
[0102] Furthermore, Figures 4 and 5 illustrate the information processing procedure using an example where the information processing device 100A, an in-vehicle device installed in vehicle VE1 (an example of vehicle VEx), is the main agent, and the user U1 of vehicle VE1 adds an information processing device 100B, which is a smartphone, as a sub-agent to system M11.
[0103] Furthermore, in the examples in Figures 4 and 5, the agent function unit 301A of the information processing device 100A is referred to as "Agent NA1" using its name. Similarly, the agent function unit 302A of the information processing device 100A is referred to as "Agent NA2" using its name. And the agent function unit 301B of the information processing device 100B is referred to as "Agent NA3" using its name.
[0104] Furthermore, in the examples of Figures 4 and 5, the first designated information is denoted as "First WW". Therefore, in the examples of Figures 4 and 5, it is assumed that three wake words, "NA1", "NA2", and "NA3", are pre-registered as the First WW. The First WW may be registered, for example, by user U1 for both information processing devices 100A and 100B.
[0105] [4-1. Processing Procedure (1)] Figure 4 will now be explained. Figure 4 is a flowchart (1) showing the information processing procedure according to the first embodiment.
[0106] First, if the requester detection unit 131A (and the requester detection unit 131B) recognizes a voice utterance, it determines whether or not this voice is a request. That is, the requester detection unit 131A (and the requester detection unit 131B) determines whether or not it has received a voice request, which is a voice request (step S401).
[0107] The request destination detection unit 131A (and request destination detection unit 131B) waits until it can determine that it has received a voice request, as long as it has determined that it has not received a voice request (step S401; No).
[0108] On the other hand, if the request destination detection unit 131A (and the request destination detection unit 131B) determines that it has received a voice request (step S401; Yes), it proceeds to step S402.
[0109] Here, Figure 4 shows an example where user U1 inputs the voice message, "Agent NA1, what's the weather like tomorrow?". In this example, the request detection unit 131A (and request detection unit 131B) determines in step S401 that it has received a voice request and recognizes the request content, "to investigate tomorrow's weather," as the first request VR1. The following processing steps will be explained using this example.
[0110] For example, the request destination detection unit 131A (and the request destination detection unit 131B) detects whether the first WW ("NA1", "NA2", or "NA3") which specifies the agent to be the recipient of the first request VR1, is included in the request voice from among the agents NA1, NA2, and NA3 whose registration has been accepted by the registration acceptance unit 136A (or the registration acceptance unit 136B) (step S402).
[0111] If the request destination detection unit 131A (and the request destination detection unit 131B) fails to detect the first WW (step S402; No), the process returns to step S401.
[0112] On the other hand, if the request destination detection unit 131A (and the request destination detection unit 131B) can detect the first WW (step S402; Yes), it causes the agent associated with its own device to perform response processing for the first request VR1 (step S403).
[0113] In the example shown in Figure 4, the request destination detection unit 131A can detect the first WW "NA1" in step S402. Therefore, in step S403, it causes the request destination agent NA1, which was designated as the request destination by the first WW "NA1", to perform a response process for the first request VR1. The request destination detection unit 131A also causes the non-request destination agent NA2, which was not designated as the request destination by the first WW "NA1", to perform a response process for the first request VR1.
[0114] Similarly, the request destination detection unit 131B can also detect the first WW "NA1" in step S402. Therefore, in step S403, the non-request destination agent NA3, which was not designated as a request destination by the first WW "NA1", is instructed to perform response processing for the first request VR1.
[0115] Next, the response acquisition unit 132 acquires response information from each agent indicating the result of the response processing performed by each agent in accordance with the control by the request destination detection unit 131A (request destination detection unit 131B) (step S404). Specifically, the response acquisition unit 132 acquires response information from agent NA1 indicating the result of agent NA1 performing response processing for the first request VR1. The response acquisition unit 132 also acquires response information from agent NA2 indicating the result of agent NA2 performing response processing for the first request VR1. The response acquisition unit 132 also acquires response information from agent NA3 indicating the result of agent NA3 performing response processing for the first request VR1.
[0116] Next, the determination unit 133 determines whether the response information of the requesting agent NA1 and the response information of the non-requesting agents X (non-requesting agents NA2 and NA3) are compatible with the first request VR1 (step S405).
[0117] Then, the presentation control unit 134 performs output control according to the determination result in step S405 (step S406). For example, depending on the pattern of the determination result, the presentation control unit 134 either outputs a request response (first response) based on the response information of the requesting agent NA1, or controls the output so that the request response (first response) and a non-request response (second response) based on the response information of the non-requesting agent X are output in combination.
[0118] [4-2. Processing Procedure (2)] Next, Figure 5 will be explained. Figure 5 is a flowchart (2) showing the information processing procedure according to the first embodiment. In Figure 5, the response control performed from steps S405 to S406 in Figure 4 will be explained in more detail.
[0119] First, the determination unit 133 determines whether the response information of the requesting agent NA1 is compatible with the first request VR1 (step S501).
[0120] If the determination unit 133 determines that the response information of the requesting agent NA1 is compatible with the first request VR1 (step S501; Yes), it then determines whether the response information of the non-requesting agent X is also compatible with the first request VR1 (step S502).
[0121] For example, if the determination unit 133 determines that the response information of the non-requesting agent NA3 is compatible with the first request VR1 (step S502; Yes), it compares the usage frequency between the requesting agent NA1 and the non-requesting agent NA3 to determine whether the non-requesting agent NA3 is used more frequently than the requesting agent NA1 (step S503).
[0122] If the presentation control unit 134 determines that the non-requesting agent NA3 is used more frequently than the requesting agent NA1 (step S503; Yes), it outputs a non-requesting response (second response) based on the response information of the non-requesting agent NA3 in addition to the requesting response (first response) based on the requesting agent NA1 (step S504). At this time, the presentation control unit 134 may also output the non-requesting response in addition to the requesting response, by inserting a message explaining the reason for adding the non-requesting response between the requesting response and the non-requesting response.
[0123] Here, in step S503, the determination unit 133 can perform one of the four determination processes, which will be described in more detail below. Therefore, Figure 6 will specifically explain the four determination processes and show an example of output control in step S504. Figure 6 is a diagram showing an example of a determination process according to the first embodiment.
[0124] Let's explain the first determination process. For example, the determination unit 133 compares the number of times the current request recipient agent NA1 and the current non-request recipient agent NA3 have been designated as the request recipient agent in the first WW in previous requests made by user U1. If the non-request recipient agent NA3 has been designated as the request recipient agent more often, the determination unit 133 determines that the non-request recipient agent NA3 is used more frequently by user U1 for various requests. In the example in Figure 4, the first request VR1 is a request to check tomorrow's weather, but in this determination process, the determination unit 133 determines that the non-request recipient agent NA3 is used more frequently by user U1 not only for weather survey requests but also for all kinds of requests in general. In other words, it determines that agent NA3, the current non-request recipient agent, is an agent that user U1 is generally more familiar with.
[0125] Let's explain the second determination process. For example, the determination unit 133 compares the number of times the current recipient agent NA1 and the current non-recipient agent NA3 have been designated as the recipient in the first WW for similar requests made by user U1 (requests similar to the first request VR1). The determination unit 133 then determines that if the non-recipient agent NA3 has been designated as the recipient more often, the non-recipient agent NA3 is used more frequently by user U1 for the target request. The first request VR1 is a request to check tomorrow's weather, and in this determination process, the determination unit 133 determines that the non-recipient agent NA3 is used more frequently by user U1 for weather survey requests. In other words, it determines that agent NA3, the current non-recipient agent, is a more familiar agent to user U1 for weather survey requests.
[0126] Let me explain the third determination process. For example, the determination unit 133 compares the number of times the current request recipient agent NA1 and the current non-request recipient agent NA3 have been designated as the request recipient in the first WW in past requests from an unspecified number of users. If the non-request recipient agent NA3 has been designated as the request recipient more times, the determination unit 133 determines that the non-request recipient agent NA3 is used more frequently in various requests from an unspecified number of users. The first request VR1 is a request to check tomorrow's weather, but in this determination process, the determination unit 133 determines that the non-request recipient agent NA3 is used more frequently by more users not only for weather survey requests but also for various other requests in general. In other words, it determines that agent NA3, the current non-request recipient agent, is an agent that is generally more popular with general users.
[0127] Let's explain the fourth determination process. For example, the determination unit 133 compares the number of times the current recipient agent NA1 and the current non-recipient agent NA3 have been designated as the recipient in the first WW for similar requests (requests similar to the first request VR1) from an unspecified number of users. If the non-recipient agent NA3 has been designated as the recipient more times, the determination unit 133 determines that the non-recipient agent NA3 is used more frequently in target requests from an unspecified number of users. The first request VR1 is a request to check tomorrow's weather, and in this determination process, the determination unit 133 determines that the non-recipient agent NA3 is used more frequently by more users for weather survey requests. In other words, it determines that agent NA3, the current non-recipient agent, is a popular agent among general users for weather survey requests.
[0128] Furthermore, as shown in Figure 6, the presentation control unit 134 controls the system so that, following the requester's response, the reason message "Agent NA3's answer is more recommended" is output in Agent NA1's voice. In addition, the presentation control unit 134 controls the system so that the non-requester's response "Tomorrow's weather will be rain followed by cloudy skies. The probability of precipitation is XX, and the wind speed is XX" is output in Agent NA3's voice.
[0129] Furthermore, if the determination unit 133 determines that the response information of the non-requesting agent NA3 is compatible with the first request VR1 (step S502; Yes), it may determine whether the non-requesting agent NA3 has more information than the requesting agent NA1 by comparing the amount of information between the requesting agent NA1 and the non-requesting agent NA3, rather than comparing the frequency of use as in the example above (step S503).
[0130] Specifically, the determination unit 133 may determine whether the non-request response contains more information than the requesting agent response by comparing the amount of information between the response information of the requesting agent NA1 and the response information of the non-requesting agent NA3. Furthermore, if the presentation control unit 134 determines that the non-request response contains more information than the requesting agent response (step S503; Yes), it may output the non-request response together with the requesting agent response (step S504).
[0131] Let's return to the explanation in Figure 5. If the presentation control unit 134 determines that the response information of the non-requesting agent X is not compatible with the first request VR1 (step S502; No), that is, if it determines that only the requesting agent NA1 can handle it, it controls the system so that only the requesting agent response based on the response information of the requesting agent NA1 is output (step S506). For example, as shown in Figure 5, the presentation control unit 134 controls the system so that the requesting agent response "Tomorrow's weather will be rain followed by cloudy" is output in the voice of agent NA1.
[0132] Furthermore, if the presentation control unit 134 determines that the requesting agent NA1 is used more frequently (or has more information) than the non-requesting agent NA1 (step S503; No), it may similarly control the output so that only the requesting agent response based on the response information of the requesting agent NA1 is output (step S506).
[0133] Furthermore, if the determination unit 133 determines that the response information of the requesting agent NA1 is not compatible with the first request VR1 (step S501; No), it determines whether the response information of the non-requesting agent X is compatible with the first request VR1 (step S507).
[0134] For example, if the presentation control unit 134 determines that the response information of the non-requesting agent NA3 is compatible with the first request VR1 (step S507; Yes), that is, if it determines that only the non-requesting agent NA3 is compatible, it controls the output of a non-requesting response based on the response information of the non-requesting agent NA3, following an introductory message conveying the status of the requesting agent NA1 (step S508). For example, as shown in Figure 5, the presentation control unit 134 controls the output of the introductory message "I cannot handle this. I will leave it to agent NA3." in the voice of agent NA1. The presentation control unit 134 also controls the output of the non-requesting response "Tomorrow's weather will be rain followed by cloudy." in the voice of agent NA3.
[0135] On the other hand, if the presentation control unit 134 determines that the response information of the non-requesting agent X is also incapable of responding to the first request VR1 (step S507; No), that is, if it is determined that both the requesting agent NA1 and the non-requesting agent X are incapable of responding to the first request VR1, it controls the output of message information indicating that there are no agents capable of responding, with the content mainly from the requesting agent NA1 (step S509). For example, as shown in Figure 5, the presentation control unit 134 controls the output of "I cannot respond. Agents NA2 and NA3 also say they don't know." in the voice of agent NA1.
[0136] <Second Embodiment> [1. Functional Configuration] Next, we will describe the information processing according to the second embodiment. In the information processing according to the second embodiment, the functional configuration of the first embodiment described in Figures 2 and 3 can be adopted. For example, the information processing according to the second embodiment may be implemented by the in-vehicle information processing device 100A alone. Alternatively, the information processing according to the second embodiment may be implemented among multiple information processing devices 100 in a user-dedicated system M11 that is generated when other information processing devices such as information processing device 100B are connected to the information processing device 100A.
[0137] In the first embodiment, the information processing device 100A determined whether the requesting agent function unit designated as the requesting agent unit by the first designated information, and the non-requesting agent function unit not designated as the requesting agent unit by the first designated information, were capable of responding to the first request. In addition, the information processing device 100A presented a second response corresponding to the non-requesting agent function unit, in addition to a first response corresponding to the requesting agent function unit, depending on the determination result.
[0138] However, in the second embodiment, the information processing device 100A presents only the first response based on the response information obtained from the requesting agent function unit (first agent function unit) designated as the requesting agent by the first specified information, regardless of whether the requesting agent function unit (first agent function unit) is capable of responding to the first request. In other words, in the second embodiment, the information processing device 100A does not perform the process of determining whether the requesting agent function unit and the non-requesting agent function unit are capable of responding to the first request.
[0139] Therefore, in the second embodiment, after the first response is presented as described above, the information processing device 100A detects whether the user has spoken a predetermined voice command that includes second designation information specifying any agent function unit other than the requesting agent function unit as the new requesting agent. If the predetermined voice command is detected, the information processing device 100A causes the user to be presented with the second response obtained from the agent function unit specified by the second designation information (the second agent function unit) as a response to the first request.
[0140] In the following section, the information processing device 100A according to the second embodiment will be described in more detail using the example in Figure 3. The operation of the information processing device 100B in accordance with its addition to the system M11 will also be described.
[0141] (Request destination detection unit 131A / Request destination detection unit 131B) When the request destination detection unit 131A receives a voice request, it detects whether the voice of the request contains first designation information that specifies which agent function unit among the agent function units 301A, 302A, and 301B is to be the recipient of the request recognized from the voice request (first request).
[0142] When the request destination detection unit 131A detects the first designated information, it causes the agent function units 301A and 302A to execute response processing for the first request.
[0143] Similarly, when the request destination detection unit 131B receives a voice request, it detects whether the voice of the request contains first designation information that designates which agent function unit among the agent function units 301A, 302A, and 301B is to be the recipient of the first request.
[0144] When the request destination detection unit 131B detects the first designated information, it causes the agent function unit 301B to execute response processing for the first request.
[0145] (Response acquisition unit 132) The response acquisition unit 132 acquires response information from the agent function unit 301A that indicates the result of the agent function unit 301A performing response processing for the first request, in response to control by the request destination detection unit 131A. The response acquisition unit 132 also acquires response information from the agent function unit 302A that indicates the result of the agent function unit 302A performing response processing for the first request, in response to control by the request destination detection unit 131A.
[0146] Furthermore, the response acquisition unit 132 may acquire response information from the agent function unit 301B indicating the result of the agent function unit 301B performing response processing for the first request, in response to the control of the request destination detection unit 131B.
[0147] In the first embodiment, the response acquisition unit 132 performed a determination process by outputting the response information acquired from each agent function unit to the determination unit 133. However, as described above, in the second embodiment, no determination process is performed by the determination unit 133. Therefore, in the second embodiment, the response acquisition unit 132 may output the response information acquired from each agent function unit to the presentation control unit 134. Furthermore, for this reason, the information processing device 100A according to the second embodiment does not need to have a determination unit 133.
[0148] In the following explanation, the agent function unit designated as the recipient of the request by the first specified information will be referred to as agent function unit 301A (requested agent function unit 301A), and the agent function units not designated as recipients of the request by the first specified information will be referred to as agent function units 302A and 301B (non-requested agent function units X).
[0149] (Display control unit 134) The presentation control unit 134 controls the system so that a first response, which is a response based on the response information of the requesting agent function unit 301A, is presented (output) to the user. The response information may include an answer to the first request, or information indicating that the first request cannot be fulfilled. For this reason, if the presentation control unit 134 includes an answer to the first request, it causes this answer to be presented as the first response. On the other hand, if the presentation control unit 134 includes information indicating that the request cannot be fulfilled, it causes the requesting agent function unit 301A to present a message indicating that the request cannot be fulfilled as the first response.
[0150] Here, the presentation control unit 134 does not present responses based on the response information of the non-requesting agent function unit X (responses other than the first response). Instead, the presentation control unit 134 stores other response information other than the response information of the requesting agent function unit 301A, i.e., the response information of the non-requesting agent function unit X. For example, the presentation control unit 134 stores the response information of the non-requesting agent function unit X in the storage unit 120.
[0151] (Request destination detection unit 131A / Presentation control unit 134) The request destination detection unit 131A detects whether a predetermined voice command including second designation information that designates any agent function unit other than the request destination agent function unit 301A as the new request destination has been uttered by the user, while the response information (other response information) of the non-request destination agent function unit X is stored (in other words, the state after the first response has been presented to the user). Specifically, the request destination detection unit 131A detects whether a predetermined voice command including second designation information that designates either the non-request destination agent function units 302A or 301B as the new request destination has been uttered by the user.
[0152] Here, the second designation information may be a wake word predetermined for each of the agent function units 301A, 302A, and 301B, similar to the first designation information.
[0153] For example, the second designation information defined in the agent function unit 301A may be a wake word indicating the name of the agent function unit 301A. Therefore, the second designation information corresponding to the agent function unit 301A may be the second wake word "NA1".
[0154] Furthermore, the second designation information specified for the agent function unit 302A may be a wake word indicating the name of the agent function unit 302A. Therefore, the second designation information corresponding to the agent function unit 302A may be the second wake word "NA2".
[0155] Furthermore, the second designation information specified for the agent function unit 301B may be a wake word indicating the name of the agent function unit 301B. Therefore, the second designation information corresponding to the agent function unit 301B may be the second wake word "NA3".
[0156] Furthermore, the specified voice command may be a specified phrase that instructs the system to repeat the response process for the first request, but with a different recipient. For example, the specified phrase may be "Same question," "Please," or "What about the previous one?"
[0157] For example, suppose the voice input is "Agent NA3, same question." In this case, the request destination detection unit 131A can detect a voice command consisting of a second wake word "NA3" and the phrase "same question" based on the text indicating "Agent NA3, same question." As a result, the request destination detection unit 131A can recognize the agent function unit 301B as a new request destination, replacing the agent function unit 301A which was designated as the request destination for the first request based on the first specified information.
[0158] In the following explanation, the agent function unit designated as the new recipient of the first request by the second designation information will be described as agent function unit 301B (new recipient agent function unit 301B). In this example, the new recipient agent function unit 301B can be considered an example of the second agent function unit corresponding to the second designation information.
[0159] When the request detection unit 131A detects a predetermined voice command including second designation information, the presentation control unit 134 retrieves the response information of the new request agent function unit 301B from the response information stored in the storage unit 120. The presentation control unit 134 then presents the new request response (second response), which is a response based on the response information of the new request agent function unit 301B, to the user as a response to the first request.
[0160] For example, the presentation control unit 134 may control the voice generation unit 135 to create a sentence indicating the content of the response and output a voice reading the created sentence as part of the process of presenting a new request response.
[0161] (Speech generation unit 135) The voice generation unit 135 synthesizes speech in response to control by the presentation control unit 134 and outputs the synthesized speech from the speaker 12. For example, the voice generation unit 135 synthesizes speech that reads a sentence based on a sentence created by the presentation control unit 134.
[0162] For example, if the new request agent function unit 301B is agent NA3 with a male voice V3, the voice generation unit 135 may synthesize speech such that the male voice V3 reads aloud a sentence indicating the content of the new request response.
[0163] For example, if the response information from the new request agent function unit 301B indicates an appropriate answer to the first request, "Investigate tomorrow's weather," the voice generation unit 135 may synthesize a voice such that the new request response, "Tomorrow's weather will be rain followed by cloudy," is read aloud in a male voice V3.
[0164] On the other hand, if the response information from the new request agent function unit 301B is not suitable for the first request, "Investigate tomorrow's weather," the voice generation unit 135 may synthesize a voice in which the new request response, "I cannot handle this," is read aloud in a male voice V3.
[0165] [2. Variant Example] In the second embodiment, the above example shows that not only the requesting agent function unit 301A designated as the requesting agent by the first designation information, but also the non-requesting agent function unit X is controlled to perform response processing to the first request, and as a result, the response information of the non-requesting agent function unit X is stored in preparation for the detection of the second designation information.
[0166] However, the system may be controlled so that only the requesting agent function unit 301A designated as the requesting agent by the first designation information performs the response processing for the first request, and after the second designation information is detected, the agent function unit designated as the new requesting agent by the second designation information is instructed to perform the response processing for the first request. The following describes the information processing related to a modified example corresponding to the second embodiment.
[0167] Specifically, the modified example will be described by defining the agent function unit designated as the recipient of the request according to the first designated information as agent function unit 301A (recipient agent function unit 301A), and the agent function units not designated as recipients according to the first designated information as agent function units 302A and 301B (non-recipient agent function unit X).
[0168] In a modified example, when the request destination detection unit 131A receives a voice request, it stores request content information indicating the content of the first request recognized from the voice request. For example, the request destination detection unit 131A stores the request content information indicating the content of the first request in the storage unit 120.
[0169] Furthermore, the request destination detection unit 131A causes the request destination agent function unit 301A to perform response processing for the first request. On the other hand, the request destination detection unit 131A does not cause the non-request destination agent function unit 302A to perform response processing for the first request. Also, the request destination detection unit 131B does not cause the non-request destination agent function unit 301B to perform response processing for the first request.
[0170] As a result, the response acquisition unit 132 acquires response information from the agent function unit 301A that indicates the result of the request destination agent function unit 301A performing response processing for the first request, in accordance with the control by the request destination detection unit 131A.
[0171] The presentation control unit 134 then controls the system so that the first response, which is a response based on the response information of the requesting agent function unit 301A, is presented (output) to the user.
[0172] Here, the request destination detection unit 131A detects whether, in a state where request content information is stored (in other words, the state after the first response has been presented to the user), a predetermined voice command including second designation information that designates any agent function unit other than the request destination agent function unit 301A as the new request destination has been uttered by the user. Specifically, the request destination detection unit 131A detects whether, in a state where request content information is stored (in other words, the state after the first response has been presented to the user), a predetermined voice command including second designation information that designates any of the non-request destination agent function units 302A and 301B as the new request destination has been uttered by the user.
[0173] When the request destination detection unit 131A detects a predetermined voice command that includes second designation information, it causes the new request destination agent function unit 301B to perform response processing for the first request based on the stored request content information.
[0174] As a result, the response acquisition unit 132 acquires response information from the new request destination agent function unit 301B that indicates the result of the new request destination agent function unit 301B performing response processing for the first request, in accordance with the control by the request destination detection unit 131B.
[0175] The presentation control unit 134 presents the new request response (second response), which is a response based on the response information of the new request agent function unit 301, to the user as a response to the first request.
[0176] [3. Processing Procedure] Next, Figures 7 and 8 will be used to describe the information processing procedure for the second embodiment and its modified version. Figure 7 illustrates the information processing procedure when response information is stored (second embodiment). On the other hand, Figure 8 illustrates the information processing procedure when request content information is stored (modified version of the second embodiment).
[0177] Furthermore, Figures 7 and 8 illustrate the information processing procedure using an example where the information processing device 100A, an in-vehicle device installed in vehicle VE1 (an example of vehicle VEx), is the main agent, and the user U1 of vehicle VE1 adds an information processing device 100B, which is a smartphone, as a sub-agent to system M11.
[0178] Furthermore, in the examples of Figures 7 and 8, the agent function unit 301A of the information processing device 100A is referred to as "Agent NA1" using its name. Similarly, the agent function unit 302A of the information processing device 100A is referred to as "Agent NA2" using its name. And the agent function unit 301B of the information processing device 100B is referred to as "Agent NA3" using its name.
[0179] Furthermore, in the examples of Figures 7 and 8, the first designated information is denoted as "First WW". Therefore, in the examples of Figures 7 and 8, it is assumed that three wake words, "NA1", "NA2", and "NA3", are pre-registered as the First WW. The First WW may be registered, for example, by user U1 for both information processing devices 100A and 100B.
[0180] Furthermore, in the examples of Figures 7 and 8, the second designated information is referred to as "second WW". Therefore, in the examples of Figures 7 and 8, it is assumed that three wake words, "NA1", "NA2", and "NA3", are pre-registered as the second WW. The second WW may be registered, for example, by user U1 for both information processing devices 100A and 100B.
[0181] [3-1. Processing Procedure (1)] First, let's explain Figure 7. Figure 7 is a flowchart (1) showing the information processing procedure according to the second embodiment.
[0182] As shown in Figure 7, the information processing according to the second embodiment (the pattern in which the response information is stored) is partially common to the information processing according to the first embodiment. This common part corresponds to steps S401 to S404 in Figure 7. Steps S401 to S404 are as explained in Figure 4, so their explanation in Figure 7 is omitted. The information processing according to the second embodiment shown in Figure 7 may be performed following step S404 in Figure 4.
[0183] At step S404, the response acquisition unit 132 has acquired response information from agent NA1 corresponding to agent NA1, which was designated as the recipient of the request by the first WW "NA1". The response acquisition unit 132 has also acquired response information from agent NA2 corresponding to agent NA2, which was not designated as the recipient of the request by the first WW "NA1". Furthermore, the response acquisition unit 132 has also acquired response information from agent NA2 corresponding to agent NA3, which was not designated as the recipient of the request by the first WW "NA1".
[0184] In this state, the presentation control unit 134 stores in the storage unit 120 the response information other than the response information of the requesting agent NA1 (the response information of the non-requesting agents NA2 and NA3, respectively) (step S705).
[0185] Then, the presentation control unit 134 outputs a request response, which is a response based on the response information of the requesting agent NA1 (step S706).
[0186] The request destination detection unit 131A detects whether a voice command including a second WW (word command) specifying any agent other than the request destination agent NA1 as the new request destination has been spoken by user U1 during a predetermined period (for example, about 10 seconds) after the output control in step S706 (step S707). Specifically, the request destination detection unit 131A detects whether a voice command including a second WW ("NA2" or "NA3") specifying any of the non-request destination agents NA2 and NA3 as the new request destination has been spoken by user U1.
[0187] If the request destination detection unit 131A fails to detect a voice command including the second WW within the predetermined period (step S707; No), it may terminate processing at this point and return to step S401.
[0188] On the other hand, if a voice command including a second WW is detected within a predetermined period of time (step S707; Yes), the presentation control unit 134 retrieves the response information of the new requesting agent designated as the new requesting agent for the first request VR1 by the second WW from the response information stored in the storage unit 120 (step S708).
[0189] Here, Figure 7 shows an example where the user inputs the voice command "Agent NA3, same question." In this example, the requester detection unit 131A can detect the voice command consisting of the second WW "NA3" and the phrase "same question" in step S707. As a result, the requester detection unit 131A can recognize Agent NA3 as the new requester for the first request VR1. The requester detection unit 131A may also notify the presentation control unit 134 that the requester for the first request VR1 has changed from Agent NA1 to NA3. The following processing steps will be explained using this example.
[0190] In that case, the presentation control unit 134, in step S708, obtains the response information of the new requesting agent NA3, which has been designated as a new requesting agent by the second WW, from the response information stored in the storage unit 120.
[0191] Then, the presentation control unit 134 outputs a new request response, which is a response based on the response information of the new request agent NA3, as a response to the first request VR1 (step S709).
[0192] For example, the voice generation unit 135 synthesizes speech in response to control by the presentation control unit 134 and outputs the synthesized speech from the speaker 12 on the information processing device 100A side.
[0193] For example, if the response information from the new request agent NA3 indicates an appropriate answer to the first request VR1, "Investigate tomorrow's weather," the voice generation unit 135 can output from the speaker 12 an audio message in which the new request agent's response, "Tomorrow's weather will be rain followed by cloudy," is read aloud in a male voice V3.
[0194] On the other hand, if the response information from the new requesting agent NA3 is not applicable to the first request VR1, "Investigate tomorrow's weather," the voice generation unit 135 can output from the speaker 12 an audio message in which a male voice V3 reads out "I cannot handle this" as the new requesting agent's response.
[0195] Up to this point, the information processing procedure according to the second embodiment has been explained using Figure 7. With this procedure, not only the requesting agent but also the non-requesting agent performs response processing in parallel, so that the response information of each agent is stored in advance. In this case, when a second WW is detected, the response of the agent corresponding to the second WW can be output without having the agent corresponding to the second WW perform response processing, thus shortening the response time.
[0196] Furthermore, according to the information processing procedure shown in Figure 7, even if user U1 is not satisfied with the response from agent NA1, they can obtain a response from the agent corresponding to the second WW simply by using the second WW without having to re-enter the voice request.
[0197] [3-2. Processing Procedure (2)] Next, Figure 8 will be explained. Figure 8 is a flowchart (2) showing the information processing procedure according to the second embodiment.
[0198] As shown in Figure 8, the information processing according to a modified example of the second embodiment (the pattern in which the request content information is stored) is partially common to the information processing according to the first embodiment. This common part corresponds to steps S401 and S402 in Figure 7. Steps S401 and S402 are as described in Figure 4, so their explanation in Figure 8 is omitted. The information processing according to the second embodiment shown in Figure 8 may be performed following step S402 in Figure 4.
[0199] First, when step S402 is performed, as shown in the example in Figure 8, the request destination detection unit 131A recognizes agent NA1 as the recipient of the first request VR1 by the first WW "NA1".
[0200] In this state, the request destination detection unit 131A stores request content information indicating the content of the first request VR1 in the storage unit 120 (step S803).
[0201] Furthermore, the request destination detection unit 131A causes the request destination agent NA1 to perform response processing for the first request VR1 (step S804). On the other hand, the request destination detection unit 131A does not cause the non-request destination agent NA2 to perform response processing for the first request VR1. Also, the request destination detection unit 131B does not cause the non-request destination agent NA3 to perform response processing for the first request VR1. The example in Figure 7 differs in that not only the request destination agent NA1, but also the non-request destination agents NA2 and NA3 performed response processing.
[0202] The response acquisition unit 132 acquires response information from agent NA1 that indicates the result of the requesting agent NA1 performing response processing for the first request VR1, in accordance with the control by the requesting agent detection unit 131A (step S805).
[0203] Then, the presentation control unit 134 outputs a request response, which is a response based on the response information of the requesting agent NA1 (step S806).
[0204] The request destination detection unit 131A detects whether a voice command including a second WW (word sequence) specifying any agent other than the request destination agent NA1 as the new request destination has been spoken by user U1 during a predetermined period (for example, about 10 seconds) after the output control in step S806 (step S807). Specifically, the request destination detection unit 131A detects whether a voice command including a second WW ("NA2" or "NA3") specifying any of the non-request destination agents NA2 and NA3 as the new request destination has been spoken by user U1.
[0205] If the request destination detection unit 131A fails to detect a voice command including the second WW within the predetermined period (step S807; No), it may terminate processing at this point and return to step S401.
[0206] On the other hand, if the request destination detection unit 131A detects a voice command including a second WW within a predetermined period (step S807; Yes), it causes the new request destination agent designated as the new request destination for the first request VR1 by the second WW to perform a response process for the first request VR1, based on the stored request content information (step S808).
[0207] Here, Figure 8 shows an example where the user inputs the voice command "Agent NA3, same question." In this example, the requester detection unit 131A can detect the voice command consisting of the second WW "NA3" and the phrase "same question" in step S807. As a result, the requester detection unit 131A can recognize Agent NA3 as a new requester for the first request VR1. The following processing steps will be explained using this example.
[0208] In that case, the request destination detection unit 131A causes the new request destination agent NA3, which has been designated as a new request destination by the second WW, to perform response processing for the first request VR1 in step S808.
[0209] The response acquisition unit 132 acquires response information from agent NA3 that indicates the result of the new request destination agent NA3 performing response processing for the first request VR1, in accordance with the control by the request destination detection unit 131A (step S809).
[0210] Then, the presentation control unit 134 outputs a request response, which is a response based on the response information of the new request agent NA3, as a response to the first request VR1 (step S810).
[0211] Up to this point, the information processing procedure according to the second embodiment has been explained using Figure 8. With this procedure, when a second WW is detected, only the agent corresponding to the second WW is made to perform response processing, thereby enabling effective resource allocation.
[0212] Furthermore, according to the information processing procedure shown in Figure 8, even if user U1 is not satisfied with the response from agent NA1, they can obtain a response from the agent corresponding to the second WW simply by using the second WW without having to re-enter the voice request.
[0213] <Other> [1. Hardware Configuration] Furthermore, the information processing devices 100 described above (for example, information processing devices 100A and 100B) are implemented by a computer 1000 having a configuration such as that shown in Figure 9. Figure 9 is a hardware configuration diagram showing an example of a computer that implements the functions of the information processing device 100. The computer 1000 has a CPU 1100, RAM 1200, ROM 1300, HDD 1400, communication interface (I / F) 1500, input / output interface (I / F) 1600, and media interface (I / F) 1700.
[0214] The CPU 1100 operates based on programs stored in the ROM 1300 or HDD 1400, and controls various parts. The ROM 1300 stores boot programs executed by the CPU 1100 when the computer 1000 starts up, as well as programs that depend on the computer 1000's hardware.
[0215] The HDD1400 stores programs executed by the CPU1100, as well as data used by such programs. The communication interface1500 receives data from other devices via a predetermined communication network and sends it to the CPU1100, and transmits data generated by the CPU1100 to other devices via the predetermined communication network.
[0216] The CPU 1100 controls output devices such as displays and input devices such as keyboards via the input / output interface 1600. The CPU 1100 acquires data from input devices via the input / output interface 1600. The CPU 1100 also outputs the generated data to output devices via the input / output interface 1600.
[0217] The media interface 1700 reads a program or data stored in the recording medium 1800 and provides it to the CPU 1100 via the RAM 1200. The CPU 1100 loads the program from the recording medium 1800 onto the RAM 1200 via the media interface 1700 and executes the loaded program. The recording medium 1800 is, for example, an optical recording medium such as a DVD (Digital Versatile Disc) or PD (Phase Change Rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.
[0218] For example, when computer 1000 functions as an information processing device 100, the CPU 1100 of computer 1000 implements the functions of the control unit 130 (e.g., control units 130A, 130B) by executing programs loaded onto RAM 1200. The CPU 1100 of computer 1000 reads and executes these programs from the recording medium 1800, but as another example, these programs may be obtained from other devices via a predetermined communication network.
[0219] [2. Other] Furthermore, among the processes described in each of the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically by known methods. In addition, the processing procedures, specific names, and information including various data and parameters shown in the above document and drawings can be changed at will unless otherwise specified. For example, the various information shown in each figure is not limited to the information shown.
[0220] Furthermore, the components of each illustrated device are functionally conceptual and do not necessarily need to be physically configured as shown. In other words, the specific forms of distribution and integration of each device are not limited to those shown, and all or part of them can be functionally or physically distributed and integrated in any unit according to various loads and usage conditions.
[0221] Furthermore, the above embodiments can be combined as appropriate, provided that the processing content is not contradictory.
[0222] <Summary> Although some embodiments of the present invention have been described in detail above with reference to the drawings, these are illustrative examples, and the present invention can be implemented in various other forms with modifications and improvements based on the knowledge of those skilled in the art, starting with the embodiments described in the disclosure section of the invention. [Explanation of symbols]
[0223] 1. Information Processing System 30 App Groups 100 Information Processing Devices 120 Storage section 130 Control Unit 131 Request Destination Detection Unit 132 Response Acquisition Unit 133 Judgment section 134 Display Control Unit 135 Voice generation unit 300 Agent Devices
Claims
1. An information processing device that presents information in response to a voice request from a user, A request destination detection unit detects from the voice a first designation information that specifies, among multiple agent function units, the agent function unit to which the user will request the first request, A presentation control unit that causes the user to see the first response obtained from the first agent function unit corresponding to the first designated information among the plurality of agent function units as a response to the first request, Equipped with, The request destination detection unit detects whether, after the first response is presented to the user, the user has uttered a predetermined voice command that includes second designation information designating any of the agent function units other than the first agent function unit as the new request destination. When the aforementioned presentation control unit detects the predetermined voice command, it causes the user to see the second response obtained from the second agent function unit corresponding to the second specified information as a response to the first request. An information processing device characterized by the following:
2. When the request destination detection unit detects the first designated information, it causes each of the plurality of agent function units to execute response processing for the first request. The information processing apparatus according to feature 1.
3. When multiple information processing devices are connected in a way that enables communication, The request destination detection unit detects whether the first designation information, which designates one of the agent function units—among the agent function units linked to the device itself and the agent function units linked to other information processing devices—as the agent function unit of the request destination, is included in the voice. If the detected first designation information indicates that the agent function unit linked to the other information processing device is designated as the request destination, the unit causes at least the agent function unit linked to the device itself to perform response processing for the first request. The information processing apparatus according to feature 2.
4. The presentation control unit, in response to the response processing performed by the plurality of agent function units, obtains responses to the first request from the plurality of agent function units and presents the first response from among the obtained responses to the user. The information processing apparatus according to claim 2 or 3, characterized by the above.
5. The presentation control unit stores, among the responses to the first request obtained from the plurality of agent function units, responses other than the first response without showing them to the user until the predetermined voice command is detected. The information processing apparatus according to feature 4.
6. The request recipient detection unit detects whether the predetermined voice command has been input while the other responses are stored, When the aforementioned presentation control unit detects the predetermined voice command, it causes the user to receive the response obtained from the second agent function unit from among the other responses stored, as the second response. The information processing apparatus according to feature 5.
7. When the request destination detection unit detects the first designated information, it causes only the first agent function unit to perform response processing for the first request, and stores request content information indicating the content of the first request. The information processing apparatus according to feature 1.
8. The presentation control unit, in response to the response processing performed by the first agent function unit, obtains a response to the first request from the first agent function unit and presents the obtained response to the user as the first response. The information processing apparatus according to feature 7.
9. The request destination detection unit detects whether a predetermined voice command has been input while the request content information is stored, and if the predetermined voice command is detected, it causes the second agent function unit to perform response processing for the first request based on the request content information. The presentation control unit, in response to the response processing performed by the second agent function unit, obtains a response to the first request from the second agent function unit and presents the obtained response to the user as the second response. The information processing apparatus according to claim 7 or 8.
10. The aforementioned predetermined voice command is a predetermined phrase that instructs the system to change the recipient and re-execute the response processing for the first request. An information processing apparatus according to any one of claims 1 to 9.
11. An information processing method performed by an information processing device that presents information in response to a voice request from a user, A request destination detection step involves detecting, from the voice, first designation information that specifies which agent function unit the user will request the first request from among multiple agent function units, A presentation control step which causes the user to see the first response obtained as a response to the first request from the first agent function unit corresponding to the first designated information among the plurality of agent function units, Includes, The request destination detection step detects whether, after the first response is presented to the user, the user has spoken a predetermined voice command that includes second designation information designating any of the agent function units other than the first agent function unit as the new request destination. The presentation control step, when the predetermined voice command is detected, causes the user to see the second response obtained from the second agent function unit corresponding to the second designated information as a response to the first request. An information processing method characterized by the following:
12. An information processing program executed by an information processing device that presents information in response to a voice request from a user, A request destination detection procedure that detects from the voice a first designation information that specifies, among multiple agent function units, the agent function unit to which the user intends to make the first request; A presentation control procedure that causes the user to see the first response obtained from the first agent function unit corresponding to the first designated information among the plurality of agent function units as a response to the first request, The information processing device is made to execute the above, The request destination detection procedure detects whether, after the first response is presented to the user, the user has uttered a predetermined voice command that includes second designation information specifying any of the agent function units other than the first agent function unit as the new request destination. The presentation control procedure, when the predetermined voice command is detected, causes the user to see the second response obtained from the second agent function unit corresponding to the second specified information as a response to the first request. An information processing program characterized by the following features.