Intelligent Automated Assistant
First Claim
Patent Images
1. An automated assistant operating on a computing device, the assistant comprising:
- an input device, for receiving user input;
a language interpreter component, for interpreting the received user input to derive a representation of user intent;
a dialog flow processor component, for identifying at least one domain, at least one task, and at least one parameter for the task, based at least in part on the derived representation of user intent;
a services orchestration component, for calling at least one service for performing the identified task;
an output processor component, for rendering output based on data received from the at least one called service, and further based at least in part on a current output mode; and
an output device, for outputting the rendered output.
1 Assignment
0 Petitions
Accused Products
Abstract
An intelligent automated assistant system engages with the user in an integrated, conversational manner using natural language dialog, and invokes external services when appropriate to obtain information or perform various actions. The system can be implemented using any of a number of different platforms, such as the web, email, smartphone, and the like, or any combination thereof. In one embodiment, the system is based on sets of interrelated domains and tasks, and employs additional functionally powered by external services with which the system can interact.
-
Citations
74 Claims
-
1. An automated assistant operating on a computing device, the assistant comprising:
-
an input device, for receiving user input; a language interpreter component, for interpreting the received user input to derive a representation of user intent; a dialog flow processor component, for identifying at least one domain, at least one task, and at least one parameter for the task, based at least in part on the derived representation of user intent; a services orchestration component, for calling at least one service for performing the identified task; an output processor component, for rendering output based on data received from the at least one called service, and further based at least in part on a current output mode; and an output device, for outputting the rendered output. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51)
-
-
52. An automated assistant operating on a computing device, the assistant comprising:
-
an input device, for receiving user input; an active ontology, comprising representations of concepts and relationships among concepts; a language interpreter component, for interpreting the received user input to derive a representation of user intent, wherein the language interpreter component obtains representations of concepts and relationships among concepts from the active ontology to derive the representation of user intent; an output processor component, for rendering output based on the derived representation of user intent, and further based at least in part on a current output mode; and an output device, for outputting the rendered output. - View Dependent Claims (53, 54, 55, 56, 57, 58)
-
-
59. An automated assistant operating on a computing device, the assistant comprising:
-
an input device, for receiving user input; a language interpreter component, for interpreting the received user input to derive a representation of user intent; an active input elicitation component, for; generating at least one prompt to actively elicit input from a user via a conversational interface; and generating a paraphrase of the user intent; an output processor component, for; summarizing a plurality of results based on the derived representation of user intent; and generating output representing the summarized plurality of results, and further based at least in part on a current output mode; and an output device, for outputting the paraphrase of the user intent and for outputting the generated output. - View Dependent Claims (60)
-
-
61. A method for implementing an automated assistant on a computing device having at least one processor, the method comprising:
-
at an input device, receiving user input; at a processor, interpreting the received user input to derive a representation of user intent; at the processor, identifying at least one domain, at least one task, and at least one parameter for the task, based at least in part on the derived representation of user intent; at the processor, calling at least one service for performing the identified task; at the processor, rendering output based on data received from the at least one called service, and further based at least in part on a current output mode; and at an output device, outputting the rendered output. - View Dependent Claims (62, 63, 64, 65, 66, 67)
-
-
68. A computer program product for implementing an automated assistant on a computing device having at least one processor, the method comprising:
-
a nontransitory computer-readable storage medium; and computer program code, encoded on the medium, for causing at least one processor to perform the steps of; receiving user input; interpreting the received user input to derive a representation of user intent; identifying at least one domain, at least one task, and at least one parameter for the task, based at least in part on the derived representation of user intent; calling at least one service for performing the identified task; rendering output based on data received from the at least one called service, and further based at least in part on a current output mode; and outputting the rendered output. - View Dependent Claims (69, 70, 71, 72, 73, 74)
-
Specification