IP Library › Granted Patent US 11,238,850
Granted Patent B2
US 11,238,850 · App. 16/177,296 · Granted Feb 1, 2022

Systems and methods for e-commerce API orchestration using natural language interfaces

Inventors: Snehasish Mukherjee (Santa Clara, CA); Shankara Bhargava Subramanya (Santa Clara, CA)
Assignee: Walmart Apollo, LLC
G10L15/1815G10L15/063G10L15/22G10L2015/0631G10L2015/223
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,238,850
App. No.
16/177,296
Granted
Feb 1, 2022
Kind
B2
Abstract

Systems and methods for e-commerce systems using natural language understanding are described. A computing device is configured receive a user utterance and identify at least one semantic element within the user utterance. An intent associated with the at least one semantic element is identified and an intent flow associated with the identified intent is executed. The intent flow includes a set of tasks executed in a predetermined order. A system utterance is generated by instantiating a response template selected from a plurality of response templates associated with the executed intent.

Claims (61)

1. A system, comprising:

a computing device configured to:

receive a user utterance and identify at least one semantic element within the first user utterance;

identify an intent associated with the at least one semantic element;

execute an intent flow associated with the identified intent, wherein the intent flow includes a set of tasks executed in a predetermined order;

generate a system utterance by instantiating a response template selected from a plurality of response templates associated with the executed intent; and

identify a missing semantic element required by the intent flow associated with the identified intent, wherein the missing semantic element is identified by a context mining component configured to:

maintain a context stack including a set of context entries, wherein each of the context entries comprises a root intent element, an entity list element, and a dialogue stack element, wherein the dialogue stack element comprises a sequentially-stored structured representation of each utterance received from a user associated with the user utterance;

review at least one context entry in the set of context entries to locate the missing semantic element within the dialogue stack element; and

generate an intent flow execution including the at least one semantic element from the user utterance and the missing semantic element;

review at least one prior utterance to locate the missing semantic element; and

execute the intent flow associated with the identified intent including the at least one semantic element from the user utterance and the missing semantic element identified from the at least one prior utterance.

2. The system of claim 1 , wherein the intent flow is executed by a task stitcher element configured to:

receive a request to execute the intent flow associated with the identified intent;

select a domain-specific intent flow from a set of intent flows associated with the identified intent;

execute a first task of the domain-specific intent flow, wherein the first task generates a first output;

execute a second task of the domain-specific intent flow, wherein the second task is selected based on the first output, and wherein the second task generates a second output.

3. The system of claim 2 , wherein the task stitcher is configured to receive one or more domain-specific intent flows from a designer system associated with a domain.

4. The system of claim 2 , wherein the first task comprises an entity check configured to determine if a first required entity is identified.

5. The system of claim 1 , wherein the system utterance is generated by a response generator component configured to implement a response generator task.

6. The system of claim 5 , wherein the response generator task is configured to select the response template from a plurality of response templates associated with the identified intent.

7. A method comprising:

receiving a user utterance and identify at least one semantic element within the user utterance,

identifying an intent associated with the at least one semantic element;

executing an intent flow associated with the identified intent, wherein the intent flow includes a set of tasks executed in a predetermined order;

generating a system utterance by instantiating a response template selected from a plurality of response templates associated with the executed intent;

identifying a missing semantic element required by the intent flow associated with the identified intent, wherein the missing semantic element is identified by a context mining component configured to:

maintain a context stack including a set of context entries, wherein each of the context entries comprises a root intent element, an entity list element, and a dialogue stack element, wherein the dialogue stack element comprises a sequentially-stored structured representation of each utterance received from a user associated with the user utterance;

review at least one context entry in the set of context entries to locate the missing semantic element within the dialogue stack element; and

generate an intent flow execution including the at least one semantic element from the user utterance and the missing semantic element;

reviewing at least one prior utterance to locate the missing semantic element; and

executing the intent flow associated with the identified intent including the at least one semantic element from the user utterance and the missing semantic element identified from the at least one prior utterance.

8. The method of claim 7 , wherein the intent flow is executed by a task stitcher element configured to:

receive a request to execute the intent flow associated with the identified intent;

select a domain-specific intent flow from a set of intent flows associated with the identified intent;

execute a first task of the domain-specific intent flow, wherein the first task generates a first output;

execute a second task of the domain-specific intent flow, wherein the second task is selected based on the first output, and wherein the second task generates a second output.

9. The method of claim 8 , comprising determining if a first required entity associated with the domain-specific intent flow is identified.

10. The system of claim 8 , wherein the task stitcher is configured to receive one or more domain-specific intent flows from a designer system associated with a domain.

11. The method of claim 7 , comprising selecting the response template from a plurality of response templates associated with the identified intent.

12. A non-transitory computer readable medium having instructions stored thereon, wherein the instructions, when executed by a processor cause a device to perform operations comprising:

receiving a user utterance and identify at least one semantic element within the user utterance;

identifying an intent associated with the at least one semantic element;

executing an intent flow associated with the identified intent, wherein the intent flow includes a set of tasks executed in a predetermined order;

generating a system utterance by instantiating a response template selected from a plurality of response templates associated with the executed intent;

identifying a missing semantic element required by the intent flow associated with the identified intent, wherein the missing semantic element is identified by a context mining component configured to:

maintain a context stack including a set of context entries, wherein each of the context entries comprises a root intent element, an entity list element, and a dialogue stack element, wherein the dialogue stack element comprises a sequentially-stored structured representation of each utterance received from a user associated with the user utterance;

review at least one context entry in the set of context entries to locate the missing semantic element within the dialogue stack element; and

generate an intent flow execution including the at least one semantic element from the user utterance and the missing semantic element;

reviewing at least one prior utterance to locate the missing semantic element; and

executing the intent flow associated with the identified intent including the at least one semantic element from the user utterance and the missing semantic element identified from the at least one prior utterance.

13. The non-transitory computer readable medium of claim 12 , wherein the instructions, when executed by the processor cause the device to perform operations comprising:

receiving a request to execute the intent flow associated with the identified intent;

selecting a domain-specific intent flow from a set of intent flows associated with the identified intent;

executing a first task of the domain-specific intent flow, wherein the first task generates a first output; and

executing a second task of the domain-specific intent flow, wherein the second task is selected based on the first output, and wherein the second task generates a second output.

14. The non-transitory computer readable medium of claim 12 , wherein the instructions, when executed by the processor cause the device to perform operations comprising selecting the response template from a plurality of response templates associated with the identified intent.

15. The method of claim 8 , wherein the first task comprises an entity check configured to determine if a first required entity is identified.

16. The method of claim 7 , wherein the system utterance is generated by a response generator component configured to implement a response generator task.

17. The non-transitory computer readable medium of claim 13 , wherein the first task comprises an entity check configured to determine if a first required entity is identified.

18. The non-transitory computer readable medium of claim 12 , wherein the system utterance is generated by a response generator component configured to implement a response generator task.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2018
From: MUKHERJEE, SNEHASISH; SUBRAMANYA, SHANKARA BHARGAVA
To: WALMART APOLLO, LLC
Reel/Frame 047375/0196 →
Continuity (1)
Related Publication 20200135180A1 · Apr 30, 2020
Cited By (1)
US 12,531,060