Multi-slot dialog systems and methods
DCFirst Claim
1. A method for constructing and processing a multi-slot dialog with a user, comprising:
- enabling at least one unfilled slot in a segment of slots;
outputting a primary header prompt for eliciting values for a prompted slot set from the user, the prompted slot set including at least one enabled slot in the segment;
receiving a primary user response, the primary user response containing a value for each slot in a response slot set, the response slot set including at least one slot in the segment;
processing the primary user response to determine at least one possible recognition value for each slot contained in the primary user response, each slot contained in the primary user response being either a member of the prompted slot set or a remaining unfilled slot in the segment that is a non-member of the prompted slot set;
filling each slot contained in the primary user response with a matched value selected from the corresponding at least one possible recognition value; and
repeating the outputting, receiving, processing and filling for any unfilled slots in the segment until all slots in the segment of slots are filled.
3 Assignments
Litigations
0 Petitions
Accused Products
Abstract
Systems and methods for constructing a series of interactions with a user to collect multiple pieces of related information for the purpose of accomplishing a specific goal or topic (a multi-slot dialog) using a component-based approach are disclosed. The method generally includes outputting a primary header prompt to elicit values for slots in a segment from the user, receiving a primary user response containing a value for each slot in at least a subset of the slots in the segment, processing the primary user response to determine at least one possible recognition value for each slot contained in the primary user response, filling each slot contained in the primary user response with a matched value selected from the corresponding possible recognition values, and repeating the outputting, receiving, processing and filling for any unfilled slots in the segment until all slots in the segment of slots are filled.
221 Citations
27 Claims
-
1. A method for constructing and processing a multi-slot dialog with a user, comprising:
-
enabling at least one unfilled slot in a segment of slots; outputting a primary header prompt for eliciting values for a prompted slot set from the user, the prompted slot set including at least one enabled slot in the segment; receiving a primary user response, the primary user response containing a value for each slot in a response slot set, the response slot set including at least one slot in the segment; processing the primary user response to determine at least one possible recognition value for each slot contained in the primary user response, each slot contained in the primary user response being either a member of the prompted slot set or a remaining unfilled slot in the segment that is a non-member of the prompted slot set; filling each slot contained in the primary user response with a matched value selected from the corresponding at least one possible recognition value; and repeating the outputting, receiving, processing and filling for any unfilled slots in the segment until all slots in the segment of slots are filled. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for constructing and processing a multi-slot dialog with a user, comprising:
-
a plurality of slot objects each representing a slot in a segment, each slot capable of being assigned a value based on the multi-slot dialog; at least one slot segment object, each slot segment object containing a corresponding set of slot objects; at least one set of slot group objects for each slot segment object, each slot group object defining parameters associated with a particular combination of slots in the slot segment object; and dialog objects that define a flow of the multi-slot dialog, the flow of the multi-slot dialog is based at least in part on unfilled slots and includes a primary header prompt for eliciting values for at least one of the unfilled slots. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A method for constructing a multi-slot dialog with a user to obtain multiple items of information over a number of turns, comprising:
-
providing at least one slot segment object, each slot segment object containing a corresponding set of slot objects, each representing a slot in a segment, each slot representing an item of information to be provided by the user; providing at least one set of slot group objects for each slot segment object, each slot group object defining parameters associated with a particular combination of slots in the slot segment object; and executing a multi-slot dialog flow defined by dialog objects, the flow being based at least in part on unfilled slots and includes a primary header prompt for eliciting values for at least one of the unfilled slots. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
Specification