Conversational agent
First Claim
1. A computing device comprising one or more processors and one or more non-transitory storage devices storing instructions that, when executed by the one or more processors, configure the computing device to:
- receive at least one user query from an input device, wherein the at least one user query includes a user intent and at least one command, the at least one user intent being associated with a set of functions to be carried out by the computing device;
derive, using a natural language processing (NLP) engine, the user intent from the user query;
identify, using the NLP engine, at least one domain and the at least one command associated with the derived user intent, wherein the NLP engine performs entity extraction on the at least one user query to identify at least one entity associated with the at least one command, wherein the at least one command is associated with the domain;
execute the at least one command associated with the user intent, wherein the at least one command is configured to direct the computing device to carry out at least one function selected from the set of functions; and
generate output of at least one result of the executed at least one command from at least one component of the computing device.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system, and computer program product provide a conversation agent to process natural language queries expressed by a user and perform commands according to the derived intention of the user. A natural language processing (NLP) engine derives intent using conditional random fields to identify a domain and at least one task embodied in the query. The NLP may further identify one or more subdomains, and one or more entities related to the identified command. A template system creates a data structure for information relevant to the derived intent and passes a template to a services manager for interfacing with one or more services capable of accomplishing the task. A dialog manager may elicit more entities from the user if required by the services manager and otherwise engage in conversation with the user. In one embodiment, the conversational agent allows a user to engage in multiple conversations simultaneously.
44 Citations
20 Claims
-
1. A computing device comprising one or more processors and one or more non-transitory storage devices storing instructions that, when executed by the one or more processors, configure the computing device to:
-
receive at least one user query from an input device, wherein the at least one user query includes a user intent and at least one command, the at least one user intent being associated with a set of functions to be carried out by the computing device; derive, using a natural language processing (NLP) engine, the user intent from the user query; identify, using the NLP engine, at least one domain and the at least one command associated with the derived user intent, wherein the NLP engine performs entity extraction on the at least one user query to identify at least one entity associated with the at least one command, wherein the at least one command is associated with the domain; execute the at least one command associated with the user intent, wherein the at least one command is configured to direct the computing device to carry out at least one function selected from the set of functions; and generate output of at least one result of the executed at least one command from at least one component of the computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method of processing a user query performed by a computing device, the method comprising:
-
receiving at least one user query from an input device, wherein the at least one user query includes a user intent and at least one command, the at least one user intent being associated with a set of functions to be carried out by the computing device; deriving, using a natural language processing (NLP) engine, the a user intent from the user query; identifying, using the NLP engine, at least one domain and the at least one command associated with the derived user intent, wherein the NLP engine performs entity extraction on the at least one user query to identify at least one entity associated with the at least one command and wherein the command is for performing by a service associated with the domain; execute the at least one command associated with the user intent, wherein the at least one command is configured to direct the computing device to carry out a function selected from the set of functions; and generate output of at least one result of the executed at least one command from at least one component of the computing device. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A computer storage device storing computer-executable instructions that when executed by a processor cause the processor to:
-
receive at least one user query from an input device, wherein the at least one user query includes a user intent and at least one command, the at least one user intent being associated with a set of functions to be carried out by the computing device; derive, using a natural language processing (NLP) engine, the user intent from the user query; identify, using the NLP engine, at least one domain and the at least one command associated with the derived user intent, wherein the NLP engine performs entity extraction on the at least one user query to identify at least one entity associated with the at least one command, wherein the at least one command is associated with the domain; execute the at least one command associated with the user intent, wherein the at least one command is configured to direct the computing device to carry out at least one function selected from the set of functions; and generate output of at least one result of the executed at least one command from at least one component of the computing device. - View Dependent Claims (20)
-
Specification