IP Library Granted Patent US 12,019,685
Granted Patent B1
US 12,019,685 · App. 16/742,769 · Granted Jun 25, 2024

Context carryover across tasks for assistant systems

Inventors: Xiaohu Liu (Bellevue, WA); Kai Jun Weng (Seattle, WA); Zhiguang Wang (Bellevue, WA); Paul Anthony Crook (Newcastle, WA)
Assignee: Meta Platforms Technologies, LLC
G06F16/90332G06F9/4862G06F9/4881G10L15/22G10L2015/228
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 12,019,685
App. No.
16/742,769
Granted
Jun 25, 2024
Kind
B1
Abstract

In one embodiment, a method includes maintaining contextual information from a first user request associated with a first task by a context engine, wherein the first task is associated with a first agent, receiving a second user request associated with a second task from a client system, wherein the second user request comprises an ambiguous mention and the second task is associated with a second agent, determining a context carryover is required for the second agent to execute the second task, determining the ambiguous mention corresponds to one or more data items associated with the contextual information from the first user request, and providing the one or more data items to the second agent for execution of the second task.

Claims (52)

1. A method comprising, by one or more computing systems:

receiving, from a client system, a first user request associated with a first task during a first dialog session, wherein the first task is associated with a first agent;

sending, to the client system, instructions for presenting a corresponding system response during the first dialog session;

maintaining, by a context engine, contextual information from the first dialog session, wherein the contextual information comprises the first user request and the corresponding system response, and wherein the contextual information further comprises one or more identifiers of one or more entities, respectively, and one or more slots;

receiving, from the client system, a second user request associated with a second task during the first dialog session, wherein the second user request comprises an ambiguous mention, and wherein the second task is associated with a second agent;

determining a context carryover is required for the second agent to execute the second task;

determining, based on the second agent and first resources of the one or more identifiers of the one or more entities and second resources of the one or more slots, a first subset of the one or more identifiers of the one or more entities and a second subset of the one or more slots of the contextual information from the first dialog session are shareable with the second agent;

determining the ambiguous mention corresponds to one or more data items associated with the contextual information from the first user request and the corresponding system response; and

providing the one or more data items and the first subset of the one or more identifiers of the one or more entities and the second subset of the one or more slots of the shareable contextual information to the second agent for execution of the second task.

2. The method of claim 1 , further comprising:

executing the first task by the first agent;

generating the corresponding system response based on the execution of the first task; and

storing the contextual information from the first user request and the corresponding system response in the context engine.

3. The method of claim 2 , wherein the first user request is received prior to the second user request.

4. The method of claim 1 , wherein the first agent and the second agent are different agents.

5. The method of claim 1 , wherein the first agent is associated with a first-party system and the second agent is associated with a third-party system that is separate from and external to the first-party system.

6. The method of claim 1 , wherein providing the one or more data items and the first subset of the one or more identifiers of the one or more entities and the second subset of the one or more slots of the shareable contextual information to the second agent comprises:

accessing the one or more data items and the first subset of the one or more identifiers of the one or more entities and the second subset of the one or more slots of the shareable contextual information by the first agent; and

sending the one or more data items and the first subset of the one or more identifiers of the one or more entities and the second subset of the one or more slots of the shareable contextual information from the first agent to the second agent.

7. The method of claim 1 , further comprising:

determining whether the context carryover is permitted per one or more privacy settings, wherein the one or more data items and the first subset of the one or more identifiers of the one or more entities and the second subset of the one or more slots of the shareable contextual information are provided to the second agent responsive to determining that the context carryover is permitted per the one or more privacy settings.

8. The method of claim 1 , wherein the first task and the second task are associated with different domains.

9. The method of claim 1 , wherein the first user request and the second user request are associated with different modalities.

10. The method of claim 9 , wherein determining the context carryover is required is based on a difference between the modalities associated with the first user request and the second user request.

11. The method of claim 1 , further comprising:

determining one or more intents and the one or more slots associated with the second user request.

12. The method of claim 11 , wherein determining the context carryover is required is based on one or more of an intent-confidence score associated with each intent or a slot-confidence score associated with each slot.

13. The method of claim 1 , wherein determining the context carryover is required is based on one or more task policies associated with the second task.

14. The method of claim 1 , wherein determining the context carryover is required is based on one or more machine-learning models.

15. The method of claim 14 , wherein the machine-learning models are trained based on training data generated by a stitching multi-task conversation model.

16. The method of claim 1 , further comprising:

determining whether a user confirmation is required for the context carryover; and

providing a prompt to confirm the context carryover responsive to determining that user confirmation is required.

17. The method of claim 1 , wherein the contextual information is stored in a dialog state associated with the first user request.

18. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive, from a client system, a first user request associated with a first task during a first dialog session, wherein the first task is associated with a first agent;

send, to the client system, instructions for presenting a corresponding system response during the first dialog session;

maintain, by a context engine, contextual information from the first dialog session, wherein the contextual information comprises the first user request and the corresponding system response, and wherein the contextual information further comprises one or more identifiers of one or more entities, respectively, and one or more slots;

receive, from the client system, a second user request associated with a second task during the first dialog session, wherein the second user request comprises an ambiguous mention, and wherein the second task is associated with a second agent;

determine a context carryover is required for the second agent to execute the second task;

determine, based on the second agent and first resources of the one or more identifiers of the one or more entities and second resources of the one or more slots, a first subset of the one or more identifiers of the one or more entities and a second subset of the one or more slots of the contextual information from the first dialog session are shareable with the second agent;

determine the ambiguous mention corresponds to one or more data items associated with the contextual information from the first user request and the corresponding system response; and

provide the one or more data items and the first subset of the one or more identifiers of the one or more entities and the second subset of the one or more slots of the shareable contextual information to the second agent for execution of the second task.

19. A system comprising: one or more processors; and a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:

receive, from a client system, a first user request associated with a first task during a first dialog session, wherein the first task is associated with a first agent;

send, to the client system, instructions for presenting a corresponding system response during the first dialog session;

maintain, by a context engine, contextual information from the first dialog session, wherein the contextual information comprises the first user request and the corresponding system response, and wherein the contextual information further comprises one or more identifiers of one or more entities, respectively, and one or more slots;

receive, from the client system, a second user request associated with a second task during the first dialog session, wherein the second user request comprises an ambiguous mention, and wherein the second task is associated with a second agent;

determine a context carryover is required for the second agent to execute the second task;

determine, based on the second agent and first resources of the one or more identifiers of the one or more entities and second resources of the one or more slots, a first subset of the one or more identifiers of the one or more entities and a second subset of the one or more slots of the contextual information from the first dialog session are shareable with the second agent;

determine the ambiguous mention corresponds to one or more data items associated with the contextual information from the first user request and the corresponding system response; and

provide the one or more data items and the first subset of the one or more identifiers of the one or more entities and the second subset of the one or more slots of the shareable contextual information to the second agent for execution of the second task.

Assignments (2)
CHANGE OF NAME Recorded Jul 6, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060591/0848 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2020
From: LIU, XIAOHU; WENG, KAI JUN; WANG, ZHIGUANG; CROOK, PAUL ANTHONY
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 051550/0238 →
Continuity (1)
Provisional Application 62923342 · Oct 18, 2019
Cited By (1)
US 12,562,163