Voice interaction method, device, vehicle and storage medium
By building a keyword function database and using the node keywords in voice commands to determine the target fork nodes and corresponding in-vehicle functions, the user experience degradation and safety risks caused by frequent voice interactions are solved, and the efficiency and safety of executing in-vehicle functions with a single voice command are achieved.
Patent Information
- Application Number
- CN202311872708.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-29
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2043-12-29
AI Technical Summary
Frequent voice interactions in vehicles lead to a decline in user experience and safety hazards, and existing voice interactions are inefficient.
By building a keyword function database and using the node keywords in the voice command to determine the target fork node and the corresponding vehicle function, the vehicle function can be executed with a single voice command, avoiding multiple interactions.
It improves the efficiency of voice interaction, enhances user experience and driving safety, and reduces the distraction problem caused by frequent interactions.
Smart Images

Figure CN118038865B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of intelligent interaction, and in particular, to a voice interaction method and device, a vehicle, and a storage medium. BACKGROUND
[0002] With the rapid development of vehicle technology, the types of functions carried by the vehicle body (i.e., vehicle-mounted functions) are becoming more and more intelligent, diverse, and complex. In order to improve the execution efficiency of vehicle-mounted functions, vehicles usually support voice interaction functions, and users can control the opening and closing of vehicle-mounted functions through voice interaction. Compared with conventional button control, the voice interaction method can save a lot of control time.
[0003] With more and more vehicle-mounted functions, in some application scenarios, in order to meet various use requirements, users may need to interact with multiple rounds of voice to control the opening and closing of a certain vehicle-mounted function. However, frequent voice interaction not only reduces the user experience, but also distracts the user's attention during driving, which poses a safety hazard. Therefore, the current voice interaction efficiency is poor. SUMMARY
[0004] The present application provides a voice interaction method, device, vehicle, and storage medium, which can improve the voice interaction efficiency. The technical solution is as follows:
[0005] In one aspect, a voice interaction method is provided, the method comprising:
[0006] receiving a first voice instruction;
[0007] identifying at least one first node keyword in the first voice instruction;
[0008] based on the at least one first node keyword, determining a keyword function tree corresponding to each first node keyword from at least one keyword function tree included in a keyword function database;
[0009] wherein each keyword function tree includes a plurality of branch nodes, each branch node corresponds to a node keyword and at least one vehicle-mounted function, and the node keywords corresponding to the plurality of branch nodes are different;
[0010] in the case where the keyword function trees corresponding to the at least one first node keyword are the same, based on the at least one first node keyword, determining a first target branch node and at least one vehicle-mounted function corresponding to the first target branch node from a first keyword function tree, the first keyword function tree being the keyword function tree corresponding to the at least one first node keyword;
[0011] executing the at least one vehicle-mounted function corresponding to the first target branch node.
[0012] Optionally, determining the first target fork node from the first keyword function tree based on the at least one first node keyword includes:
[0013] Based on the at least one first node keyword, determining a first bifurcation node corresponding to each first node keyword from the first keyword function tree to obtain at least one first bifurcation node;
[0014] In a case where the at least one first bifurcation node is located on the same path in the first keyword function tree, a first bifurcation node with the greatest depth among the at least one first bifurcation node is determined as the first target bifurcation node.
[0015] Optionally, the method further includes:
[0016] In the case where the keyword function trees corresponding to the at least one first node keyword are different, or the at least one first bifurcation node is located in a different path in the first keyword function tree, an alarm message is sent and the voice interaction is ended.
[0017] Optionally, after executing at least one vehicle-mounted function corresponding to the first target fork node, the method further includes:
[0018] receiving a second voice command;
[0019] Identifying at least one second node keyword in the second voice instruction;
[0020] Based on the at least one second node keyword, determining a keyword function tree corresponding to each second node keyword from the at least one keyword function tree;
[0021] In a case where the keyword function trees corresponding to the at least one second node keyword are the same, determining a second target fork node and at least one vehicle-mounted function corresponding to the second target fork node from the second keyword function tree based on the at least one second node keyword, the second keyword function tree being the keyword function tree corresponding to the at least one second node keyword;
[0022] If the first keyword function tree is the same as the second keyword function tree, and the second target fork node and the first target fork node are located on the same path, or the second target fork node and the first target fork node belong to the same parent node, then at least one vehicle-mounted function corresponding to the first target fork node is closed, and at least one vehicle-mounted function corresponding to the second target fork node is executed.
[0023] Optionally, the method further includes:
[0024] If the first keyword function tree is different from the second keyword function tree, or if the first keyword function tree is the same as the second keyword function tree, but the second target fork node and the first target fork node are located on different paths and the second target fork node and the first target fork node do not belong to the same parent node, determining whether there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node;
[0025] If there is no execution conflict between the at least one vehicle function corresponding to the second target fork node and the at least one vehicle function corresponding to the first target fork node, executing the at least one vehicle function corresponding to the second target fork node;
[0026] If there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node, the at least one vehicle function corresponding to the first target fork node is closed, and the at least one vehicle function corresponding to the second target fork node is executed.
[0027] Optionally, before receiving the first voice instruction, the method further includes:
[0028] Displaying a function setting interface, wherein the function setting interface is used to prompt the user to set the node keyword and the vehicle function corresponding to each forked node in the at least one keyword function tree;
[0029] The node keyword and the vehicle-mounted function corresponding to each bifurcated node in the at least one keyword function tree are obtained from the function setting interface.
[0030] In another aspect, a voice interaction device is provided, comprising:
[0031] A voice receiving module, configured to receive a first voice instruction;
[0032] A keyword recognition module, configured to recognize at least one first node keyword in the first voice instruction;
[0033] a function tree determining module, configured to determine, based on the at least one first node keyword, a keyword function tree corresponding to each first node keyword from at least one keyword function tree included in the keyword function database;
[0034] Each keyword function tree includes a plurality of bifurcated nodes, each bifurcated node corresponds to a node keyword and at least one vehicle function, and the node keywords corresponding to the plurality of bifurcated nodes are different;
[0035] a node function determination module configured to determine, based on the at least one first node keyword, a first target bifurcation node and at least one vehicle-mounted function corresponding to the first target bifurcation node from a first keyword function tree when the keyword function trees corresponding to the at least one first node keyword are the same, wherein the first keyword function tree is the keyword function tree corresponding to the at least one first node keyword;
[0036] A function execution module is used to execute at least one vehicle-mounted function corresponding to the first target fork node.
[0037] Optionally, the node function determination module is specifically configured to:
[0038] Based on the at least one first node keyword, determining a first bifurcation node corresponding to each first node keyword from the first keyword function tree to obtain at least one first bifurcation node;
[0039] In a case where the at least one first bifurcation node is located on the same path in the first keyword function tree, a first bifurcation node with the greatest depth among the at least one first bifurcation node is determined as the first target bifurcation node.
[0040] Optionally, the device further includes: an alarm module;
[0041] The alarm module is configured to send an alarm message and end the voice interaction when the keyword function trees corresponding to the at least one first node keyword are different, or when the at least one first bifurcation node is located on a different path in the first keyword function tree.
[0042] Optionally, the voice receiving module is further configured to receive a second voice instruction;
[0043] The keyword recognition module is further configured to recognize at least one second node keyword in the second voice instruction;
[0044] The function tree determination module is further configured to determine, based on the at least one second node keyword, a keyword function tree corresponding to each second node keyword from the at least one keyword function tree;
[0045] The node function determination module is further configured to determine, based on the at least one second node keyword, a second target fork node and at least one vehicle-mounted function corresponding to the second target fork node from a second keyword function tree when the keyword function trees corresponding to the at least one second node keyword are the same, wherein the second keyword function tree is the keyword function tree corresponding to the at least one second node keyword;
[0046] The function execution module is also used to close at least one vehicle-mounted function corresponding to the first target fork node and execute at least one vehicle-mounted function corresponding to the second target fork node if the first keyword function tree is the same as the second keyword function tree, and the second target fork node and the first target fork node are located on the same path, or the second target fork node and the first target fork node belong to the same parent node.
[0047] Optionally, the function execution module is specifically configured to:
[0048] If the first keyword function tree is different from the second keyword function tree, or if the first keyword function tree is the same as the second keyword function tree, but the second target fork node and the first target fork node are located on different paths and the second target fork node and the first target fork node do not belong to the same parent node, determining whether there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node;
[0049] If there is no execution conflict between the at least one vehicle function corresponding to the second target fork node and the at least one vehicle function corresponding to the first target fork node, executing the at least one vehicle function corresponding to the second target fork node;
[0050] If there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node, the at least one vehicle function corresponding to the first target fork node is closed, and the at least one vehicle function corresponding to the second target fork node is executed.
[0051] Optionally, the device further includes a function setting module, wherein the function setting module is configured to:
[0052] Displaying a function setting interface, wherein the function setting interface is used to prompt the user to set the node keyword and the vehicle function corresponding to each forked node in the at least one keyword function tree;
[0053] The node keyword and the vehicle-mounted function corresponding to each bifurcated node in the at least one keyword function tree are obtained from the function setting interface.
[0054] On the other hand, a vehicle is provided, comprising a memory and a processor, wherein the memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory to implement the steps of the above-mentioned voice interaction method.
[0055] On the other hand, a computer-readable storage medium is provided, in which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned voice interaction method are implemented.
[0056] On the other hand, a computer program product comprising instructions is provided, which, when executed on a computer, causes the computer to execute the steps of the above-described voice interaction method.
[0057] The technical solution provided by this application can at least bring the following beneficial effects:
[0058] Since each keyword function tree in the keyword function database includes multiple forked nodes, each forked node corresponds to a node keyword and at least one vehicle-mounted function. Therefore, when a first voice command is received, based on the first node keyword in the first voice command, the first target forked node can be determined from the keyword function tree included in the keyword function database, and then the vehicle-mounted function corresponding to the first target forked node is executed, so as to achieve the effect of executing the vehicle-mounted function through a single voice without the need for frequent voice interaction, so as to improve the efficiency of voice interaction, enhance the user experience and driving safety. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0060] Figure 1 This is a schematic diagram of an implementation environment provided by an embodiment of the present application;
[0061] Figure 2 This is a flow chart of a voice interaction method provided by an embodiment of the present application;
[0062] Figure 3 This is a schematic diagram of a keyword function tree provided in an embodiment of the present application;
[0063] Figure 4 This is a structural diagram of a voice interaction device provided in an embodiment of the present application;
[0064] Figure 5 It is a structural schematic diagram of a vehicle provided in an embodiment of the present application. DETAILED DESCRIPTION
[0065] In order to make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0066] Before explaining in detail the voice interaction method provided in the embodiment of the present application, the implementation environment involved in the embodiment of the present application is first introduced.
[0067] Please refer to Figure 1 , Figure 1 This is a schematic diagram illustrating an implementation environment according to an exemplary embodiment. The implementation environment includes a voice interaction terminal 101, a processor 102, and at least one functional module 103. Processor 102 can communicate with voice interaction terminal 101 and functional module 103, respectively. This communication connection can be a wired or wireless connection, which is not limited in this embodiment of the application.
[0068] The voice interaction terminal 101 is used to implement voice interaction with the user. For example, the voice interaction terminal 101 may include a microphone to receive voice commands.
[0069] In some embodiments, the voice interaction terminal 101 may further include a speaker to enable the sending of function execution results and alarm information through the speaker.
[0070] The processor 102 is configured to execute the corresponding in-vehicle function based on the voice command through the function module 103. For example, the processor 102 may include a keyword function database, and determine the in-vehicle function corresponding to the voice command through the keyword function database. For example, based on the keyword function database, the processor 102 determines the target bifurcation node corresponding to the node keyword in the voice command, and then determines the in-vehicle function corresponding to the target bifurcation node as the in-vehicle function corresponding to the voice command, and then executes the in-vehicle function based on the function module 103 corresponding to the in-vehicle function.
[0071] The processor 102 may be a general-purpose CPU (Central Processing Unit), a Network Processor (NP), a microprocessor, or one or more integrated circuits for implementing the solution of the present application, such as an ASIC (Application-Specific Integrated Circuit), a PLD (Programmable Logic Device), or a combination thereof. The PLD may be a CPLD (Complex Programmable Logic Device), an FPGA (Field-Programmable Gate Array), a GAL (Generic Array Logic), or any combination thereof.
[0072] Functional module 103 is used to implement corresponding functions. In different application scenarios of the embodiments of the present application, the functional module 103 can be a functional module on different devices. For example, when the embodiments of the present application are applied to vehicle voice interaction, the functional module 103 can be an execution module for the vehicle's in-vehicle functions, so that different in-vehicle functions can be implemented through the execution module.
[0073] The functional module 103 may include multiple modules, so that different functions can be implemented through different functional modules. Still taking the above-mentioned application in vehicle voice interaction as an example, the functional module 103 may include the vehicle's air conditioning fan, which is used to turn the vehicle's air conditioning on and off; the functional module 103 may also include the vehicle's wiper controller, which is used to turn the wipers on and off.
[0074] Those skilled in the art should understand that the above-mentioned voice interaction terminal 101, processor 102 and functional module 103 are only examples. Other existing or future voice interaction terminals, processors or functional modules that are applicable to the embodiments of the present application should also be included in the scope of protection of the embodiments of the present application and are included here by reference.
[0075] It should be noted that the application scenarios and implementation environments described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application. Ordinary technicians in this field can know that with the emergence of new application scenarios and the evolution of the implementation environment, the technical solutions provided by the embodiments of the present application are also applicable to similar technical problems.
[0076] Next, the voice interaction method provided in the embodiment of the present application is explained in detail.
[0077] Figure 2 This is a flow chart of a voice interaction method provided by an embodiment of the present application, which is applied to the above-mentioned processor 102. Figure 2 , the method includes the following steps.
[0078] Step 201: Receive a first voice command.
[0079] The first voice command may be issued by the user. In some embodiments, the processor may be in a normally-on state to receive the first voice command issued by the user in real time. In other embodiments, in order to reduce the energy consumption of the processor and taking into account that the user only has the voice intention to activate a specific function in a specific scenario, the working scenario for receiving the voice command issued by the user may be limited so that the processor is in a dormant state under non-interactive working conditions, that is, it does not accept the voice command issued by the user, and only receives the voice command issued by the user when entering the interactive working condition.
[0080] For example, the processor can only monitor the instruction to enter the interactive working state in the sleep state, and enter the voice interactive working state when receiving the user's start instruction (i.e., the instruction to enter the interactive working state), and then start to receive the voice instructions issued by the user.
[0081] The activation instruction can be a button instruction or a voice instruction, such as entering the voice interaction working condition by pressing a specific button, or entering the voice interaction working condition by issuing a voice containing specific keywords (such as "voice assistant", "start voice interaction", etc.). The specific activation method of the voice interaction working condition can be selected based on actual usage needs, and the embodiments of the present application do not limit this.
[0082] In some embodiments, if the processor continues to not receive the first voice command issued by the user after receiving the power-on command, and the duration of not receiving the first voice command is greater than or equal to a duration threshold, the processor re-enters the sleep state. The duration threshold can be determined based on actual usage requirements, such as 3 seconds, 5 seconds, etc.
[0083] Step 202: Identify at least one first node keyword in the first voice instruction.
[0084] In some embodiments, the first voice instruction can be converted into a text instruction, and then based on text analysis, the text instruction can be semantically segmented and feature extracted to determine at least one first node keyword in the voice instruction; in other embodiments, at least one first node keyword in the first voice instruction can also be determined directly based on semantic analysis and feature extraction of the voice.
[0085] For example, based on feature extraction, voice feature information in the first voice instruction can be obtained, and then based on a feature matching model, node keywords matched by the voice feature information can be determined, thereby obtaining at least one first node keyword in the first voice instruction.
[0086] Step 203: Based on the at least one first node keyword, determine a keyword function tree corresponding to each first node keyword from at least one keyword function tree included in the keyword function database.
[0087] Each keyword function tree includes a plurality of branch nodes, each branch node corresponds to a node keyword and at least one vehicle-mounted function, and the node keywords corresponding to the plurality of branch nodes are different.
[0088] In some embodiments, since the node keywords corresponding to the branch nodes of each keyword function tree are different, the keyword function tree corresponding to each first node keyword can be determined by traversing the node keywords corresponding to each branch node in the keyword function tree, so as to obtain the keyword function tree corresponding to each first node keyword.
[0089] The keyword function tree can be a tree structure as shown in Figure 3 The letters in the figure can be understood as different node keywords, and the numbers in the figure can be understood as different combinations of vehicle-mounted functions, each combination of vehicle-mounted functions including at least one vehicle-mounted function. Then, by traversing all branch nodes in the keyword function tree, it can be determined whether the keyword function tree is the keyword function tree corresponding to a first node keyword.
[0090] For example, still taking the keyword function tree shown in Figure 3 As an example, still taking the keyword function tree shown in
[0091] In some embodiments, for any first node keyword, in order to improve the determination efficiency of the keyword function tree corresponding to the first node keyword, a plurality of keyword function trees can be traversed at the same time, and the traversal can be ended when a branch node corresponding to the first node keyword is found in a keyword function tree.
[0092] In some embodiments, after determining the keyword function tree corresponding to each first node keyword through the above steps, if the keyword function trees corresponding to the at least one first node keyword are the same, the subsequent steps are executed; if the keyword function trees corresponding to the at least one first node keyword are different, it indicates that the function intent indicated by the first voice instruction is unclear, and the vehicle-mounted function cannot be executed, so the alarm information needs to be sent and the voice interaction is ended.
[0093] It should be noted that, in the case where the first voice instruction includes a first node keyword, it can be considered that the keyword function trees corresponding to the at least one first node keyword are the same.
[0094] Step 204: When the keyword function trees corresponding to the at least one first node keyword are the same, based on the at least one first node keyword, determine the first target fork node and at least one vehicle-mounted function corresponding to the first target fork node from the first keyword function tree, and the first keyword function tree is the keyword function tree corresponding to the at least one first node keyword.
[0095] In some embodiments, when the first voice instruction includes only one first-node keyword, the bifurcation node corresponding to the first-node keyword in the first keyword function tree can be directly determined as the first target bifurcation node.
[0096] In some embodiments, the method for determining the first target fork node based on at least one first node keyword in the first voice instruction can be flexibly set in combination with specific usage requirements when the first voice instruction includes multiple first node keywords.
[0097] For example, if there are multiple first-node keywords in the first voice instruction, the first-node keyword that appears last can be determined as the first target node keyword based on the order in which the multiple first-node keywords appear in the first voice instruction, and then based on the first keyword function tree, the fork node corresponding to the first target node keyword can be determined as the first target fork node.
[0098] As another example, a priority can also be set for each node keyword. When there are multiple first node keywords in the first voice instruction, the node keyword with the highest priority is determined as the first target node keyword, and then based on the first keyword function tree, the fork node corresponding to the first target node keyword is determined as the first target fork node.
[0099] In some embodiments, based on the at least one first node keyword, the first fork node corresponding to each first node keyword can be determined from the first keyword function tree to obtain at least one first fork node; when the at least one first fork node is located on the same path in the first keyword function tree, the first fork node with the largest depth among the at least one first fork node is determined as the first target fork node.
[0100] In some embodiments, the logical relationship between the vehicle functions corresponding to different forked nodes can be expressed by the tree structure of the keyword function tree, such as the vehicle function corresponding to the child forked node is the subordinate function (or more detailed function) of the vehicle function corresponding to the parent forked node.
[0101] For example, the vehicle function corresponding to the parent node is to turn off the air conditioning, the vehicle function corresponding to the child node is to turn off the air conditioning and open the driver's window 1 / 4, the vehicle function corresponding to a child node of the child node is to turn off the air conditioning and open all windows 1 / 3, and the vehicle function corresponding to another child node of the child node is to turn off the air conditioning, open the driver's window 1 / 4, and play music.
[0102] Therefore, when the logical relationship between the vehicle functions corresponding to the forked nodes is expressed through the tree structure of the keyword function tree, when multiple first forked nodes are forked nodes of different depths on the same path in the first keyword function tree, since the first forked node with the largest depth usually carries richer information (the corresponding vehicle functions are more numerous and more detailed), the first forked node with the largest depth can be determined as the first target forked node.
[0103] In other embodiments, based on actual usage requirements, the first fork node with the smallest depth among the at least one first fork node may be determined as the first target fork node.
[0104] In some embodiments, when the keyword function trees corresponding to the at least one first node keyword are different, or the at least one first bifurcation node is located on a different path in the first keyword function tree, an alarm message is sent and the voice interaction is ended.
[0105] It should be noted that when the keyword function trees corresponding to multiple first-node keywords in the first voice command are different, or when the corresponding keyword function trees are the same but the forked nodes corresponding to the multiple node keywords are located on different paths in the keyword function tree, since the vehicle functions corresponding to the multiple forked nodes are usually not logically related at this time, it can be considered that the function execution intention corresponding to the voice command cannot be determined. In order to prevent the incorrect vehicle function from being executed due to misjudgment of the function execution intention, thereby affecting the user's interactive experience, no vehicle function can be executed at this time, an alarm message can be sent to prompt that the current voice command cannot be executed, and the voice interaction can be ended.
[0106] The alarm message can be set according to actual usage needs, such as "I didn't hear clearly, please say it again" or "Cannot execute at the moment, please resend the voice message".
[0107] In some embodiments, combined with the different ways in which the processor receives the first voice command, if the processor will only enter the voice interaction mode when it receives the user's start command, the voice interaction may not be terminated after sending the alarm message, and the voice command issued by the user may be continuously monitored until no voice command is received within the time threshold and then the processor enters the sleep state.
[0108] Step 205: Execute at least one vehicle-mounted function corresponding to the first target fork node.
[0109] In some embodiments, taking into account the rich scenarios for executing in-vehicle functions, in order to avoid execution conflicts between in-vehicle functions, when executing the in-vehicle function corresponding to the first target fork node, it is also necessary to determine whether there is an execution conflict between the in-vehicle function corresponding to the first target fork node and the in-vehicle function currently being executed by the vehicle. In the event that at least one in-vehicle function corresponding to the first target fork node conflicts with the in-vehicle function currently being executed by the vehicle, since the in-vehicle function corresponding to the first target fork node is the functional intent of the current real-time voice command, it is necessary to close the currently executed in-vehicle function and execute the in-vehicle function corresponding to the first target fork node.
[0110] In some embodiments, a second voice instruction can also be received; at least one second node keyword in the second voice instruction is identified; based on the at least one second node keyword, the keyword function tree corresponding to each second node keyword is determined from the at least one keyword function tree; when the keyword function trees corresponding to the at least one second node keyword are the same, based on the at least one second node keyword, the second target fork node and at least one vehicle-mounted function corresponding to the second target fork node are determined from the second keyword function tree, and the second keyword function tree is the keyword function tree corresponding to the at least one second node keyword; if the first keyword function tree is the same as the second keyword function tree, and the second target fork node and the first target fork node are on the same path, or the second target fork node and the first target fork node belong to the same parent node, then the at least one vehicle-mounted function corresponding to the first target fork node is closed, and the at least one vehicle-mounted function corresponding to the second target fork node is executed.
[0111] It should be noted that, the method for identifying at least one second-node keyword in the second voice instruction can refer to the method for identifying at least one first-node keyword in the first voice instruction at the above step 202; similarly, the method for determining the keyword function tree corresponding to each second-node keyword based on the second-node keyword can refer to the method for determining the keyword function tree corresponding to the first-node keyword based on the first-node keyword at the above step 203; the method for determining the second target fork node from the second keyword function tree based on the second node keyword can also refer to the corresponding description at the above step 204, which will not be repeated here.
[0112] In some embodiments, for the second node keyword in the second voice command, it is still necessary to ensure that the keyword function tree corresponding to all second node keywords in the second voice command is the same keyword function tree, and that the bifurcation nodes corresponding to all second node keywords are located on the same path in the second keyword function tree. If the keyword function tree corresponding to a second node keyword is a different keyword function tree, or the bifurcation node corresponding to a second node keyword is located on a different path in the keyword function tree, it indicates that the functional intent indicated by the current second voice command is unclear and the in-vehicle function cannot be executed, and an alarm message needs to be sent and the voice interaction ends.
[0113] It should be noted that when the second target fork node and the first target fork node are located on the same path or belong to the same parent node, since the second target fork node and the first target fork node have a strong logical correlation in the keyword function tree at this time, it can be considered that the functional intention of the second voice instruction is: to switch the in-vehicle function corresponding to the currently executed first target fork node to the in-vehicle function corresponding to the second target fork node, that is: to turn off the in-vehicle function corresponding to the first target fork node, and execute the in-vehicle function corresponding to the second target fork node.
[0114] In some embodiments, the at least one vehicle function corresponding to the first target fork node may also be a function activated in a conventional manner, such as a function activated based on a key command or a conventional voice command. For example, the processor may determine whether the vehicle function currently activated by the vehicle belongs to the vehicle function corresponding to the fork node in the keyword function tree by traversing the keyword function tree based on the vehicle function currently activated. If the vehicle function currently activated by the vehicle is at least one vehicle function corresponding to the third fork node in the keyword function tree, then the third fork node may be considered to be the first target fork node mentioned above. Furthermore, if the third fork node and the second target fork node are located on the same path of the same keyword function tree or belong to the same parent node, then the at least one vehicle function corresponding to the third fork node may be closed, and the at least one vehicle function corresponding to the second target fork node may be executed.
[0115] For example, the vehicle's currently turned on in-vehicle functions include: A1, A2, A3, A4, A5 and A6. By traversing the keyword database to determine that a fork node in a keyword function tree corresponds to the in-vehicle functions A3 and A6, the fork node can be determined as the third fork node. At this time, if a second voice command is received, and the second target fork node determined based on the second voice command and the third fork node are located on the same path of the same keyword function tree, or belong to the same parent node, then at least one in-vehicle function corresponding to the third fork node can be turned off (that is, the in-vehicle functions A3 and A6 are turned off), and at least one in-vehicle function corresponding to the second target fork node can be executed.
[0116] In some embodiments, if the first keyword function tree is different from the second keyword function tree, or if the first keyword function tree is the same as the second keyword function tree, but the second target fork node and the first target fork node are located on different paths and the second target fork node and the first target fork node do not belong to the same parent node, then determine whether there is an execution conflict between at least one vehicle-mounted function corresponding to the second target fork node and at least one vehicle-mounted function corresponding to the first target fork node; if there is no execution conflict between at least one vehicle-mounted function corresponding to the second target fork node and at least one vehicle-mounted function corresponding to the first target fork node, then execute at least one vehicle-mounted function corresponding to the second target fork node; if there is an execution conflict between at least one vehicle-mounted function corresponding to the second target fork node and at least one vehicle-mounted function corresponding to the first target fork node, then close at least one vehicle-mounted function corresponding to the first target fork node, and execute at least one vehicle-mounted function corresponding to the second target fork node.
[0117] It should be noted that when the first keyword function tree is different from the second keyword function tree, or the first keyword function tree is the same as the second keyword function tree, but the second target fork node and the first target fork node are neither located on the same path nor belong to the same parent node, since the second target fork node and the first target fork node usually have no logical correlation or a weak logical correlation at this time, it can be considered that the functional intention of the second voice instruction is to execute the vehicle-mounted function corresponding to the second target fork node.
[0118] At this time, in order to avoid execution conflicts of in-vehicle functions, it is necessary to further determine whether the in-vehicle function corresponding to the second target fork node conflicts with the in-vehicle function corresponding to the first target fork node. If there is no execution conflict, the in-vehicle function corresponding to the second target fork node can be directly executed; if there is an execution conflict, since the in-vehicle function corresponding to the second target fork node is the functional intent of the current real-time voice command, that is, the latest functional intent, it is necessary to close the executed in-vehicle function and execute the in-vehicle function corresponding to the second target fork node.
[0119] In some embodiments, if there are multiple vehicle-mounted functions corresponding to the first target fork node, and there is an execution conflict between a certain vehicle-mounted function among the multiple vehicle-mounted functions and the vehicle-mounted function corresponding to the second target fork node, only the certain vehicle-mounted function can be turned off, or all vehicle-mounted functions corresponding to the first target fork node can be turned off. The specific setting can be flexibly made based on actual usage requirements.
[0120] In some embodiments, when executing at least one vehicle-mounted function corresponding to the second target fork node, it is also necessary to determine whether the at least one vehicle-mounted function corresponding to the second target fork node conflicts with all vehicle-mounted functions currently executed by the vehicle. If a vehicle-mounted function corresponding to the second target fork node conflicts with a vehicle-mounted function currently executed by the vehicle, the vehicle-mounted function currently executed by the vehicle is turned off, and the vehicle-mounted function corresponding to the second target fork node is turned on.
[0121] In some embodiments, a function setting interface can be displayed, which is used to prompt the user to set the node keywords and vehicle functions corresponding to each forked node in the at least one keyword function tree; and obtain the node keywords and vehicle functions corresponding to each forked node in the at least one keyword function tree from the function setting interface.
[0122] It should be noted that in order to ensure that the in-vehicle functions corresponding to the forked node can be accurately executed, when there are multiple in-vehicle functions corresponding to a forked node, it is necessary to ensure that there is no execution conflict between the multiple in-vehicle functions corresponding to the forked node.
[0123] Therefore, in some embodiments, when the user sets the in-vehicle function corresponding to each fork node in the keyword function tree, conflict detection can be performed on the in-vehicle functions corresponding to the fork node. If there is an execution conflict between multiple in-vehicle functions corresponding to a fork node currently set by the user, an alarm message is sent to prompt the user to modify the in-vehicle function corresponding to the fork node with the execution conflict.
[0124] Similarly, in some embodiments, in order to avoid the repeated use of node keywords that lead to the inability to accurately identify the functional execution intention of the voice command, when the user sets the node keyword corresponding to each fork node in the keyword function tree, the node keyword can be detected for conflict. If the node keyword currently set by the user is repeated with any node keyword in the keyword function tree, an alarm message is sent to prompt the user to modify the node keyword.
[0125] In some embodiments, the user can also modify the node keywords and vehicle-mounted functions corresponding to any forked node in the keyword function tree through the function setting interface, such as deleting a forked node in the keyword function tree, moving a forked node in the keyword function tree, modifying the node keywords and / or vehicle-mounted functions corresponding to a forked node in the keyword function tree, etc.
[0126] In an embodiment of the present application, upon receiving a first voice command, the first node keyword in the first voice command is identified, and based on the first node keyword, the first target fork node and the vehicle function corresponding to the first target fork node are determined from the keyword function tree included in the keyword function database, and then the vehicle function is executed. Therefore, when executing the vehicle function, the function can be executed based on a single voice interaction without the need for multiple voice interactions, thereby improving the voice interaction efficiency when executing the vehicle function, improving the user experience and driving safety. In addition, considering the randomness of voice commands, in order to ensure that the corresponding vehicle function can be accurately executed based on the first voice command, when there are multiple first node keywords in the first voice command, if the multiple first node keywords correspond to different keyword function trees, or the first fork nodes corresponding to the multiple first node keywords are located on different paths of the keyword function tree, since there is no logical relationship between the multiple first node keywords, the first target fork node is no longer determined, thereby avoiding the erroneous execution of the vehicle function, which may lead to a decline in the user experience, and further improving the user experience.
[0127] Furthermore, considering that the user's function execution intention may change in different usage scenarios, and the voice command (i.e., the second voice command) may be sent again, in an embodiment of the present application, when the second voice command is received, the second target fork node and the vehicle-mounted function corresponding to the second target fork node can be determined from the keyword function tree included in the keyword function database through the second node keyword in the second voice command, and the vehicle-mounted function corresponding to the second target fork node can be executed. Taking into account that there may be a certain logical relationship between the second voice command and the first voice command, and that there may be an execution conflict relationship between the vehicle function corresponding to the functional execution intention of the second voice command and the first voice command, the position relationship between the second target fork node and the first target fork node in the keyword function tree is used to determine whether there is a logical relationship between the first target fork node and the second target fork node, and based on the conflict analysis, it is determined whether there is an execution conflict between the vehicle function corresponding to the first target fork node and the vehicle function corresponding to the second target fork node. Based on the logical relationship between the first target fork node and the second target fork node and the execution conflict relationship of the corresponding vehicle functions, the execution method of the vehicle function corresponding to the second target fork node is determined, so that when executing the functional intention corresponding to the voice command, the impact of changes in the voice interaction environment on the execution of the vehicle function is fully considered, thereby further improving the voice interaction efficiency when executing the vehicle function and the user experience when executing the vehicle function.
[0128] Figure 4This is a structural diagram of a voice interaction device provided by an embodiment of the present application. The voice interaction device can be implemented by software, hardware, or a combination of both to become part or all of a voice interaction device. The voice interaction device can be Figure 1 Refer to the processor shown. Figure 4 The device includes: a speech receiving module 401, a keyword recognition module 402, a function tree determination module 403, a node function determination module 404 and a function execution module 405.
[0129] The voice receiving module 401 is configured to receive a first voice instruction;
[0130] A keyword recognition module 402 is configured to recognize at least one first node keyword in the first voice instruction;
[0131] A function tree determining module 403 is configured to determine, based on the at least one first node keyword, a keyword function tree corresponding to each first node keyword from at least one keyword function tree included in the keyword function database;
[0132] Each keyword function tree includes a plurality of bifurcated nodes, each bifurcated node corresponds to a node keyword and at least one vehicle function, and the node keywords corresponding to the plurality of bifurcated nodes are different;
[0133] A node function determination module 404 is configured to determine, based on the at least one first node keyword, a first target fork node and at least one vehicle-mounted function corresponding to the first target fork node from a first keyword function tree, when the keyword function trees corresponding to the at least one first node keyword are the same; the first keyword function tree being the keyword function tree corresponding to the at least one first node keyword;
[0134] The function execution module 405 is configured to execute at least one vehicle-mounted function corresponding to the first target fork node.
[0135] Optionally, the node function determination module 404 is specifically configured to:
[0136] Based on the at least one first node keyword, determining a first bifurcation node corresponding to each first node keyword from the first keyword function tree to obtain at least one first bifurcation node;
[0137] In a case where the at least one first fork node is located on the same path in the first keyword function tree, a first fork node with the largest depth among the at least one first fork node is determined as the first target fork node.
[0138] Optionally, the apparatus further includes: an alarm module 406;
[0139] The alarm module 406 is configured to send an alarm message and end the voice interaction when the keyword function trees corresponding to the at least one first node keyword are different, or the at least one first bifurcation node is located on a different path in the first keyword function tree.
[0140] Optionally, the voice receiving module 401 is further configured to receive a second voice instruction;
[0141] The keyword recognition module 402 is further configured to recognize at least one second node keyword in the second voice instruction;
[0142] The function tree determination module 403 is further configured to determine, based on the at least one second node keyword, a keyword function tree corresponding to each second node keyword from the at least one keyword function tree;
[0143] The node function determination module 404 is further configured to determine, based on the at least one second node keyword, a second target fork node and at least one vehicle-mounted function corresponding to the second target fork node from the second keyword function tree, when the keyword function trees corresponding to the at least one second node keyword are the same, the second keyword function tree being the keyword function tree corresponding to the at least one second node keyword;
[0144] The function execution module 405 is also used to close at least one vehicle-mounted function corresponding to the first target fork node and execute at least one vehicle-mounted function corresponding to the second target fork node if the first keyword function tree is the same as the second keyword function tree, and the second target fork node and the first target fork node are located on the same path, or the second target fork node and the first target fork node belong to the same parent node.
[0145] Optionally, the function execution module 405 is specifically configured to:
[0146] If the first keyword function tree is different from the second keyword function tree, or if the first keyword function tree is the same as the second keyword function tree, but the second target fork node and the first target fork node are located on different paths and the second target fork node and the first target fork node do not belong to the same parent node, then determining whether there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node;
[0147] If there is no execution conflict between the at least one vehicle function corresponding to the second target fork node and the at least one vehicle function corresponding to the first target fork node, then executing the at least one vehicle function corresponding to the second target fork node;
[0148] If there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node, the at least one vehicle function corresponding to the first target fork node is closed and the at least one vehicle function corresponding to the second target fork node is executed.
[0149] Optionally, the device further includes a function setting module 407, wherein the function setting module 407 is configured to:
[0150] Displaying a function setting interface, the function setting interface is used to prompt the user to set the node keyword and the vehicle function corresponding to each forked node in the at least one keyword function tree;
[0151] The node keyword and the vehicle-mounted function corresponding to each bifurcated node in the at least one keyword function tree are obtained from the function setting interface.
[0152] In an embodiment of the present application, upon receiving a first voice command, the first node keyword in the first voice command is identified, and based on the first node keyword, the first target fork node and the vehicle function corresponding to the first target fork node are determined from the keyword function tree included in the keyword function database, and then the vehicle function is executed. Therefore, when executing the vehicle function, the function can be executed based on a single voice interaction without the need for multiple voice interactions, thereby improving the voice interaction efficiency when executing the vehicle function, improving the user experience and driving safety. In addition, considering the randomness of voice commands, in order to ensure that the corresponding vehicle function can be accurately executed based on the first voice command, when there are multiple first node keywords in the first voice command, if the multiple first node keywords correspond to different keyword function trees, or the first fork nodes corresponding to the multiple first node keywords are located on different paths of the keyword function tree, since there is no logical relationship between the multiple first node keywords, the first target fork node is no longer determined, thereby avoiding the erroneous execution of the vehicle function, which may lead to a decline in the user experience, and further improving the user experience.
[0153] Furthermore, considering that the user's function execution intention may change in different usage scenarios, and the voice command (i.e., the second voice command) may be sent again, in an embodiment of the present application, when the second voice command is received, the second target fork node and the vehicle-mounted function corresponding to the second target fork node can be determined from the keyword function tree included in the keyword function database through the second node keyword in the second voice command, and the vehicle-mounted function corresponding to the second target fork node can be executed. Taking into account that there may be a certain logical relationship between the second voice command and the first voice command, and that there may be an execution conflict relationship between the vehicle function corresponding to the functional execution intention of the second voice command and the first voice command, the position relationship between the second target fork node and the first target fork node in the keyword function tree is used to determine whether there is a logical relationship between the first target fork node and the second target fork node, and based on the conflict analysis, it is determined whether there is an execution conflict between the vehicle function corresponding to the first target fork node and the vehicle function corresponding to the second target fork node. Based on the logical relationship between the first target fork node and the second target fork node and the execution conflict relationship of the corresponding vehicle functions, the execution method of the vehicle function corresponding to the second target fork node is determined, so that when executing the functional intention corresponding to the voice command, the impact of changes in the voice interaction environment on the execution of the vehicle function is fully considered, thereby further improving the voice interaction efficiency when executing the vehicle function and the user experience when executing the vehicle function.
[0154] It should be noted that the voice interaction device provided in the above embodiment only uses the division of the above functional modules as an example to illustrate the implementation of voice interaction. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the voice interaction device provided in the above embodiment and the voice interaction method embodiment are based on the same concept. The specific implementation process is detailed in the method embodiment and will not be repeated here.
[0155] Figure 5 It is a structural block diagram of a vehicle 500 provided in an embodiment of the present application.
[0156] Typically, the vehicle 500 includes a processor 501 and a memory 502 .
[0157] The processor 501 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 501 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field Programmable Gate Array), or PLA (Programmable Logic Array). The processor 501 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 501 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 501 may also include an AI (Artificial Intelligence) processor, which is used to process computing operations related to machine learning.
[0158] The memory 502 may include one or more computer-readable storage media, which may be non-transitory. The memory 502 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices and flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 502 is used to store at least one instruction, which is executed by the processor 501 to implement the voice interaction method provided in the method embodiment of the present application.
[0159] In some embodiments, vehicle 500 may also optionally include a peripheral device interface 503 and at least one peripheral device. The processor 501, memory 502, and peripheral device interface 503 may be connected via a bus or signal lines. Each peripheral device may be connected to peripheral device interface 503 via a bus, signal lines, or circuit boards. Specifically, the peripheral device may include at least one of a radio frequency circuit 504, a display screen 505, a camera assembly 506, an audio circuit 507, a positioning assembly 508, and a power supply 509.
[0160] The peripheral interface 503 can be used to connect at least one I / O (Input / Output) related peripheral device to the processor 501 and the memory 502. In some embodiments, the processor 501, the memory 502 and the peripheral interface 503 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 501, the memory 502 and the peripheral interface 503 can be implemented on a separate chip or circuit board, and the present embodiments are not limited in this regard.
[0161] The radio frequency circuit 504 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The radio frequency circuit 504 communicates with communication networks and other communication devices through electromagnetic signals. The radio frequency circuit 504 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals into electrical signals. Optionally, the radio frequency circuit 504 includes an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a subscriber identity module card, and the like. The radio frequency circuit 504 can communicate with other computer devices through at least one wireless communication protocol. The wireless communication protocol includes but is not limited to the World Wide Web, a metropolitan area network, an intranet, various generations of mobile communication networks (2G, 3G, 4G and 5G), a wireless local area network and / or a WiFi (Wireless Fidelity) network. In some embodiments, the radio frequency circuit 504 can also include NFC (Near Field Communication) related circuitry, and the present embodiments are not limited in this regard.
[0162] The display screen 505 is used to display a UI (User Interface). The UI can include graphics, text, icons, video and any combination thereof. When the display screen 505 is a touch display screen, the display screen 505 also has the ability to collect touch signals on or above the surface of the display screen 505. The touch signals can be input as control signals to the processor 501 for processing. At this time, the display screen 505 can also be used to provide virtual buttons and / or virtual keyboards, also known as soft buttons and / or soft keyboards.
[0163] The camera assembly 506 is used to capture images or videos. Optionally, the camera assembly 506 includes a front camera and a rear camera. In some embodiments, there are at least two rear cameras, which are any one of a main camera, a depth of field camera, a wide-angle camera, and a telephoto camera, so as to realize the fusion of the main camera and the depth of field camera to realize the background blur function, the fusion of the main camera and the wide-angle camera to realize panoramic shooting and VR (Virtual Reality) shooting function or other fusion shooting functions. In some embodiments, the camera assembly 506 may also include a flash. The flash can be a monochrome temperature flash or a dual-color temperature flash. A dual-color temperature flash refers to a combination of a warm light flash and a cold light flash, which can be used for light compensation at different color temperatures.
[0164] The audio circuit 507 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, and convert the sound waves into electrical signals to be input into the processor 501 for processing, or to be input into the radio frequency circuit 504 to achieve voice communication. For the purpose of stereo acquisition or noise reduction, there can be multiple microphones, which are respectively arranged in different parts of the vehicle 500. The microphone can also be an array microphone or an omnidirectional acquisition microphone. The speaker is used to convert the electrical signal from the processor 501 or the radio frequency circuit 504 into sound waves. The speaker can be a traditional thin film speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can not only convert the electrical signal into sound waves audible to humans, but also convert the electrical signal into sound waves inaudible to humans for purposes such as ranging. In some embodiments, the audio circuit 507 may also include a headphone jack.
[0165] The positioning component 508 is used to locate the current geographic location of the vehicle 500 to implement navigation or LBS (Location Based Service). The positioning component 508 can be a positioning component of the GPS (Global Positioning System), Beidou system or Galileo system.
[0166] Power supply 509 is used to power various components in vehicle 500. Power supply 509 can be AC power, DC power, a disposable battery, or a rechargeable battery. When power supply 509 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is charged via a wired line, while a wireless rechargeable battery is charged via a wireless coil. The rechargeable battery can also support fast charging technology.
[0167] Those skilled in the art will understand that Figure 5The structure shown in the figure does not constitute a limitation on the vehicle 500, and the vehicle 500 may include more or fewer components than shown in the figure, or combine certain components, or adopt a different component arrangement.
[0168] In some embodiments, a computer-readable storage medium is further provided, which stores a computer program. When executed by a processor, the computer program implements the steps of the voice interaction method in the above embodiments. For example, the computer-readable storage medium may be a ROM, RAM, CD-ROM, magnetic tape, floppy disk, or optical data storage device.
[0169] It is worth noting that the computer-readable storage medium mentioned in the embodiments of the present application may be a non-volatile storage medium, in other words, a non-transitory storage medium.
[0170] It should be understood that all or part of the steps for implementing the above embodiments may be implemented using software, hardware, firmware, or any combination thereof. When implemented using software, all or part of the steps may be implemented in the form of a computer program product. The computer program product may include one or more computer instructions. The computer instructions may be stored in the computer-readable storage medium.
[0171] That is, in some embodiments, a computer program product comprising instructions is also provided, which, when executed on a computer, enables the computer to execute the steps of the above-described voice interaction method.
[0172] It should be understood that the "at least one" mentioned herein refers to one or more, and "a plurality of" refers to two or more. In the description of the embodiments of the present application, unless otherwise specified, " / " means or, for example, A / B can mean A or B; "and / or" in this article is merely a description of the association relationship of associated objects, indicating that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in order to facilitate a clear description of the technical solutions of the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish between identical or similar items with substantially the same functions and effects. Those skilled in the art will understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit them to be different.
[0173] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.) and signals involved in the embodiments of this application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data need to comply with the relevant laws, regulations and standards of relevant countries and regions.
[0174] The above description is an embodiment provided for this application and is not intended to limit this application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of this application should be included in the scope of protection of this application.
Claims
1. A voice interaction method, characterized in that: The method comprises: receiving a first voice command; Recognizing at least one first node keyword in the first voice instruction; Based on the at least one first node keyword, determining a keyword function tree corresponding to each first node keyword from at least one keyword function tree included in the keyword function database; Each keyword function tree includes a plurality of bifurcated nodes, each bifurcated node corresponds to a node keyword and at least one vehicle function, and the node keywords corresponding to the plurality of bifurcated nodes are different; In a case where the keyword function trees corresponding to the at least one first node keyword are the same, determining a first target fork node and at least one vehicle-mounted function corresponding to the first target fork node from the first keyword function tree based on the at least one first node keyword, the first keyword function tree being the keyword function tree corresponding to the at least one first node keyword; Execute at least one vehicle-mounted function corresponding to the first target fork node.
2. The method according to claim 1, wherein The determining of the first target bifurcation node from the first keyword function tree based on the at least one first node keyword includes: Based on the at least one first node keyword, determining a first bifurcation node corresponding to each first node keyword from the first keyword function tree to obtain at least one first bifurcation node; In a case where the at least one first bifurcation node is located on the same path in the first keyword function tree, a first bifurcation node with the greatest depth among the at least one first bifurcation node is determined as the first target bifurcation node.
3. The method according to claim 2, wherein The method further comprises: In the case where the keyword function trees corresponding to the at least one first node keyword are different, or the at least one first bifurcation node is located in a different path in the first keyword function tree, an alarm message is sent and the voice interaction is ended.
4. The method according to any one of claims 1 to 3, wherein After executing at least one vehicle-mounted function corresponding to the first target fork node, the method further includes: receiving a second voice command; Identifying at least one second node keyword in the second voice instruction; Based on the at least one second node keyword, determining a keyword function tree corresponding to each second node keyword from the at least one keyword function tree; In a case where the keyword function trees corresponding to the at least one second node keyword are the same, determining a second target fork node and at least one vehicle-mounted function corresponding to the second target fork node from the second keyword function tree based on the at least one second node keyword, the second keyword function tree being the keyword function tree corresponding to the at least one second node keyword; If the first keyword function tree is the same as the second keyword function tree, and the second target fork node and the first target fork node are located on the same path, or the second target fork node and the first target fork node belong to the same parent node, then at least one vehicle-mounted function corresponding to the first target fork node is closed, and at least one vehicle-mounted function corresponding to the second target fork node is executed.
5. The method according to claim 4, wherein The method further comprises: If the first keyword function tree is different from the second keyword function tree, or if the first keyword function tree is the same as the second keyword function tree, but the second target fork node and the first target fork node are located on different paths and the second target fork node and the first target fork node do not belong to the same parent node, determining whether there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node; If there is no execution conflict between the at least one vehicle function corresponding to the second target fork node and the at least one vehicle function corresponding to the first target fork node, executing the at least one vehicle function corresponding to the second target fork node; If there is an execution conflict between at least one vehicle function corresponding to the second target fork node and at least one vehicle function corresponding to the first target fork node, the at least one vehicle function corresponding to the first target fork node is closed, and the at least one vehicle function corresponding to the second target fork node is executed.
6. The method according to any one of claims 1 to 3, wherein: Before receiving the first voice instruction, the method further includes: Displaying a function setting interface, wherein the function setting interface is used to prompt the user to set the node keyword and the vehicle function corresponding to each forked node in the at least one keyword function tree; The node keyword and the vehicle-mounted function corresponding to each bifurcated node in the at least one keyword function tree are obtained from the function setting interface.
7. A voice interaction device, characterized in that: The device comprises: A voice receiving module, configured to receive a first voice instruction; A keyword recognition module, configured to recognize at least one first node keyword in the first voice instruction; a function tree determining module, configured to determine, based on the at least one first node keyword, a keyword function tree corresponding to each first node keyword from at least one keyword function tree included in the keyword function database; Each keyword function tree includes a plurality of bifurcated nodes, each bifurcated node corresponds to a node keyword and at least one vehicle function, and the node keywords corresponding to the plurality of bifurcated nodes are different; a node function determination module configured to determine, based on the at least one first node keyword, a first target bifurcation node and at least one vehicle-mounted function corresponding to the first target bifurcation node from a first keyword function tree when the keyword function trees corresponding to the at least one first node keyword are the same, wherein the first keyword function tree is the keyword function tree corresponding to the at least one first node keyword; A function execution module is used to execute at least one vehicle-mounted function corresponding to the first target fork node.
8. The device according to claim 7, wherein The node function determination module is specifically used to: Based on the at least one first node keyword, determining a first bifurcation node corresponding to each first node keyword from the first keyword function tree to obtain at least one first bifurcation node; In a case where the at least one first bifurcation node is located on the same path in the first keyword function tree, a first bifurcation node with the greatest depth among the at least one first bifurcation node is determined as the first target bifurcation node.
9. A vehicle, characterized in that: The vehicle includes a memory and a processor, the memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory to implement the steps of the method according to any one of claims 1 to 6.
10. A computer-readable storage medium, characterized in that The storage medium stores a computer program, which, when executed by a processor, implements the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Apparatus and method for recommending function of vehicle
CN109754793A
Statement question and answer method and device, equipment, storage medium and computer program product
CN114297351A