Multi-domain chatbot
First Claim
1. A method, comprising:
- receiving, by an automated agent and from a client device, a message generated by a user;
determining, by the automated agent, an intent of the user message;
prior to transmitting the user message to any domain-specific modules, identifying a group of the domain-specific modules that should be investigated based on at least the intent of the user message, the group of domain-specific modules including at least two domain-specific modules;
transmitting the user message to the group of domain-specific modules;
receiving, by the automated agent, responses from the group of domain-specific modules;
determining whether any of the responses is aligned with the intent of the user message; and
if at least one of the responses is aligned with the intent of the user message, ranking the domain-specific modules according to a criterion, and transmitting a response from the most highly ranked domain-specific module to the client device;
otherwise, if none of the responses is aligned with the intent of the user message, transmitting, to the client device, a null response that does not satisfy the intent of the user message,wherein the null response informs the user of one or more domain-specific modules from the group of domain-specific modules that have been investigated and ruled out for not being able to sufficiently address the user message, and further informs the user that the ruling out of the one or more domain-specific modules is based on responses the automated agent has received from the one or more domain-specific modules that have been investigated and ruled out.
8 Assignments
0 Petitions
Accused Products
Abstract
A multi-domain chatbot is used to service a message of a user. An automated agent of the multi-domain chatbot may act as an intermediary between the user and a plurality of domain-specific modules of the multi-domain chatbot. The automated agent may receive the message from the user, determine an intent of the message, and based on the intent, determine a group of the domain-specific modules that should be investigated. The automated agent may then investigate the group of domain-specific modules by sending the user message to and receiving responses from the domain-specific modules within the group. Based on the received responses, the automated agent may determine whether to provide, to the user, one of the domain-specific responses or a null response, in the event that none of the domain-specific responses is aligned with the intent of the message.
135 Citations
19 Claims
-
1. A method, comprising:
-
receiving, by an automated agent and from a client device, a message generated by a user; determining, by the automated agent, an intent of the user message; prior to transmitting the user message to any domain-specific modules, identifying a group of the domain-specific modules that should be investigated based on at least the intent of the user message, the group of domain-specific modules including at least two domain-specific modules; transmitting the user message to the group of domain-specific modules; receiving, by the automated agent, responses from the group of domain-specific modules; determining whether any of the responses is aligned with the intent of the user message; and if at least one of the responses is aligned with the intent of the user message, ranking the domain-specific modules according to a criterion, and transmitting a response from the most highly ranked domain-specific module to the client device; otherwise, if none of the responses is aligned with the intent of the user message, transmitting, to the client device, a null response that does not satisfy the intent of the user message, wherein the null response informs the user of one or more domain-specific modules from the group of domain-specific modules that have been investigated and ruled out for not being able to sufficiently address the user message, and further informs the user that the ruling out of the one or more domain-specific modules is based on responses the automated agent has received from the one or more domain-specific modules that have been investigated and ruled out. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computing system comprising a processor and memory storing instructions that, when executed by the processor, cause the processor to:
-
receive, from a client device, a message generated by a user; determine an intent of the user message; prior to transmitting the user message to any domain-specific modules, identify a group of the domain-specific modules that should be investigated based on at least the intent of the user message, the group of domain-specific modules including at least two domain-specific modules; transmit the user message to the group of domain-specific modules; receive responses from the group of domain-specific modules; determine whether any of the responses is aligned with the intent of the user message; and if at least one of the responses is aligned with the intent of the user message, rank the domain-specific modules according to a criterion, and transmit a first response from the most highly ranked domain-specific module to the client device; otherwise, if none of the responses is aligned with the intent of the user message, transmit, to the client device, a null response that does not satisfy the intent of the user message, wherein the null response informs the user of one or more domain-specific modules from the group of domain-specific modules that have been investigated and ruled out by an automated agent for not being able to sufficiently address the user message, and further informs the user that the ruling out of the one or more domain-specific modules is based on responses the automated agent has received from the one or more domain-specific modules that have been investigated and ruled out. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A non-transitory machine-readable storage medium comprising instructions that, when executed by a processor, cause the processor to:
-
receive, from a client device, a message generated by a user; determine an intent of the user message; prior to transmitting the user message to any domain-specific modules, identify a group of the domain-specific modules that should be investigated based on at least the intent of the user message, the group of domain-specific modules including at least two domain-specific modules; transmit the user message to the group of domain-specific modules; receive responses from the group of domain-specific modules; determine whether any of the responses is aligned with the intent of the user message; and if at least one of the responses is aligned with the intent of the user message, rank the domain-specific modules according to a criterion, and transmit a first response from the most highly ranked domain-specific module to the client device; otherwise, if none of the responses is aligned with the intent of the user message, transmit, to the client device, a null response that does not satisfy the intent of the user message, wherein the null response informs the user of one or more domain-specific modules from the group of domain-specific modules that have been investigated and ruled out by an automated agent for not being able to sufficiently address the user message, and further informs the user that the ruling out of the one or more domain-specific modules is based on responses the automated agent has received from the one or more domain-specific modules that have been investigated and ruled out. - View Dependent Claims (16, 17, 18, 19)
-
Specification