Delegated decision tree evaluation
AssigneeAmazon Technologies, Inc.
InventorsJamie Broomall, Naveen Balakrishnan, Carlos Alvarez Barragan
Life of this patent
Estimating the term…
Abstract
Disclosed are various embodiments for delegated evaluation of a decision tree. A client device receives an expression and a plurality of responses from a second computing device, the expression providing an evaluation of a user input and each of the plurality of responses representing a potential response for the first computing device to provide to the user input. The client device then evaluates the user input with the expression received from the second computing device to determine a user intent. The client device then selects a response to the user intent from the plurality of responses and renders the response within a user interface.
Claims20
A system, comprising:
- a first computing device comprising a processor and a memory;
- and
- machine readable instructions stored in the memory that, when executed by the processor, cause the first computing device to at least:
- receive a portion of a decision tree from a second computing device in data communication with the first computing device, the portion of the decision tree comprising a plurality of nodes, each node comprising a regular expression for evaluating a user input comprising a character string inputted through a user interface provided by the first computing device to determine a user intent and identifying a next node to proceed to in the portion of the decision tree based at least in part on the user intent;
- determine that the character string has been inputted through the user interface within a predefined period of time specified by a current node in the portion of the decision tree;
- evaluate the character string with the regular expression specified by the current node in the portion of the decision tree to determine the user intent in response to a determination that the character string had been inputted within the predefined period of time;
- proceed to the next node in the portion of the decision tree specified by the current node in the decision tree based at least in part on the user intent;
- notify the second computing device that the first computing device has proceeded to the next node in the portion of the decision tree;
- receive at least one additional node to add to the portion of the decision tree from the second computing device;
- add the at least one additional node to a first branch of the portion of the decision tree descending from the next node in the portion of the decision tree;
- remove from the portion of the decision tree a set of nodes included in a second branch of the portion of the decision tree that omits the next node;
- generate a response to the user input based at least in part on the user intent;
- and
- provide the response within the user interface.
A system, comprising:
- a first computing device comprising a processor and a memory;
- and
- machine readable instructions stored in the memory that, when executed by the processor, cause the first computing device to at least:
- receive a portion of a decision tree from a second computing device in data communication with the first computing device, the portion of the decision tree comprising a plurality of nodes, each node comprising expression logic for evaluating a user input to determine a user intent and identifying a next node to proceed to in the decision tree based at least in part on the user intent;
- evaluate the user input according to the expression logic of a current node in the decision tree to determine the user intent;
- proceed to the next node in the decision tree specified by the current node in the portion of the decision tree based at least in part on the user intent;
- notify the second computing device that the first computing device has proceeded to the next node in the portion of the decision tree;
- receive at least one additional node to add to the portion of the decision tree from the second computing device;
- and
- add the at least one additional node to at least one branch of the portion of the decision tree descending from the next node in the portion of the decision tree.
A method, comprising
- receiving, via a first computing device, a portion of a decision tree from a second computing device in data communication with the first computing device, the portion of the decision tree comprising a plurality of nodes, each node comprising expression logic for evaluating a user input to determine a user intent and identifying a next node to proceed to in the decision tree based at least in part on the user intent;
- evaluating, via the first computing device, the user input according to the expression logic of a current node in the decision tree to determine the user intent;
- proceeding, via the first computing device, to the next node in the decision tree specified by the current node in the portion of the decision tree based at least in part on the user intent;
- notifying, via the first computing device, the second computing device that the first computing device has proceeded to the next node in the portion of the decision tree;
- receiving, via the first computing device, at least one additional node to add to the portion of the decision tree from the second computing device;
- and
- adding, via the first computing device, the at least one additional node to at least one branch of the portion of the decision tree descending from the next node in the portion of the decision tree.
Dependencies are inferred from the claim text.