US12131522B2ActiveUtilityA1

Contextual auto-completion for assistant systems

78
Assignee: META PLATFORMS INCPriority: Apr 20, 2018Filed: Oct 22, 2020Granted: Oct 29, 2024
Est. expiryApr 20, 2038(~11.8 yrs left)· nominal 20-yr term from priority
G06Q 10/40G06N 3/0442G06N 3/0464G06N 3/09G06F 21/6245H04L 5/02G06V 10/764G06N 7/01G06F 18/2411G06F 40/205G06F 16/90335H04L 67/75H04L 51/18H04L 67/53H04L 67/5651H04L 67/535H04L 51/216H04L 51/52G06F 40/295G06V 40/28G06V 20/10G10L 15/187G10L 15/02G06F 3/013G06F 2216/13G06F 16/24552G06F 16/243G06F 16/951G06F 16/248G06F 16/24578G10L 17/06G06N 3/006G06F 16/3329G10L 17/22G10L 15/07H04W 12/08H04L 41/22H04L 41/20H04L 12/2816G10L 2015/225H04L 43/0894H04L 43/0882G06F 7/14G06F 16/2365G06F 16/2255G10L 13/04G10L 13/00G06F 40/40G06F 40/30G06F 16/904G06F 16/9038G10L 15/26G10L 2015/223G10L 15/1822G06F 3/167H04L 51/02G06F 16/24575G06F 16/90332H04L 51/046G06F 3/017G06F 3/011G10L 15/16G10L 15/063G06F 16/176H04L 67/306G06F 16/9535G06N 20/00G06F 16/3344G06F 16/3323G06F 16/338G10L 15/22H04L 67/10G10L 15/183G10L 15/1815G06F 9/453G06N 3/045H04L 51/222H04L 63/102G06V 10/82G06N 3/08G06N 5/027G06N 5/022G06F 40/274G10L 17/00G06F 9/4451G06F 9/44505G06F 8/31G06F 16/9532G06F 16/3322G06Q 10/00G06Q 50/01G06Q 10/42G06Q 10/48
78
PatentIndex Score
0
Cited by
960
References
20
Claims

Abstract

In one embodiment, a method includes receiving a first user input from a first user, wherein the first user input comprises a partial request, presenting one or more suggested intent auto-completions corresponding to the partial request, receiving a selection by the first user of a first suggested intent auto-completion of the suggested intent auto-completions and a second user input, presenting one or more suggested slot auto-completions corresponding to one or more candidate slot-hypotheses corresponding to the second user input, respectively, wherein each of the candidate slot-hypotheses comprise a slot-suggestion, and wherein each suggested slot auto-completion comprises the second user input and the corresponding candidate slot-hypothesis, receiving a selection by the first user of a first suggested slot auto-completion of the suggested slot auto-completions, and presenting execution results of one or more tasks corresponding to the first suggested intent auto-completion and the first suggested slot auto-completion.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method comprising, by a client system:
 receiving a first user input from a first user, wherein the first user input comprises a partial request; 
 presenting one or more suggested intent auto-completions corresponding to the partial request; 
 receiving a selection by the first user of a first suggested intent auto-completion of the one or more suggested intent auto-completions and a second user input; 
 presenting one or more suggested slot auto-completions corresponding to one or more candidate slot-hypotheses corresponding to the second user input, respectively, wherein each of the one or more candidate slot-hypotheses comprise a slot-suggestion, and wherein each suggested slot auto-completion comprises the second user input and the corresponding candidate slot-hypothesis; 
 receiving a selection by the first user of a first suggested slot auto-completion of the one or more suggested slot auto-completions; and 
 presenting execution results of one or more tasks corresponding to the first suggested intent auto-completion and the first suggested slot auto-completion. 
 
     
     
       2. The method of  claim 1 , wherein the one or more suggested intent auto-completions correspond to one or more candidate intent-hypotheses, wherein the one or more candidate intent-hypotheses correspond to the partial request, wherein each of the one or more candidate intent-hypotheses comprises an intent-suggestion, and wherein each of the one or more suggested intent auto-completions comprises the partial request and the corresponding candidate intent-hypothesis. 
     
     
       3. The method of  claim 2 , further comprising analyzing, based on a personalized language model, the first user input to generate the one or more candidate intent-hypotheses corresponding to the partial request, wherein the analysis comprises:
 analyzing, based on the personalized language model, the first user input to determine one or more candidate intents. 
 
     
     
       4. The method of  claim 3 , further comprising:
 presenting, at the client system, a request for additional information from the first user; receiving, at the client system, an additional user input by the first user responsive to the request; and 
 disambiguating, based on the additional user input, the one or more candidate intents to determine a top candidate intent to provide as an intent-suggestion for one of the candidate intent-hypotheses. 
 
     
     
       5. The method of  claim 3 , wherein analyzing the first user input to generate the one or more candidate intent-hypotheses corresponding to the partial request is further based on one or more context-specific language models. 
     
     
       6. The method of  claim 5 , further comprising:
 accessing, by a dialog engine, a dialog state of a dialog session associated with the first user input; 
 selecting a particular context-specific language model from the one or more context-specific language models based on the dialog state; and 
 generating the one or more candidate intent-hypotheses based on the personalized language model and the selected context-specific model. 
 
     
     
       7. The method of  claim 5 , wherein the one or more context-specific language models are trained based on context-specific data comprising one or more of:
 data associated with presences of the first user at particular locations; 
 data associated with interactions of the first user with particular users; or 
 data associated with registrations of the first user at particular events. 
 
     
     
       8. The method of  claim 3 , wherein analyzing the first user input to generate the one or more candidate intent-hypotheses corresponding to the partial request is further based on one or more global language models, wherein the one or more global language models are trained based on data associated with a plurality of users of an online social network. 
     
     
       9. The method of  claim 3 , wherein analyzing the first user input to generate the one or more candidate intent-hypotheses corresponding to the partial request is further based on one or more global context-specific language models. 
     
     
       10. The method of  claim 1 , further comprising analyzing, based on a personalized language model, the second user input to generate the one or more candidate slot-hypotheses corresponding to the second user input, wherein the analysis comprises:
 analyzing, based on the personalized language model, the second user input to determine one or more candidate slots. 
 
     
     
       11. The method of  claim 10 , further comprising:
 presenting, at the client system, one or more slot-suggestions corresponding to the one or more possible slots; and 
 receiving, at the client system, a selection by the first user of one of the one or more slot-suggestions, wherein the selected slot suggestion is provided as a slot-suggestion for one of the candidate slot-hypotheses. 
 
     
     
       12. The method of  claim 10 , further comprising:
 presenting, at the client system, a request for additional information by the first user; receiving, at the client system, an additional user input by the first user responsive to the request; and 
 disambiguating, based on the additional user input, the one or more candidate slots to determine a top candidate slot to provide as a slot-suggestion for one of the candidate slot-hypotheses. 
 
     
     
       13. The method of  claim 10 , wherein the personalized language model is trained based on a plurality of training data comprising one or more of:
 newsfeed posts associated with the first user; 
 newsfeed comments associated with the first user; 
 messages in one or more messaging interfaces associated with the first user; 
 data characterizing one or more domains; 
 dialog states of one or more dialog sessions associated with the first user; 
 user profile data associated with the first user; or 
 task states associated with one or more tasks. 
 
     
     
       14. The method of  claim 10 , wherein the one or more candidate slot-hypotheses are associated with one or more confidence scores, respectively, wherein the one or more confidence scores are calculated by the personalized language model, and wherein the one or more candidate slot-hypotheses are ranked based on their respective confidence scores. 
     
     
       15. The method of  claim 14 , further comprising:
 receiving, at the client system, an additional user input, wherein the additional user input is appended to the second user input; 
 updating, for the one or more candidate slot-hypotheses, the one or more confidence scores based on the additional user input; and 
 re-ranking the one or more candidate slot-hypotheses based on the updated confidence scores. 
 
     
     
       16. The method of  claim 10 , further comprising:
 applying a sliding window to the second user input, wherein a length of the sliding window determines a percentage of the second user input to use as a model input to the personalized language model. 
 
     
     
       17. The method of  claim 16 , further comprising:
 determining if at least one confidence score of the one or more confidence scores associated with the one or more candidate slot-hypothesis is smaller than a threshold score; and 
 upon determining that at least one confidence score is smaller than the threshold score, adjusting the length of the sliding window. 
 
     
     
       18. The method of  claim 1 , wherein each of the one or more candidate slot-hypotheses corresponds to a subsequent entry associated with the second user input. 
     
     
       19. One or more computer-readable non-transitory non-volatile storage media embodying software that is operable when executed to:
 receive a first user input from a first user, wherein the first user input comprises a partial request; 
 present one or more suggested intent auto-completions corresponding to the partial request; 
 receive a selection by the first user of a first suggested intent auto-completion of the one or more suggested intent auto-completions and a second user input; 
 present one or more suggested slot auto-completions corresponding to one or more candidate slot-hypotheses corresponding to the second user input, respectively, wherein each of the one or more candidate slot-hypotheses comprise a slot-suggestion, and wherein each suggested slot auto-completion comprises the second user input and the corresponding candidate slot-hypothesis; 
 receive a selection by the first user of a first suggested slot auto-completion of the one or more suggested slot auto-completions; and 
 present execution results of one or more tasks corresponding to the first suggested intent auto-completion and the first suggested slot auto-completion. 
 
     
     
       20. A system comprising: one or more processors; and a non-transitory non-volatile memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to:
 receive a first user input from a first user, wherein the first user input comprises a partial request; 
 present one or more suggested intent auto-completions corresponding to the partial request; 
 receive a selection by the first user of a first suggested intent auto-completion of the one or more suggested intent auto-completions and a second user input; 
 present one or more suggested slot auto-completions corresponding to one or more candidate slot-hypotheses corresponding to the second user input, respectively, wherein each of the one or more candidate slot-hypotheses comprise a slot-suggestion, and wherein each suggested slot auto-completion comprises the second user input and the corresponding candidate slot-hypothesis; 
 receive a selection by the first user of a first suggested slot auto-completion of the one or more suggested slot auto-completions; and 
 present execution results of one or more tasks corresponding to the first suggested intent auto-completion and the first suggested slot auto-completion.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.