IP Library › Granted Patent US 12,647,378
Granted Patent B2
US 12,647,378 · App. 18/737,595 · Granted Jun 2, 2026

Message suggestions

Inventors: Max Benjamin Braun (San Francisco, CA); Nirmal Jitendra Patel (Sunnyvale, CA)
Assignee: Google LLC
H04L51/046G06N20/00H04L51/02
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 12,647,378
App. No.
18/737,595
Granted
Jun 2, 2026
Kind
B2
Abstract

A method may involve, for each of one or more messages that are selected from a plurality of messages from an account: (a) extracting one or more phrases from a respective selected message; (b) determining that a conversation includes the respective selected message and one or more other messages from the plurality of messages; (c) generating a first feature vector based on the conversation, wherein the first feature vector includes one or more first features, wherein the one or more first features include one or more words from the conversation; and (d) generating, by a computing system, one or more training-data sets, wherein each training-data set comprises one of the phrases and the first feature vector. The method may further involve: training, by the computing system, a machine-learning application with at least a portion of the one or more training-data sets that are generated for the one or more selected messages; applying the trained machine-learning application to process an incoming message to the account; and responsive to applying the trained machine-learning application, determining one or more reply messages corresponding to the incoming message, wherein the one or more reply messages include at least one of the extracted one or more phrases.

Claims (47)

1 . A method, comprising:

applying a model to identify at least one feature from an incoming message to a user account, the model being trained at least in part based on prior messages sent from the user account;

responsive to applying the model, determining at least one reply message based on the at least one feature, the at least one reply message including at least a portion of a phrase extracted from the prior messages;

updating a graphic display with the incoming message and the at least one reply message, the at least one reply message including at least the portion of the phrase extracted from the prior messages; and

receiving a selection of a reply message from the at least one reply message on the graphic display.

2 . The method of claim 1 , wherein the at least one reply message comprises a first reply message and a second reply message, and the method further comprising ordering the first reply message and the second reply message on the graphic display based on how often the first reply message and the second reply message is selected or provided for selection.

3 . The method of claim 1 , wherein determining the at least one reply message based on the at least one feature comprises:

identifying a set of reply messages based on the at least one feature, the set of reply messages including the at least one reply message and at least one additional reply message;

determining a ranking for the set of reply messages based on probability of being sent; and

selecting the at least one reply message from the set of reply messages based on the ranking.

4 . The method of claim 1 , wherein applying the model to identify the at least one feature from the incoming message to the user account comprises:

performing normalization on the incoming message to generate a normalized message; and

identifying the at least one feature from the normalized message.

5 . The method of claim 1 , wherein the model is further trained based on conversations associated with the prior messages sent from the user account.

6 . The method of claim 1 , wherein the at least one feature comprises at least one word from the incoming message.

7 . The method of claim 6 , wherein the at least one feature comprises a count associated with the at least one word from the incoming message.

8 . The method of claim 1 , wherein the at least one feature comprises a sender identifier for the incoming message.

9 . A non-transitory computer-readable storage medium having instructions stored thereon executable by a processing device, the instructions causing the processing device to perform a method, the method comprising:

applying a model to identify at least one feature from an incoming message to a user account, the model being trained at least in part based on prior messages sent from the user account;

responsive to applying the model, determining at least one reply message based on the at least one feature, the at least one reply message including at least a portion of a phrase extracted from the prior messages;

updating a graphic display with the incoming message and the at least one reply message, the at least one reply message including at least the portion of the phrase extracted from the prior messages; and

receiving a selection of a reply message from the at least one reply message on the graphic display.

10 . The non-transitory computer-readable storage medium of claim 9 , wherein the at least one reply message comprises a first reply message and a second reply message, and the method further comprising ordering the first reply message and the second reply message on the graphic display based on how often the first reply message and the second reply message is selected or provided for selection.

11 . The non-transitory computer-readable storage medium of claim 9 , wherein determining the at least one reply message based on the at least one feature comprises:

identifying a set of reply messages based on the at least one feature, the set of reply messages including the at least one reply message and at least one additional reply message;

determining a ranking for the set of reply messages based on probability of being sent; and

selecting the at least one reply message from the set of reply messages based on the ranking.

12 . The non-transitory computer-readable storage medium of claim 9 , wherein applying the model to identify the at least one feature from the incoming message to the user account comprises:

performing normalization on the incoming message to generate a normalized message; and

identifying the at least one feature from the normalized message.

13 . The non-transitory computer-readable storage medium of claim 9 , wherein the model is further trained based on conversations associated with the prior messages sent from the user account.

14 . The non-transitory computer-readable storage medium of claim 9 , wherein the at least one feature comprises at least one word from the incoming message.

15 . The non-transitory computer-readable storage medium of claim 14 , wherein the at least one feature comprises a count associated with the at least one word from the incoming message.

16 . The non-transitory computer-readable storage medium of claim 9 , wherein the at least one feature comprises a sender identifier for the incoming message.

17 . A system comprising:

a non-transitory computer-readable medium; and

program instructions stored on the non-transitory computer-readable medium, the program instructions when executed by a processing device cause the processing device to perform a method, the method comprising:

applying a model to identify at least one feature from an incoming message to a user account, the model being trained at least in part based on prior messages sent from the user account;

responsive to applying the model, determining at least one reply message based on the at least one feature, the at least one reply message including at least a portion of a phrase extracted from the prior messages;

updating a graphic display with the incoming message and the at least one reply message, the at least one reply message including at least the portion of the phrase extracted from the prior messages; and

receiving a selection of a reply message from the at least one reply message on the graphic display.

18 . The system of claim 17 , wherein the at least one reply message comprises a first reply message and a second reply message, and the method further comprising ordering the first reply message and the second reply message on the graphic display based on how often the first reply message and the second reply message is selected or provided for selection.

19 . The system of claim 17 , wherein determining the at least one reply message based on the at least one feature comprises:

identifying a set of reply messages based on the at least one feature, the set of reply messages including the at least one reply message and at least one additional reply message;

determining a ranking for the set of reply messages based on probability of being sent; and

selecting the at least one reply message from the set of reply messages based on the ranking.

20 . The system of claim 17 , wherein the at least one feature comprises at least one word from the incoming message.

Assignments (2)
CHANGE OF NAME Recorded Aug 23, 2024
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 068764/0171 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2024
From: BRAUN, MAX BENJAMIN; PATEL, NIRMAL JITENDRA
To: GOOGLE INC.
Reel/Frame 068764/0180 →
Continuity (4)
Continuation 17570927 · Jan 7, 2022
Continuation 15844082 · Dec 15, 2017
Continuation 14470904 · Aug 27, 2014
Related Publication 20240414112A1 · Dec 12, 2024
References Cited (21)
US 7752159B2 · Nelken et al. · 2010 [cited by applicant]
US 7788327B2 · Naito et al. · 2010 [cited by applicant]
US 7899871B1 · Kumar et al. · 2011 [cited by applicant]
US 8209183B1 · Patel et al. · 2012 [cited by applicant]
US 8639276B2 · Sharpe et al. · 2014 [cited by applicant]
US 8977255B2 · Freeman et al. · 2015 [cited by applicant]
US 9471561B2 · Baldwin et al. · 2016 [cited by applicant]
US 10003560B1 · Perkins · 2018 [cited by examiner]
US 20040176114A1 · Northcutt · 2004 [cited by applicant]
US 20070050488A1 · Joyner et al. · 2007 [cited by applicant]
US 20080183833A1 · Gaucas · 2008 [cited by examiner]
US 20110314390A1 · Park · 2011 [cited by examiner]
US 20120030157A1 · Tsuchida et al. · 2012 [cited by applicant]
US 20120173464A1 · Tur et al. · 2012 [cited by applicant]
US 20120254318A1 · Poniatowskl · 2012 [cited by applicant]
US 20120290662A1 · Weber et al. · 2012 [cited by applicant]
US 20140341462A1 · Sezginer et al. · 2014 [cited by applicant]
US 20140359480A1 · Vellal et al. · 2014 [cited by applicant]
US 20150254572A1 · Blohm et al. · 2015 [cited by applicant]
Yang et al., “Improving the automatic email responding system for computer manufacturers via machine learning”, 2012 International conference on information management, Innovation management and industrial engineering, … [cited by examiner]
Al-Alwani, et al., “Improving Email Response in an Email Management System Using Natural Language Processing Based Probabilistic Methods”, Journal of Computer Science, vol. 11, No. 1, 2015, pp. 109-119. [cited by applicant]