Invented by Fang Cheng, Dennis Wu, Jian Da Chen, Linc Global Inc
The Linc Global Inc invention works as followsThe present invention is an architecture masterbot in a multi-service virtual assistant that can create a fluid, dynamic dialogue by assembling the responses to end user utterances of two types of agents: information agents and actions agents. A plurality information agents can obtain at least one value of information from contextual data and/or parsed user input. A plurality action agents respond to the parsed input from the user, the contextual data and/or information value by performing one or more actions. A masterbot arbitrates the activation of the information agents and action agents. The masterbot includes access to a module for machine learning to select a suitable action agent. One or more information agents will be activated depending on the appropriate action selected by the masterbot.
Background for Scalable Multi-Service Virtual Assistant Platform using Machine Learning
The statements in this section can serve as background information to better understand the invention, its applications and uses. However, they may not be prior art.
Conversational or Natural Language (NL) User Interfaces (UIs), can include systems and methodologies that can rely on textual, audio and/or visual inputs in order to allow users to interact using computing systems. Natural language processing can be performed on a computer by interpreting text or speech from a human (e.g. a user?s input via text, audio, or video). This is done using one or more algorithms. Natural language user interfaces, in some cases, can allow for more fluid and richer interactions between machines (and humans) than traditional interfaces and existing GUIs that rely primarily on keyboard and mouse interaction.
Virtual assistant platforms that use conversational or natural-language input from users to automate tasks can be used in many different business areas, such as retail sales, order management and customer service across many industries. Virtual assistants that are currently in use implement natural language interactions with users using a variety of methods, including decision trees, finite state machines (FSMs), menu-driven approaches or frame-slot-based approaches.
First, decision trees and finite-state machine approaches have a rigid architecture that requires extensive developer and subject-matter expert development time. They also require an exponentially expanding tree or finite-state machine table and, ultimately, lead to a system which is fragile and causes frustration among end users. Second, menu-driven systems for multi-service conversations are also highly restrictive and rigid, resulting in frustration among users. The frame-slot approach to natural language conversation is also rigid and has not led to flexible conversation systems. Recent work on deep learning and machine learning on existing datasets of conversation has shown promise but not yet led to commercial applications. This is because the number of possible conversations for even a small group of business tasks has exploded exponentially.
In light of these difficulties, it is necessary to develop a virtual assistant platform that allows for fluid and flexible conversation. It would also be a significant advancement in the current state of the art for natural language systems if systems and methods were developed to improve the experience of developers. This could allow an entire virtual assistant to be implemented in hours, rather than months or years, by subject matter experts.
The present invention was developed in this context.
The present invention can be described as a multi-service virtual platform with a scalable architecture that allows for a fluid, dynamic dialogue to be constructed by using two types of building blocks: information agents and actions agents. A masterbot, also known as an arbiter agent, manages the information agents and actions agents.
In another aspect, this invention is a platform for a virtual assistant, which can learn new skills through instructions that are expressed as prerequisites and actions combinations. The virtual assistant platform handles automatically dialogue generation, arbitration and optimization for surveying prerequisites from the user and then handles the activation(s) of appropriate actions.
According to an aspect of the invention, a benefit is the decomposition of services from the communication layer. The present invention, in one aspect allows for a large number services to be implemented by using a few building blocks – the information agents and action agent. These building blocks can be assembled to create a large number of services. Each service can then be delivered by a variety of conversations between the end user and the agent, allowing a fluid, dynamic dialogue to be seamlessly implemented.
In one embodiment, the information agents are optimized to only understand a subset of data needed to conduct a conversation with a specific end-user. In one embodiment, each information agent’s inference ability is linked to that of other information agents. An order number agent, for example, may be able to get the number of an order from a mention made of a date or the contents of the order. Other information agents can infer the number of an order from the user’s utterances. A large number services can therefore be delivered by a smaller number of agents, through a larger number conversations.
The present invention also provides for a separation between information and action. Information agents can be combined with other modules to get information from the user’s utterances. Action agents then rely on the information provided by information agents to activate or perform specific actions. “For example, an action agent could trigger the generation of a return slip when a user returns an item from an order.
In some embodiments, the masterbot activates action agents directly. However, before activating an action agent, it checks to see if any prerequisites are required (in the form information agents). If these information agents have not been met, then the masterbot activates the information agents.
Accordingly some embodiments of this invention relate to systems and methods for managing and deploying a multi-service virtual assistance platform that can be implemented in certain examples to respond to end user utterances by using natural language. A system, method and apparatus for a virtual assistant platform with multiple services is described in some aspects. In an illustrative example, the system may include a memory device for storing program code (or instructions that can be executed by a computer) and at least ONE processor configured to access this memory device. The processor can also be configured to execute program code in order to implement a “natural language understanding” module that receives one or multiple utterances and parses them; (2) a plurality information agents configured for obtaining an information value based on the parsed input or contextual data; (3) and a plurality action agents configured for performing one or several actions based on the parsed input, contextual data and/or information value.
In other aspects, the system, nontransitory storage medium and method of a virtual assistant platform are described. In an illustrative example, the system may include at least a memory device for storing program code and at least a processor that is configured to access it. The processor can also be configured to execute program code in order to implement: 1) a plurality information agents that obtain at least a single information value from parsed input from the user and/or contextual information from one of more data sources; 2) a plurality action agents that perform one or multiple actions as a response to the user input parsed, contextual data and/or at least a single information value. 3) at least a masterbot for arbitrating an activation between the plurality information agents and action agents. The masterbot has access to a module for machine learning to select a suitable action agent. One or more information agents will be activated depending on the appropriate action agent selected by the masterbot.
In one embodiment, information agents are selected by using a machine-learning module.
In some embodiments, a set-value connection is established between a certain action agent and a particular information agent through at least one action. The set-value for the action agent in question is then used to create an information value that is used later by the information agent.
In some embodiments, an inference connection is used to connect two information agents. The inference connection links the two agents together, and determines when one information agent activates another information agent in order to complete one or more of its information values.
In some embodiments, a prerequisite connection is established between at least an information agent and at most one action agent. The prerequisite connection then activates at least one or more information agents that are required to meet one or more conditions before a particular action agent can be performed.
In some embodiments, one or more of the multiple information agents are adapted to parse the input of the user and extract the information directly from it.
In some embodiments, one or more of the multiple information agents are adapted to infer information values from the parsed input of a user, and the inferring occurs when it is determined that the given information agent is not able to obtain information values by directly understanding the user input.
In some embodiments, one of the multiple information agents can infer information value by accessing contextual data sources and parsing user input.Click here to view the patent on Google Patents.