IP Library Granted Patent US 11,087,092
Granted Patent B2
US 11,087,092 · App. 16/399,871 · Granted Aug 10, 2021

Agent persona grounded chit-chat generation framework

Inventors: Stephan Zheng (Redwood City, CA); Wojciech Kryscinski (Palo Alto, CA); Michael Shum (Sunnyvale, CA); Richard Socher (Menlo Park, CA); Caiming Xiong (Mountain View, CA)
Assignee: salesforce.com, inc.
G06F40/30G06N3/08G06F40/205
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,087,092
App. No.
16/399,871
Granted
Aug 10, 2021
Kind
B2
Abstract

Approaches for determining a response for an agent in an undirected dialogue are provided. The approaches include a dialogue generating framework comprising an encoder neural network, a decoder neural network, and a language model neural network. The dialogue generating framework generates a sketch sentence response with at least one slot. The sketch sentence response is generated word by word and takes into account the undirected dialogue and agent traits of the agent making the response. The dialogue generating framework generates sentence responses by filling the slot with words from the agent traits. The dialogue generating framework ranks the sentence responses according to perplexity by passing the sentence responses through a language model and selects a final response which is a sentence response that has a lowest perplexity.

Claims (60)

1. A system for determining a final response for an agent in an undirected dialogue, the system comprising:

a dialogue generating framework stored in memory and configured to execute using a processor, the dialogue generating framework configured:

generate a sketch sentence response in the undirected dialogue with a slot for capturing a conversational pattern in the undirected dialogue, wherein to generate the sketch response sentence the dialogue generating framework is further configured to:

generate, using a first encoder, conversation hidden states from the undirected dialogue;

generate, using a second encoder, agent traits hidden states from the traits of the agent;

select words from the traits of the agent;

generate a memory readout from the words and the conversation hidden states; and

generate, using a sketch decoder, words in the sketch sentence response using the conversation hidden states, the agent traits hidden states, and the memory readout;

fill the slot in the sketch sentence response with at least one word from the words selected from traits of the agent; and

generate the final response by selecting from a plurality of sketch sentence responses, each having a perplexity, a filled sketch sentence response with a lowest perplexity.

2. The system of claim 1 , wherein to generate the sketch response sentence, the dialogue generating framework is configured to analyze the undirected dialogue, the traits of the agent, and words included in the traits.

3. The system of claim 1 , wherein to generate the words in the sketch sentence response, the dialogue generating framework is further configured to:

generate a decoder hidden state using a previous word in the words, a previous decoder hidden state, a conversation attention vector over the conversation hidden states and an agent traits attention vector over the agent traits hidden states; and

determine a word in the words by mapping the decoder hidden state and the previous word into a distribution in a language model.

4. The system of claim 3 , wherein the dialogue generating framework is further configured to determine the conversation attention vector using the previous word, the previous decoder hidden state, and the conversation hidden states.

5. The system of claim 3 , wherein the dialogue generating framework further configured to determine the agent traits attention vector using the previous word, the previous decoder hidden state, and the agent traits hidden states.

6. The system of claim 3 , wherein the dialogue generating framework further configured to determine an initial decoder hidden state using the memory readout, the conversation hidden states, and the agent traits hidden states.

7. The system of claim 6 , wherein the initial decoder hidden state is the previous decoder hidden state during a next iteration of the dialogue generating framework that is configured to determine the word.

8. A method for determining a final response for an agent in an undirected dialogue, the method comprising:

generating, using a dialogue generating framework stored in a memory and executing on a processor, a sketch sentence response in the undirected dialogue with a slot for capturing a conversational pattern in the undirected dialogue, wherein the generating further comprises:

generating, using a first encoder of the dialogue generating framework, conversation hidden states from the undirected dialogue;

generating, using a second encoder of the dialogue generating framework, agent traits hidden states from the traits of the agent;

selecting words from the traits of the agent;

generating a memory readout from the words and the conversation hidden states; and

generating, using a decoder of the dialogue generating framework, words in the sketch sentence response using the conversation hidden states, the agent traits hidden states, and the memory readout;

filling the slot in the sketch sentence response with at least one word from the words selected from traits of the agent;

determining, using a neural network language model, perplexity for the filled sketch sentence response; and

generating a final response by selecting from a plurality of sketch sentence responses, each having a perplexity, the filled sketch sentence response with a lowest perplexity.

9. The method of claim 8 , wherein generating the sketch response sentence comprises:

analyzing the undirected dialogue, the traits of the agent, and the words included in the traits.

10. The method of claim 8 , wherein generating the words in the sketch sentence response comprises:

generating a decoder hidden state using a previous word in the words, a previous decoder hidden state, a conversation attention vector over the conversation hidden states, and an agent traits attention vector over the agent traits hidden states; and

determining a word in the words by mapping the decoder hidden state and the previous word into a distribution in a language model.

11. The method of claim 10 , further comprising:

determining the conversation attention vector using the previous word, the previous decoder hidden state, and the conversation hidden states.

12. The method of claim 10 , further comprising:

determining the agent traits attention vector using the previous word, the previous decoder hidden state, and the agent traits hidden states.

13. The method of claim 10 , further comprising:

determining an initial decoder hidden state using the memory readout, the conversation hidden states, and the agent traits hidden states.

14. The method of claim 13 , wherein the initial decoder hidden state is the previous decoder hidden state during a next iteration of the dialogue generating framework that determines the word.

15. A non-transitory machine-readable medium having stored thereon machine-readable instructions executable to cause a machine to perform operations that determine a final answer for an agent in an undirected dialogue, the operations comprising:

generating, using a dialogue generating framework, a sketch sentence response in the undirected dialogue with a slot for capturing a conversational pattern in the undirected dialogue, wherein the generating further comprises

generating, using a first encoder of the dialogue generating framework, conversation hidden states from the undirected dialogue;

generating, using a second encoder of the dialogue generating framework, agent traits hidden states from the traits of the agent;

selecting words from the traits of the agent;

generating a memory readout from the words and the conversation hidden states; and

generating, using a decoder of the dialogue generating framework, words in the sketch sentence response using the conversation hidden states, the agent traits hidden states, and the memory readout;

filling the slot in the sketch sentence response with at least one word from the words selected from traits of the agent;

determining, using a neural network language model, perplexity for the filled sketch sentence response; and

generating a final response by selecting from a plurality of sketch sentence responses, each having a perplexity, the filled sketch sentence response with a lowest perplexity.

16. The non-transitory machine-readable medium of claim 15 , wherein generating the words in the sketch sentence response comprises:

generating a decoder hidden state using a previous word in the words, a previous decoder hidden state, a conversation attention vector over the conversation hidden states and an agent traits attention vector over the agent traits hidden states; and

determining a word in the words by mapping the decoder hidden state and the previous word into a distribution in a language model.

17. The non-transitory machine-readable medium of claim 16 , wherein the operations further comprise:

determining an initial decoder hidden state using the memory readout, the conversation hidden states, and the agent traits hidden states, wherein the initial decoder hidden state is the previous decoder hidden state during a next iteration that determines the word.

18. The non-transitory machine-readable medium of claim 16 , further comprising:

determining, using the dialogue generating framework, the agent traits attention vector using the previous word, the previous decoder hidden state, and the agent traits hidden states.

19. The non-transitory machine-readable medium of claim 16 , further comprising:

determining, using the dialogue generating framework, an initial decoder hidden state using the memory readout, the conversation hidden states, and the agent traits hidden states.

20. The non-transitory machine-readable medium of claim 19 , wherein the initial decoder hidden state is the previous decoder hidden state during a next iteration of the dialogue generating framework that is configured to determine the word.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2019
From: ZHENG, STEPHAN; KRYSCINSKI, WOJCIECH; SHUM, MICHAEL; SOCHER, RICHARD; XIONG, CAIMING
To: SALESFORCE.COM, INC.
Reel/Frame 049893/0627 →
Continuity (2)
Provisional Application 62814192 · Mar 5, 2019
Related Publication 20200285705A1 · Sep 10, 2020
Cited By (1)
US 12,681,769