Generating multi-perspective responses by assistant systems
In one embodiment, a method includes receiving a user query associated with dialog-intents at a client system, executing tasks corresponding to the dialog-intents, generating a multi-perspective response by a stitching model based on two or more of execution results of the tasks, wherein the multi-perspective response comprises a natural-language response combining the two or more execution results, and presenting the multi-perspective response at the client system.
1. A method comprising, by a client system:
receiving, at the client system, a user query, wherein the user query corresponds to a plurality of dialog-intents;
executing a plurality of tasks corresponding to the plurality of dialog-intents;
generating, by a stitching model, a multi-perspective response based on two or more of execution results of the plurality of tasks, wherein the stitching model combines the two or more of the execution results based on natural language processing, and wherein the multi-perspective response comprises a natural-language response combining the two or more execution results; and
presenting, at the client system, the multi-perspective response.
2. The method of claim 1 , further comprising:
determining, based on the user query by a natural-language understanding module, the plurality of dialog-intents.
3. The method of claim 1 , wherein each dialog-intent of the plurality of dialog-intents is associated with a particular agent of a plurality of agents, and wherein executing the plurality of tasks corresponding to the plurality of dialog-intents is via the plurality of agents.
4. The method of claim 3 , further comprising:
receiving, from the plurality of agents, the execution results of the plurality of tasks.
5. The method of claim 1 , further comprising:
determining, by a natural-language understanding module, one or more slots associated with each of the plurality of dialog-intents.
6. The method of claim 1 , further comprising:
selecting the two or more of the execution results for combination.
7. The method of claim 6 , further comprising:
determining relevance scores of the execution results with respect to the user query, respectively; and
ranking the execution results based on their respective relevance scores;
wherein selecting the two or more of the execution results for combination comprises selecting execution results based on their respective rankings.
8. The method of claim 6 , wherein selecting the two or more of the execution results for combination comprises:
determining, based on one or more machine-learning models, whether one or more of the execution results are mutually exclusive results with respect to one or more of the other execution results; and
filtering one or more of the mutually exclusive results from the execution results;
wherein selecting the two or more of the execution results for combination comprises selecting two or more execution results from the post-filtered execution results.
9. The method of claim 6 , wherein selecting the two or more of the execution results for combination comprises:
calculating, for each execution result, an entropy value based on the information entropy of the respective execution result; and
calculating, for each execution result, information-gain values of the execution result based on its respective entropy value with respect to the entropy values of each other execution result;
wherein selecting the two or more of the execution results for combination comprises selecting two or more execution results based on their respective information-gain values.
10. The method of claim 1 , wherein generating the multi-perspective response comprises:
determining an order of the selected execution results; and
combining, by the stitching model, the selected execution results based on the determined order.
11. The method of claim 10 , wherein the order of the selected execution results is determined based on a sequential-language model.
12. The method of claim 11 , wherein the sequential-language model is trained based on a plurality of training data of human-combined utterances.
13. The method of claim 10 , wherein the order of the selected execution results is determined based on one or more predefined rules.
14. The method of claim 10 , wherein the user query is associated with a first user, and wherein the order of the selected execution results is determined based on user profile data associated with the first user.
15. The method of claim 14 , wherein the order of the selected execution results is further determined based on history data of user interactions by the first user with agents corresponding to the selected execution results.
16. The method of claim 10 , wherein the order of the selected execution results is determined based on execution times associated with the selected execution results.
17. The method of claim 10 , wherein the order of the selected execution results is determined based on linguistic grounding.
18. The method of claim 1 , wherein the multi-perspective response is based on one or more modalities, wherein the one or more modalities comprise one or more of text, audio, image, or video.
19. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
receive, at the client system, a user query, wherein the user query corresponds to a plurality of dialog-intents;
execute a plurality of tasks corresponding to the plurality of dialog-intents;
generate, by a stitching model, a multi-perspective response based on two or more of execution results of the plurality of tasks, wherein the stitching model combines the two or more of the execution results based on natural language processing, and wherein the multi-perspective response comprises a natural-language response combining the two or more execution results; and
present, at the client system, the multi-perspective response.
20. A system comprising: one or more processors; and a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:
receive, at the client system, a user query, wherein the user query corresponds to a plurality of dialog-intents;
execute a plurality of tasks corresponding to the plurality of dialog-intents;
generate, by a stitching model, a multi-perspective response based on two or more of execution results of the plurality of tasks, wherein the stitching model combines the two or more of the execution results based on natural language processing, and wherein the multi-perspective response comprises a natural-language response combining the two or more execution results; and
present, at the client system, the multi-perspective response.