IP Library Granted Patent US 10,949,616
Granted Patent B1
US 10,949,616 · App. 16/107,847 · Granted Mar 16, 2021

Automatically detecting and storing entity information for assistant systems

Inventors: Rajesh Krishna Shenoy (Cupertino, CA); Laurent Nicolas Landowski (Emerald Hills, CA); Anthony Robert Kesich (Oakland, CA)
Assignee: Facebook, Inc.
G06F40/30G06F16/313G06F16/9535G06F40/295G10L15/1815H04L51/32
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 10,949,616
App. No.
16/107,847
Granted
Mar 16, 2021
Kind
B1
Abstract

In one embodiment, a method includes receiving, from a first client system associated with a first user, a message sent from the first user to a second user, analyzing the message from the first user to identify one or more intents and one or more slots of the received message, computing a confidence score for the intent to offer entity information based on user behavior history records associated with the second user, sending, to a second client system associated with the second user, if the confidence score exceeds a threshold score, instructions for presenting a suggestion to the second user to store the values for entity information in association with a profile record for the entity, and receiving, from the second client system associated with the second user, an indication from the second user confirming the values for entity information should be stored with the profile record for the entity.

Claims (52)

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

receiving, at the one or more computing systems from a first client system associated with a first user, a message sent from the first user to a second user in a message thread between the first and second users;

analyzing, by the one or more computing systems, the message from the first user to identify one or more intents and one or more slots of the received message, wherein at least one of the identified intents is an intent to offer entity information, and wherein one or more of the slots comprise values for entity information extracted from the message, wherein the entity information is of a particular information type associated with an entity, and wherein the entity belongs to a particular entity domain;

computing, by the one or more computing systems, a confidence score for the intent to offer entity information based on user behavior history records associated with the second user;

sending, from the one or more computing systems to a second client system associated with the second user, if the confidence score exceeds a threshold score, instructions for presenting a suggestion within the message thread to the second user to store the values for entity information extracted from the message in association with a profile record for the entity, wherein privacy settings associated with the second user indicate that values of entity information can automatically be stored with the profile records for the respective entities; and

receiving, at the one or more computing systems from the second client system associated with the second user, an indication from the second user confirming the values for entity information extracted from the message should be stored with the profile record for the entity.

2. The method of claim 1 , further comprising:

sending, from the one or more computing systems to the second client system associated with the second user, instructions for presenting the message from the first user.

3. The method of claim 1 , wherein analyzing the message from the first user comprises performing a semantic parsing on the received message to extract the one or more intents and the one or more slots.

4. The method of claim 1 , wherein analyzing the message from the first user comprises processing the received message with a natural-language processing (NLP) algorithm to identify the one or more intents and the one or more slots.

5. The method of claim 1 , wherein the suggestion is generated based on the at least one of the identified intents to offer entity information and the values for entity information associated with the entity.

6. The method of claim 1 , further comprising:

determining, based on privacy settings associated with the entity, whether presenting the suggestion to store the values for entity information in association with the profile record for the entity to the second user is allowed.

7. The method of claim 1 , wherein the user behavior history records comprise information on past responses of the second user to suggestions to store values for entity information of the particular information type in association with profile records for entities of the particular entity domain.

8. The method of claim 1 , wherein the user behavior history records comprise information on an interaction rate of the second user with entity information of the particular information type associated with entities of the particular entity domain.

9. The method of claim 1 , further comprising:

updating the user behavior history records associated with the second user based on the received indication from the second user, wherein the user behavior history records comprise information on the particular information type, the particular entity domain, a suggestion type, and the received indication; and

storing the updated user behavior history records in association with a user profile of the second user.

10. The method of claim 1 , further comprising:

storing, to a data store, the values for entity information in association with the profile record for the entity.

11. The method of claim 10 , further comprising:

receiving, from the second client system associated with the second user, a search query for the profile record for the entity;

retrieving, from the data store, the profile record for the entity, wherein the profile record comprises the values for entity information; and

sending, to the second client system associated with the second user, instructions for presenting the profile record for the entity with the values for entity information.

12. The method of claim 11 , further comprising:

updating the user behavior history records associated with the second user based on the received search query, wherein the user behavior history records comprise information on the particular information type as an information type and the particular entity domain as an entity domain associated with the search query; and

storing the updated user behavior history records in association with a user profile of the second user.

13. The method of claim 1 , if the values for entity information is associated with a future event, further comprising:

sending, to the second client system associated with the second user, instructions for presenting a suggestion to the second user to set a reminder for the future event, wherein the suggestion comprises the values for entity information;

receiving, from the second client system associated with the second user, an indication from the second user confirming the reminder for the future event should be set;

setting a timer for the reminder at a determined reminder time; and

sending, to the second client system associated with the second user, instructions for presenting a reminder comprising the values for entity information to the second user.

14. The method of claim 10 , wherein storing the values for entity information in association with the profile record for the entity comprises storing the values for entity information in association with an identifier for the message thread in that the values for entity information are offered.

15. The method of claim 14 , further comprising:

receiving, from the client system associated with the second user, a signal indicating that the second user returns to the message thread after being away for more than a predetermined amount of time;

retrieving all the values for entity information stored in association with the identifier for the message thread; and

sending, to the client system associated with the second user, instructions to display the retrieved values for entity information on a screen of the client system, wherein the displayed values for entity information are to refresh memory of the second user.

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

receive, from a first client system associated with a first user, a message sent from the first user to a second user in a message thread between the first and second users;

analyze the message from the first user to identify one or more intents and one or more slots of the received message, wherein at least one of the identified intents is an intent to offer entity information, and wherein one or more of the slots comprise values for entity information extracted from the message, wherein the entity information is of a particular information type associated with an entity, and wherein the entity belongs to a particular entity domain;

compute a confidence score for the intent to offer entity information based on user behavior history records associated with the second user;

send, to a second client system associated with the second user, if the confidence score exceeds a threshold score, instructions for presenting a suggestion within the message thread to the second user to store the values for entity information extracted from the message in association with a profile record for the entity, wherein privacy settings associated with the second user indicate that values of entity information can automatically be stored with the profile records for the respective entities; and

receive, from the second client system associated with the second user, an indication from the second user confirming the values for entity information extracted from the message should be stored with the profile record for the entity.

17. The media of claim 16 , wherein the software is further operable when executed to:

send, to the second client system associated with the second user, instructions for presenting the message from the first user.

18. The media of claim 16 , wherein analyzing the message from the first user comprises performing a semantic parsing on the received message to extract the one or more intents and the one or more slots.

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 first client system associated with a first user, a message sent from the first user to a second user in a message thread between the first and second users;

analyze the message from the first user to identify one or more intents and one or more slots of the received message, wherein at least one of the identified intents is an intent to offer entity information, and wherein one or more of the slots comprise values for entity information extracted from the message, wherein the entity information is of a particular information type associated with an entity, and wherein the entity belongs to a particular entity domain;

compute a confidence score for the intent to offer entity information based on user behavior history records associated with the second user;

send, to a second client system associated with the second user, if the confidence score exceeds a threshold score, instructions for presenting a suggestion within the message thread to the second user to store the values for entity information extracted from the message in association with a profile record for the entity, wherein privacy settings associated with the second user indicate that values of entity information can automatically be stored with the profile records for the respective entities; and

receive, from the second client system associated with the second user, an indication from the second user confirming the values for entity information extracted from the message should be stored with the profile record for the entity.

Assignments (2)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2018
From: SHENOY, RAJESH KRISHNA; LANDOWSKI, LAURENT NICOLAS; KESICH, ANTHONY ROBERT
To: FACEBOOK, INC.
Reel/Frame 046872/0706 →
Cited By (20)
US 12,198,413 US 12,249,014 US 12,287,797 US 12,306,885 US 12,353,897 US 12,374,097 US 12,374,330 US 12,406,316 US 12,443,797 US 12,475,698 US 12,495,098 US 12,511,296 US 12,541,294 US 12,561,032 US 12,567,404 US 12,573,391 US 12,592,017 US 12,625,557 US 12,670,671 US 12,694,221