Methods and systems for authoring of mixed-initiative multi-modal interactions and related browsing mechanisms
First Claim
Patent Images
1. A method of generating an application accessible by a user in accordance with a dialog system, the dialog system comprising one or more processors, the method comprising the steps of:
- declaratively representing by the one or more processors of the dialog system interactions that the user may have with the dialog system as a data model and one or more user interaction elements that populate an application state of the data model and that are bound thereto, the application comprising the data model and the one or more user interaction elements wherein the one or more user interaction elements comprise one or more elementary programming components that characterize a dialog, independent of modalities, devices, and browsers employable to access information associated with the application programmed in accordance therewith;
wherein an intention of the user is determinable from an interpretation of the one or more user interaction elements and an extraction of a semantic meaning from a user input such that a dialog that the user has with the dialog system may be a mixed-initiative dialog whereby navigation through the application is performable in a non-sequential manner and at least partially user-driven;
wherein at least a portion of the one or more user interaction elements can be transformed or associated to one or more modality-specific renderings of the application which are presentable to the user and are one of selected and generated by a dialog manager algorithm; and
wherein the representation comprises attaching appropriate event handlers to each of a plurality of defined events comprising a parser event, a canonicalization event, a canonicalization response event, a backend submit event, a backend submit response event, a focus event, and a slot mutation event;
wherein populating the application state of the data model comprises the steps of;
scoring each of the one or more user interaction elements against one or more slots of each of a plurality of forms in accordance with a scoring algorithm;
selecting at least one of the plurality of forms to represent the application state based at least in part on the scoring; and
populating the one or more slots of the selected form by the one or more user interaction elements in accordance with the user'"'"'s interaction with the dialog system;
wherein the selected form specifies the scoring algorithm to be used for at least one subsequent scoring.
1 Assignment
0 Petitions
Accused Products
Abstract
Application authoring techniques, and information browsing mechanisms associated therewith, which employ programming in association with mixed-initiative multi-modal interactions and natural language understanding for use in dialog systems. Also, a conversational browsing architecture is provided for use with these and other authoring techniques.
473 Citations
71 Claims
-
1. A method of generating an application accessible by a user in accordance with a dialog system, the dialog system comprising one or more processors, the method comprising the steps of:
-
declaratively representing by the one or more processors of the dialog system interactions that the user may have with the dialog system as a data model and one or more user interaction elements that populate an application state of the data model and that are bound thereto, the application comprising the data model and the one or more user interaction elements wherein the one or more user interaction elements comprise one or more elementary programming components that characterize a dialog, independent of modalities, devices, and browsers employable to access information associated with the application programmed in accordance therewith; wherein an intention of the user is determinable from an interpretation of the one or more user interaction elements and an extraction of a semantic meaning from a user input such that a dialog that the user has with the dialog system may be a mixed-initiative dialog whereby navigation through the application is performable in a non-sequential manner and at least partially user-driven; wherein at least a portion of the one or more user interaction elements can be transformed or associated to one or more modality-specific renderings of the application which are presentable to the user and are one of selected and generated by a dialog manager algorithm; and wherein the representation comprises attaching appropriate event handlers to each of a plurality of defined events comprising a parser event, a canonicalization event, a canonicalization response event, a backend submit event, a backend submit response event, a focus event, and a slot mutation event; wherein populating the application state of the data model comprises the steps of; scoring each of the one or more user interaction elements against one or more slots of each of a plurality of forms in accordance with a scoring algorithm; selecting at least one of the plurality of forms to represent the application state based at least in part on the scoring; and populating the one or more slots of the selected form by the one or more user interaction elements in accordance with the user'"'"'s interaction with the dialog system; wherein the selected form specifies the scoring algorithm to be used for at least one subsequent scoring. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A dialog system for providing access to an application by a user, the dialog system comprising:
-
one or more processors operable to;
(i) obtain the application from an application server, the application declaratively representing interactions that the user may have with the dialog system as a data model and one or more user interaction elements that populate an application state of the data model and that are bound thereto, the application comprising the data model and the one or more user interaction elements, wherein the one or more user interaction elements comprise one or more elementary programming components that characterize a dialog, independent of modalities, devices, and browsers employable to access information associated with the application programmed in accordance therewith, wherein an intention of the user is determinable from an interpretation of the one or more user interaction elements and an extraction of a semantic meaning from a user input such that a dialog that the user has with the dialog system may be a mixed-initiative dialog whereby navigation through the application is performable in a non-sequential manner and at least partially user-driven; and
(ii) one of transforming and associating at least a portion of the one or more user interaction elements to one or more modality-specific renderings which are one of generated and selected by a dialog manager algorithm; andmemory, operatively coupled to the one or more processors, for storing at least a portion of results associated with at least one of the obtaining, transforming and associating operations; wherein the representing operation comprises attaching appropriate event handlers to each of a plurality of defined events comprising a parser event, a canonicalization event, a canonicalization response event, a backend submit event, a backend submit response event, a focus event, and a slot mutation event wherein populating the application state of the data model comprises the operations of; scoring each of the one or more user interaction elements against one or more slots of each of a plurality of forms in accordance with a scoring algorithm; selecting at least one of the plurality of forms to represent the application state based at least in part on the scoring; and populating the one or more slots of the selected form by the one or more user interaction elements in accordance with the user'"'"'s interaction with the dialog system; wherein the selected form specifies the scoring algorithm to be used for at least one subsequent scoring.
-
-
35. An article of manufacture comprising a memory storing one or more programs which when executed by a processor implement the steps of:
-
declaratively representing interactions that the user may have with the dialog system as a data model and one or more user interaction elements that populate an application state of the data model and that are bound thereto, the application comprising the data model and the one or more user interactions elements, wherein the one or more user interaction elements comprise one or more elementary programming components that characterize a dialog, independent of modalities, devices, and browsers employable to access information associated with the application programmed in accordance therewith; wherein an intention of the user is determinable from an interpretation of the one or more user interaction elements and an extraction of a semantic meaning from a user input such that a dialog that the user has with the dialog system may be a mixed-initiative dialog whereby navigation through the application is performable in a non-sequential manner and at least partially user-driven; wherein at least a portion of the one or more user interaction elements can be transformed or associated to one or more modality-specific renderings of the application which are presentable to the user and are one of selected and generated by a dialog manager algorithm; wherein the representing step comprises attaching appropriate event handlers to each of a plurality of defined events comprising a parser event, a canonicalization event, a canonicalization response event, a backend submit event, a backend submit response event, a focus event, and a slot mutation event; and wherein populating the application state of the data model comprises the steps of; scoring each of the one or more user interaction elements against one or more slots of each of a plurality of forms in accordance with a scoring algorithm; selecting at least one of the plurality of forms to represent the application state based at least in part on the scoring; and populating the one or more slots of the selected form by the one or more user interaction elements in accordance with the user'"'"'s interaction with the dialog system; wherein the selected form specifies the scoring algorithm to be used for at least one subsequent scoring.
-
-
36. A method of generating an application accessible by a user in accordance with a dialog system, the dialog system comprising one or more processors, the method comprising the steps of:
-
declaratively representing by the one or more processors of the dialog system interactions that the user may have with the dialog system as a data model and one or more user interaction elements that populate an application state of the data model and that are bound thereto, the application comprising the data model and the one or more user interaction elements, wherein the one or more user interaction elements comprise one or more elementary programming components that characterize a dialog, independent of modalities, devices, and browsers employable to access information associated with the application programmed in accordance therewith; wherein an intention of the user is determinable from an interpretation of the one or more user interaction elements and an extraction of a semantic meaning from a user input such that a dialog that the user has with the dialog system may be a mixed-initiative dialog whereby navigation through the application is performable in a non-sequential manner and at least partially user-driven; wherein at least a portion of the one or more user interaction elements can be transformed or associated to one or more modality-specific renderings of the application which are presentable to the user and are one of selected and generated by a dialog manager algorithm; and wherein populating the application state of the data model comprises the steps of; scoring each of the one or more user interaction elements against one or more slots of each of a plurality of forms in accordance with a scoring algorithm; selecting at least one of the plurality of forms to represent the application state based at least in part on the scoring; and populating the one or more slots of the selected form by the one or more user interaction elements in accordance with the user'"'"'s interaction with the dialog system; wherein the selected form specifies the scoring algorithm to be used for at least one subsequent scoring. - View Dependent Claims (37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69)
-
-
70. A dialog system for providing access to an application by a user, the dialog system comprising:
-
one or more processors operable to;
(i) obtain the application from an application server, the application declaratively representing interactions that the user may have with the dialog system as a data model and one or more user interaction elements that populate an application state of the data model and that are bound thereto, the application comprising the data model and the one or more user interactions elements, wherein the one or more user interaction elements comprise one or more elementary programming components that characterize a dialog, independent of modalities, devices, and browsers employable to access information associated with the application programmed in accordance therewith, wherein an intention of the user is determinable from an interpretation of the one or more user interaction elements and an extraction of a semantic meaning from a user input such that a dialog that the user has with the dialog system may be a mixed-initiative dialog whereby navigation through the application is performable in a non-sequential manner and at least partially user-driven; and
(ii) one of transforming and associating at least a portion of the one or more user interaction elements to one or more modality-specific renderings which are one of generated and selected by a dialog manager algorithm; andmemory, operatively coupled to the one or more processors, for storing at least a portion of results associated with at least one of the obtaining, transforming and associating operations; wherein populating the application state of the data model comprises the steps of; scoring each of the one or more user interaction elements against one or more slots of each of a plurality of forms in accordance with a scoring algorithm; selecting at least one of the plurality of forms to represent the application state based at least in part on the scoring; and populating the one or more slots of the selected form by the one or more user interaction elements in accordance with the user'"'"'s interaction with the dialog system; wherein the selected form specifies the scoring algorithm to be used for at least one subsequent scoring.
-
-
71. An article of manufacture comprising a memory storing one or more programs which when executed by a processor implement the steps of:
-
declaratively representing interactions that the user may have with the dialog system as a data model and one or more user interaction elements that populate an application state of the data model and that are bound thereto, the application comprising the data model and the one or more user interactions elements, wherein the one or more user interaction elements comprise one or more elementary programming components that characterize a dialog, independent of modalities, devices, and browsers employable to access information associated with the application programmed in accordance therewith; wherein an intention of the user is determinable from an interpretation of the one or more user interaction elements and an extraction of a semantic meaning from a user input such that a dialog that the user has with the dialog system may be a mixed-initiative dialog whereby navigation through the application is performable in a non-sequential manner and at least partially user-driven; wherein at least a portion of the one or more user interaction elements can be transformed or associated to one or more modality-specific renderings of the application which are presentable to the user and are one of selected and generated by a dialog manager algorithm; wherein populating the application state of the data model comprises the steps of; scoring each of the one or more user interaction elements against one or more slots of each of a plurality of forms in accordance with a scoring algorithm; selecting at least one of the plurality of forms to represent the application state based at least in part on the scoring; and populating the one or more slots of the selected form by the one or more user interaction elements in accordance with the user'"'"'s interaction with the dialog system; wherein the selected form specifies the scoring algorithm to be used for at least one subsequent scoring.
-
Specification