IP Library Granted Patent US 11,823,289
Granted Patent B2
US 11,823,289 · App. 18/061,910 · Granted Nov 21, 2023

User controlled task execution with task persistence for assistant systems

Inventors: Xiaohu Liu (Bellevue, WA); Zhiguang Wang (Bellevue, WA); Rajen Subba (San Carlos, CA)
Assignee: Meta Platforms Technologies, LLC
G06Q50/01G06F3/011G06F3/013G06F9/453G06F9/485G06F9/4881G06F9/547G06F16/3329G06F16/90332G06F16/9536G06F18/2321G06F40/205G06F40/242G06F40/253G06F40/30G06F40/35G06F40/56G06N3/045G06N3/047G06N3/08G06N20/00G06Q10/109G06V10/255G06V10/764G06V10/82G06V20/00G06V20/20G06V20/30G06V40/16G06V40/25G10L15/063G10L15/08G10L15/16G10L15/1815G10L15/1822G10L15/22G10L15/30G10L15/32H04L51/18H04L51/212H04L51/222H04L51/224H04L51/52H04L67/306H04L67/75H04N7/147G06F3/017G06F3/167G06V20/41G06V40/174G06V2201/10G10L2015/088G10L2015/223G10L2015/227
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,823,289
App. No.
18/061,910
Granted
Nov 21, 2023
Kind
B2
Abstract

In one embodiment, a method includes receiving a first user request at a client system to suspend a first task being executed by an assistant system operating on the client system, suspending the execution of the first task responsive to the first user request, receiving a second user request at the client system, determining that the second user request is a request to resume the suspended first task based on user interactions with the assistant system with respect to one or more entities associated with the first task, and presenting a prompt to resume the first task at the client system.

Claims (53)

1. A method comprising, by a client system:

receiving, at the client system, a first user request to suspend a first task being executed by an assistant system operating on the client system;

suspending the execution of the first task responsive to the first user request;

receiving, at the client system, a second user request;

determining, based on user interactions with the assistant system with respect to one or more entities associated with the first task, that the second user request is a request to resume the suspended first task; and

presenting, at the client system, a prompt to resume the first task.

2. The method of claim 1 , further comprising:

determining, by a natural-language understanding module, the first user request is associated with a meta-intent to suspend the first task.

3. The method of claim 1 , further comprising:

determining, based on a current dialog state and contextual information associated with the first user request, that the first task is associated with the first user request.

4. The method of claim 1 , further comprising:

determining, by a natural-language understanding module, the second user request is associated with a meta-intent to resume the first task.

5. The method of claim 1 , further comprising:

determining, based on a current dialog state and contextual information associated with the second user request, that the suspended first task is associated with the second user request.

6. The method of claim 1 , wherein the first task comprises one or more sub-tasks, wherein the method further comprises:

storing a dialog state for the first task in response to the first user request, wherein the dialog state comprises results of executed sub-tasks of the first task and a status indicating the first task is suspended.

7. The method of claim 6 , wherein storing the dialog state for the first task comprises:

allocating a particular portion of the dialog state to the first task, wherein the particular portion is associated with one or more of a task identifier or a task name associated with the first task.

8. The method of claim 7 , further comprising:

accessing the dialog state for the first task.

9. The method of claim 8 , wherein accessing the dialog state for the first task comprises:

identifying the particular portion of the dialog state based on one or more of the task identifier or the task name associated with the first task; and

retrieving the particular portion of the stored dialog state, wherein the retrieved portion comprises the dialog state for the first task.

10. The method of claim 8 , wherein accessing the dialog state for the first task is based on one or more task policies.

11. The method of claim 8 , wherein the prompt comprises a summary of the first task, wherein the summary is generated based on the accessed dialog state.

12. The method of claim 11 , wherein the summary is generated by a natural-language generation (NLG) module based on one or more of a language-template or a language model.

13. The method of claim 6 , wherein the dialog state for the first task is stored in a dialog state stack, wherein the storing of the dialog state in the dialog state stack is based on a priority associated with the first task.

14. The method of claim 6 , wherein storing the dialog state for the first task is based on one or more task policies.

15. The method of claim 1 , wherein the first or second user requests are based on one or more of a textual input, an image input, a video input, an audio input, or a gesture input.

16. The method of claim 1 , wherein the first user request is from a first user, wherein the method further comprises:

determining, based on one or more of contextual information associated with the first user or a policy associated with the first task, that the first user needs to be reminded of the suspended first task; and

presenting, at the client system, a notification reminding the first user of the suspended first task.

17. The method of claim 1 , further comprising:

receiving, at the client system, a third user request to execute a second task;

executing the second task; and

resuming the first task based on execution results of the second task.

18. The method of claim 1 , further comprising:

generating a task-function based on the suspension and resuming of the first task, wherein the task-function comprises one or more default intents and one or more slot-values for one or more slots associated with the first task, respectively, and wherein the task-function is associated with a task alias;

receiving, at the client system, a user call from a user, wherein the user call comprises the task alias;

presenting, at the client system, a summary of the task-function based on the default intents and the slot-values; and

executing the first task based on the default intents and the slot-values upon receiving a confirmation from the user.

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

receive, at a client system, a first user request to suspend a first task being executed by an assistant system operating on the client system;

suspend the execution of the first task responsive to the first user request;

receive, at the client system, a second user request;

determine, based on user interactions with the assistant system with respect to one or more entities associated with the first task, that the second user request is a request to resume the suspended first task; and

present, at the client system, a prompt to resume the first task.

20. 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, at a client system, a first user request to suspend a first task being executed by an assistant system operating on the client system;

suspend the execution of the first task responsive to the first user request;

receive, at the client system, a second user request;

determine, based on user interactions with the assistant system with respect to one or more entities associated with the first task, that the second user request is a request to resume the suspended first task; and

present, at the client system, a prompt to resume the first task.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2024
From: LIU, XIAOHU; WANG, ZHIGUANG; SUBBA, RAJEN
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 066299/0796 →
CHANGE OF NAME Recorded Jan 30, 2024
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 066382/0261 →
Cited By (3)
US 12,224,972 US 12,238,058 US 12,432,169