IP Library Granted Patent US 11,886,473
Granted Patent B2
US 11,886,473 · App. 18/068,384 · Granted Jan 30, 2024

Intent identification for agent matching by assistant systems

Inventors: Baiyang Liu (Bellevue, WA); Benoit F. Dumoulin (Palo Alto, CA); Carlos Garcia Jurado Suarez (Redmond, WA); Xiaohu Liu (Bellevue, WA)
Assignee: Meta Platforms, Inc.
G06F16/3329G06F3/011G06F3/013G06F3/017G06F3/167G06F7/14G06F9/453G06F16/176G06F16/2255G06F16/2365G06F16/243G06F16/248G06F16/24552G06F16/24575G06F16/24578G06F16/338G06F16/3323G06F16/3344G06F16/904G06F16/9038G06F16/90332G06F16/90335G06F16/951G06F16/9535G06F18/2411G06F40/205G06F40/295G06F40/30G06F40/40G06N3/006G06N3/08G06N7/01G06N20/00G06Q10/00G06Q50/01G06V10/764G06V10/82G06V20/10G06V40/28G10L15/02G10L15/063G10L15/07G10L15/16G10L15/183G10L15/187G10L15/1815G10L15/1822G10L15/22G10L15/26G10L17/06G10L17/22H04L12/2816H04L41/20H04L41/22H04L43/0882H04L43/0894H04L51/02H04L51/18H04L51/216H04L51/52H04L67/306H04L67/535H04L67/5651H04L67/75H04W12/08G06F2216/13G10L13/00G10L13/04G10L2015/223G10L2015/225H04L51/046H04L67/10H04L67/53
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,886,473
App. No.
18/068,384
Granted
Jan 30, 2024
Kind
B2
Abstract

In one embodiment, a method includes receiving a user request from a first user at a client system, wherein the user request is associated with a semantic-intent, identifying dialog-intents associated with the user request by the client system based on the semantic-intent and context information associated with the user request, wherein each dialog-intent is a sub-intent of the semantic-intent; determining agents for executing tasks associated with the dialog-intents by the client system, and presenting information returned from the agents responsive to executing the tasks at the client system.

Claims (57)

1. A method comprising, by a client system:

receiving, at the client system, a user request from a first user, wherein the user request is associated with a semantic-intent;

identifying, by the client system, a plurality of dialog-intents associated with the user request based on the semantic-intent and context information associated with the user request, wherein each dialog-intent is a sub-intent of the semantic-intent;

determining, by the client system, a plurality of agents for executing a plurality of tasks associated with the plurality of dialog-intents; and

presenting, at the client system, information returned from the plurality of agents responsive to executing the plurality of tasks.

2. The method of claim 1 , further comprising:

parsing, by a natural-language understanding module, the user request to identify one or more slots, wherein identifying the plurality of dialog-intents is further based on the one or more slots.

3. The method of claim 2 , further comprising:

sending the plurality of dialog-intents and the one or more slots to the plurality of agents for executing the plurality of tasks; and

receiving, from the plurality of agents, the information responsive to executing the plurality of tasks.

4. The method of claim 2 , wherein identifying the plurality of dialog-intents associated with the user request comprises:

determining a plurality of candidate dialog-intents based on one or more domains associated with the semantic-intent and the one or more slots;

calculating a plurality of confidence scores for the plurality of candidate dialog-intents; and

identifying the plurality of dialog-intents from the plurality of candidate dialog-intents based on their respective confidence scores.

5. The method of claim 1 , wherein identifying the plurality of dialog-intents is based on a ranker model.

6. The method of claim 5 , wherein the ranker model is customized based on user profile data associated with the first user.

7. The method of claim 5 , wherein the ranker model is a machine-learning model trained based on a plurality of training samples comprising one or more of: (1) a plurality of user requests, (2) a plurality of positive dialog-intents, or (3) a plurality of negative dialog-intents.

8. The method of claim 7 , wherein the plurality of training samples are generated based on one or more dry runs, each dry run comprising:

accessing a dry-run request, wherein the dry-run request is associated with one or more domains;

executing, via a plurality of dry-run agents, a plurality of dry-run tasks associated with the dry-run request;

determining a plurality of dry-run dialog-intents based on information returned from each of the plurality of dry-run agents responsive to executing the plurality of dry-run tasks;

selecting one or more dialog-intents from the determined plurality of dry-run dialog-intents; and

annotating the selected one or more dialog-intents as positive dialog-intents and remaining non-selected dialog-intents as negative dialog-intents.

9. The method of claim 8 , further comprising generating feature representations for the plurality of training samples based on one or more of:

a plurality of capability values associated with the plurality of dry-run agents, each capability value indicating a confidence of a corresponding dry-run agent being able to execute a particular task;

information returned from the plurality of dry-run agents responsive to executing the plurality of dry-run tasks;

one or more dialog states associated with one or more dry-run requests corresponding to the one or more dry runs;

a plurality of semantic-intents associated with the one or more dry-run requests corresponding to the one or more dry runs;

one or more device contexts of one or more client systems associated with one or more users associated with the one or more dry runs; or

user profile data associated with the one or more users.

10. The method of claim 9 , wherein each dry-run request in each dry run is associated with a particular dialog session, and wherein each dialog state indicates one or more of a domain or a context associated with the particular dialog session at a time associated with the dialog session.

11. The method of claim 9 , further comprising:

generating feature representations for the information returned from the plurality of dry-run agents responsive to executing the dry-run tasks; and

re-training the ranker model based on the generated feature representations.

12. The method of claim 1 , wherein the user request is associated with one or more domains, and wherein each of the plurality of dialog-intents is associated with one of the one or more domains.

13. The method of claim 1 , wherein the presented information comprises one or more of:

a character string;

an audio clip;

an image; or

a video clip.

14. The method of claim 1 , further comprising determining one or more modalities for the presented information.

15. The method of claim 14 , wherein determining the one or more modalities for the presented information comprises:

identifying contextual information associated with the first user;

identifying contextual information associated with the client system; and

determining the one or more modalities based on the contextual information associated with the first user and the contextual information associated with the client system.

16. The method of claim 1 , wherein the plurality of agents execute the plurality of tasks in parallel.

17. The method of claim 1 , wherein each of the plurality of agents is implemented with an application programming interface (API), and wherein the API receives a command from a dialog engine for executing one of the plurality of tasks.

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

receive, at a client system, a user request from a first user, wherein the user request is associated with a semantic-intent;

identify, by the client system, a plurality of dialog-intents associated with the user request based on the semantic-intent and context information associated with the user request, wherein each dialog-intent is a sub-intent of the semantic-intent;

determine, by the client system, a plurality of agents for executing a plurality of tasks associated with the plurality of dialog-intents; and

present, at the client system, information returned from the plurality of agents responsive to executing the plurality of tasks.

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, at a client system, a user request from a first user, wherein the user request is associated with a semantic-intent;

identify, by the client system, a plurality of dialog-intents associated with the user request based on the semantic-intent and context information associated with the user request, wherein each dialog-intent is a sub-intent of the semantic-intent;

determine, by the client system, a plurality of agents for executing a plurality of tasks associated with the plurality of dialog-intents; and

present, at the client system, information returned from the plurality of agents responsive to executing the plurality of tasks.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2024
From: LIU, BAIYANG; DUMOULIN, BENOIT F.; SUAREZ, CARLOS GARCIA JURADO; LIU, XIAOHU
To: FACEBOOK, INC
Reel/Frame 066299/0612 →
CHANGE OF NAME Recorded Jan 30, 2024
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 066382/0258 →