IP Library Granted Patent US 10,831,802
Granted Patent B2
US 10,831,802 · App. 15/380,112 · Granted Nov 10, 2020

Techniques to respond to user requests using natural-language machine learning based on example conversations

Inventors: Willy Blandin (San Francisco, CA); Alexandre Lebrun (Palo Alto, CA)
Assignee: FACEBOOK, INC.
G06F16/3344G06F16/3329G06F40/35G06F40/40G06N3/08G06N5/041G06N20/00H04L51/02G06F16/3322G06N3/006
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,831,802
App. No.
15/380,112
Granted
Nov 10, 2020
Kind
B2
Abstract

Techniques to response to user requests using natural-language machine learning based on example conversations are described. In one embodiment, an apparatus may comprise a bot application interface component operative to receive an example-interaction repository, the example-interaction repository comprising a plurality of example user-to-bot interactions; and an interaction processing component operative to submit the example-interaction repository to a natural-language machine learning component; receive a sequence model from the natural-language machine learning component in response to submitting the example-interaction repository; and perform a user-to-bot conversation based on the sequence model. Other embodiments are described and claimed.

Claims (66)

1. A computer-implemented method, comprising:

receiving an example-interaction repository;

receiving a sequence model from a natural-language machine learning component in response to submitting the example-interaction repository to the natural-language machine learning component; and

performing, via a bot application, a user-to-bot conversation based on the sequence model, and

the example-interaction repository comprising a plurality of example user-to-bot interactions constructed by a developer and a plurality of live user-to-bot interactions generated from real-world interactions by the bot application in a live production or testing environment,

the plurality of live user-to-bot interactions including at least: a first interaction resulting in a successful action by the bot application and a second interaction resulting in a failed action, the second interaction including at least one or more edits indicating at least how the bot application should have behaved, and

the example user-to-bot interactions and the live user-to-bot interactions including the first and second interactions form training stories for training the natural-language machine learning component.

2. The method of claim 1 , performing the user-to-bot conversation comprising receiving the user message from a client device and generating a bot response based on the user message and the sequence model, the bot response comprising a bot action, further comprising:

transmitting the bot action to the bot application, the bot action transmitted to the bot application in association with a user-request context; and

receiving an updated user-request context from the bot application.

3. The method of claim 1 , performing the user-to-bot conversation comprising receiving the user message from a client device and generating a bot response based on the user message and the sequence model, further comprising:

generating an updated user-request context based on processing the user message with the sequence model in association with a current user-request context.

4. The method of claim 1 , wherein performing the user-to-bot conversation comprises exchanging a series of user messages and bot messages via a messaging system to generate a user-request context and an inferred user-request action, the inferred user-request action defined based on an application program interface call, wherein one or more parameters of the application program interface call are defined based on the user-request context.

5. The method of claim 1 , wherein one or more of the example user-to-bot interactions comprise developer-written user-to-bot hypothetical interactions, further comprising:

receiving the one or more developer-written user-to-bot interactions via a developer console.

6. The method of claim 1 , wherein one or more of the example user-to-bot interactions comprise usage-based user-to-bot interactions, further comprising:

receiving one or more production user-to-bot interactions generated from production-performed user-to-bot conversations;

displaying the one or more production user-to-bot interactions via a developer console;

receiving one or more developer modifications for the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions;

receiving developer validation of the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions;

receiving one or more developer annotations of the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions, the one or more developer annotations comprising a context update annotation;

including the one or more usage-based user-to-bot interactions in the example interaction repository in response to receiving the developer validation of the one or more usage-based user-to-bot interactions; and

including the one or more developer annotations with the one or more usage-based user-to-bot interactions in the example-interaction repository.

7. The method of claim 1 , performing the user-to-bot conversation based on the sequence model comprising:

incorporating extracted unsupervised information into one or more suggested bot responses.

8. An apparatus, comprising:

at least one processor operable to executed stored instructions that, when executed, cause the at least one processor to:

receive an example-interaction repository;

receive a sequence model from a natural-language machine learning component in response to submitting the example-interaction repository to the natural-language machine learning component; and

perform, via a bot application, a user-to-bot conversation based on the sequence model, and

the example-interaction repository comprising a plurality of example user-to-bot interactions constructed by a developer and a plurality of live user-to-bot interactions generated from real-world interactions by the bot application in a live production or testing environment,

the plurality of live user-to-bot interactions including at least: a first interaction resulting in a successful action by the bot application and a second interaction resulting in a failed action, the second interaction including at least one or more edits indicating at least how the bot application should have behaved, and

the example user-to-bot interactions and the live user-to-bot interactions including the first and second interactions form training stories for training the natural-language machine learning component.

9. The apparatus of claim 8 , the user message exchange with the user client comprising receiving a user message from a client device, the user-to-bot conversation comprising a bot response based on the user message and the sequence model, the bot response comprising a bot action, further comprising:

the bot application interface component operative to transmit the bot action to the bot application, the bot action transmitted to the bot application in association with a user-request context; and receive an updated user-request context from the bot application.

10. The apparatus of claim 8 , performing the user-to-bot conversation comprising receiving a user message from a client device and generating a bot response based on the user message and the sequence model, further comprising:

the interaction processing component operative to generate an updated user-request context based on processing the user message with the sequence model in association with a current user-request context.

11. The apparatus of claim 8 , wherein performing the user-to-bot conversation comprises exchanging a series of user messages and bot messages via a messaging system to generate the user-request context and an inferred user-request action, the inferred user-request action defined based on an application program interface call, wherein one or more parameters of the application program interface call are defined based on the user-request context.

12. The apparatus of claim 8 , wherein one or more of the example user-to-bot interactions comprise developer-written user-to-bot hypothetical interactions, further comprising:

a developer console operative to receive the one or more developer-written user-to-bot interactions.

13. The apparatus of claim 8 , wherein one or more of the example user-to-bot interactions comprise usage-based user-to-bot interactions, further comprising:

a developer console operative to receive one or more production user-to-bot interactions generated from production-performed user-to-bot conversations; display the one or more production user-to-bot interactions via a developer console; receive one or more developer modifications for the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions; receive developer validation of the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions; and receive one or more developer annotations of the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions, the one or more developer annotations comprising a context update annotation; and

the interaction processing component operative to include the one or more usage-based user-to-bot interactions in the example-interaction repository in response to receiving the developer validation of the one or more usage-based user-to-bot interactions; and include the one or more developer annotations with the one or more usage-based user-to-bot interactions in the example-interaction repository.

14. At least one non-transitory computer-readable storage medium comprising instructions that, when executed, cause a system to:

receive an example-interaction repository;

receive a sequence model from a natural-language machine learning component in response to submitting the example-interaction repository to the natural-language machine learning component; and

perform, via a bot application, a user-to-bot conversation based on the sequence model, and

the example-interaction repository comprising a plurality of example user-to-bot interactions constructed by a developer and a plurality of live user-to-bot interactions generated from real-world interactions by the bot application in a live production or testing environment,

the plurality of live user-to-bot interactions including at least: a first interaction resulting in a successful action by the bot application and a second interaction resulting in a failed action, the second interaction including at least one or more edits indicating at least how the bot application should have behaved, and

the example user-to-bot interactions and the live user-to-bot interactions including the first and second interactions form training stories for training the natural-language machine learning component.

15. The non-transitory computer-readable storage medium of claim 14 , performing the user-to-bot conversation comprising receiving the user message from a client device and generating a bot response based on the user message and the sequence model, the bot response comprising a bot action, comprising further instructions that, when executed, cause a system to:

transmit the bot action to the bot application, the bot action transmitted to the bot application in association with a user-request context; and

receive an updated user-request context from the bot application.

16. The non-transitory computer-readable storage medium of claim 14 , performing the user-to-bot conversation comprising receiving the user message from a client device and generating a bot response based on the user message and the sequence model, comprising further instructions that, when executed, cause a system to:

generate an updated user-request context based on processing the user message with the sequence model in association with a current user-request context.

17. The non-transitory computer-readable storage medium of claim 14 , wherein performing the user-to-bot conversation comprises exchanging a series of user messages and bot messages via a messaging system to generate the user-request context and an inferred user-request action, the inferred user-request action defined based on an application program interface call, wherein one or more parameters of the application program interface call are defined based on the user-request context.

18. The non-transitory computer-readable storage medium of claim 14 , wherein one or more of the example user-to-bot interactions comprise developer-written user-to-bot hypothetical interactions, comprising further instructions that, when executed, cause a system to:

receive the one or more developer-written user-to-bot interactions via a developer console.

19. The non-transitory computer-readable storage medium of claim 14 , wherein one or more of the example user-to-bot interactions comprise usage-based user-to-bot interactions, comprising further instructions that, when executed, cause a system to:

receive one or more production user-to-bot interactions generated from production-performed user-to-bot conversations;

display the one or more production user-to-bot interactions via a developer console;

receive one or more developer modifications for the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions;

receive developer validation of the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions;

receive one or more developer annotations of the one or more production user-to-bot interactions via the developer console to generate the usage-based user-to-bot interactions, the one or more developer annotations comprising a context update annotation;

include the one or more usage-based user-to-bot interactions in the example-interaction repository in response to receiving the developer validation of the one or more usage-based user-to-bot interactions; and

include the one or more developer annotations with the one or more usage-based user-to-bot interactions in the example-interaction repository.

Assignments (2)
CHANGE OF NAME Recorded May 5, 2022
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 059858/0387 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2017
From: BLANDIN, WILLY; LEBRUN, ALEXANDRE
To: FACEBOOK, INC.
Reel/Frame 041627/0545 →
Continuity (2)
Provisional Application 62320869 · Apr 11, 2016
Related Publication 20170293681A1 · Oct 12, 2017