IP Library › Granted Patent US 12,225,158
Granted Patent B2
US 12,225,158 · App. 18/082,424 · Granted Feb 11, 2025

System(s) and method(s) for implementing a personalized chatbot

Inventors: Yoav Tzur (Tel Aviv, IL); Yaniv Leviathan (New York, NY); Yossi Matias (Tel Aviv, IL); Jan Jedrzejowicz (San Francisco, CA)
Assignee: GOOGLE LLC
H04M3/4936G06F40/35G10L13/02G10L15/1815G10L15/22H04M3/527G10L2015/223
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,225,158
App. No.
18/082,424
Granted
Feb 11, 2025
Kind
B2
Abstract

Processor(s) of a client device of a user can receive a telephone call that is initiated by an additional user, and, in response to receiving the telephone call, identify an entity that is associated with the additional user, and determine, based on the entity that is associated with the additional user, whether to (1) fully automate the telephone call, or (2) partially automate the telephone call. In fully automating the telephone call, the processor(s) can cause a chatbot to engage in a corresponding conversation with the additional user and without prompting the user for any input. In partially automating the telephone call, the processor(s) can cause the chatbot to engage in a corresponding conversation with the additional user but with prompting the user for input(s) via suggestion chip(s). In some implementations, the processor(s) can further determine whether to (3) refrain from automating the telephone call entirely.

Claims (81)

1. A method implemented by one or more processors, the method comprising:

receiving a telephone call, the telephone call being received via a client device of a user, and the telephone call being initiated by an additional user that is in addition to the user;

in response to receiving the telephone call:

identifying an entity that is associated with the additional user that initiated the telephone call; and

determining, based on an entity that is associated with the additional user, whether to (1) fully automate the telephone call on behalf of the user, or (2) partially automate the telephone call on behalf of the user;

in response to determining to (1) fully automate the telephone call on behalf of the user, causing the telephone call to be fully automated on behalf of the user; and

in response to determining to (2) partially automate the telephone call on behalf of the user, causing the telephone call to be partially automated on behalf of the user.

2. The method of claim 1 , wherein causing the telephone call to be fully automated on behalf of the user comprises:

causing a chatbot, that is implemented locally at the client device of the user, to engage in a conversation with the additional user; and

during the conversation with the additional user:

causing the chatbot to perform a task, that is specified by the additional user, on behalf of the user and without prompting the user to provide any input.

3. The method of claim 2 , wherein causing the chatbot to engage in a conversation with the additional user comprises:

receiving corresponding instances of audio data from the additional user;

generating, based on processing the corresponding instances of audio data from the additional user, corresponding instances of synthesized speech audio data that capture synthesized speech of the chatbot; and

causing the corresponding instances of the synthesized speech audio data to be audibly rendered for presentation to the additional user via an additional client device of the additional user.

4. The method of claim 3 , wherein processing a given instance of audio data, from among the corresponding instances of audio data received from the additional user, comprises:

processing, using an on-device automatic speech recognition (ASR) model that is stored locally at the client device, the given instance of audio data to generate given ASR output;

processing, using an on-device natural language understanding (NLU) model that is stored locally at the client device, the given ASR output to generate given NLU output; and

processing, using an on-device fulfillment model that is stored locally at the client device and/or on-device fulfillment rules that are stored locally at the client device, the given NLU to generate a given fulfillment output.

5. The method of claim 4 , wherein generating a given corresponding instance of synthesized speech audio data, from among the corresponding instances of the synthesized speech audio data, and in response to receiving the given instance of audio data, comprises:

generating, based on the given fulfillment output, a given instance of textual data in furtherance of fulfilling the task; and

processing, using an on-device text-to-speech (TTS) model that is stored locally at the client device, the given instance of textual data to generate the given corresponding instance of synthesized speech audio data.

6. The method of claim 2 , further comprising:

subsequent to concluding the conversation with the additional user:

generating a notification that identifies the entity and that includes a result of the task; and

causing the notification to be provided for presentation to the user via the client device.

7. The method of claim 1 , wherein causing the telephone call to be partially automated on behalf of the user comprises:

causing a chatbot, that is implemented locally at the client device of the user, to engage in a conversation with the additional user; and

during the conversation with the additional user:

causing the chatbot to perform a task, that is specified by the additional user, on behalf of the user but prompting the user to provide one or more inputs.

8. The method of claim 7 , wherein causing the chatbot to engage in a conversation with the additional user comprises:

receiving corresponding instances of audio data from the additional user;

generating, based on processing the corresponding instances of audio data from the additional user, corresponding instances of synthesized speech audio data that capture synthesized speech of the chatbot; and

causing the corresponding instances of the synthesized speech audio data to be audibly rendered for presentation to the additional user via an additional client device of the additional user.

9. The method of claim 8 , wherein processing a given instance of audio data, from among the corresponding instances of audio data received from the additional user, comprises:

processing, using an on-device automatic speech recognition (ASR) model that is stored locally at the client device, the given instance of audio data to generate given ASR output;

processing, using an on-device natural language understanding (NLU) model that is stored locally at the client device, the given ASR output to generate given NLU output; and

determining, based on the given ASR output and/or the given NLU output, one or more suggestions chips to be provided for presentation to the user.

10. The method of claim 9 , wherein generating a given corresponding instance of synthesized speech audio data, from among the corresponding instances of the synthesized speech audio data, and in response to receiving the given instance of audio data, comprises:

generating, based on receiving a user selection of a given suggestion chip from among the one or more suggestion chips, a given instance of textual data in furtherance of fulfilling the task; and

processing, using an on-device text-to-speech (TTS) model that is stored locally at the client device, the given instance of textual data to generate the given corresponding instance of synthesized speech audio data.

11. The method of claim 10 , wherein the given instance of textual data expresses a sentiment of the given suggestion chip in a context of the conversation with the additional user.

12. The method of claim 7 , further comprising:

subsequent to concluding the conversation with the additional user:

generating a notification that identifies the entity and that includes a result of the task; and

causing the notification to be provided for presentation to the user via the client device.

13. The method of claim 1 , wherein determining whether to (1) fully automate the telephone call on behalf of the user, or (2) partially automate the telephone call on behalf of the user based on the entity that is associated with the additional user comprises:

determining a type of entity of the entity that is associated with the additional user; and

determining whether a chatbot, that is implemented locally at the client device of the user, is capable of fully automating the telephone call on behalf of the user.

14. The method of claim 13 , wherein determining whether the automated assistant is capable of fully automating the telephone call on behalf of the user is based on the user engaging in one or more previous conversations with the entity and/or an additional entity of the same type of entity as the entity.

15. The method of claim 14 , wherein the chatbot is previously trained based on the one or more previous conversations locally at the client device.

16. The method of claim 14 , wherein determining whether the automated assistant is capable of fully automating the telephone call on behalf of the user is based on availability of user data, that is stored locally at the client device of the user, of the user of the client device.

17. The method of claim 1 , wherein determining whether to (1) fully automate the telephone call on behalf of the user, or (2) partially automate the telephone call on behalf of the user based on the entity that is associated with the additional user comprises:

determining, for the entity, whether the user previously provided user input that specifies:

causing the telephone call to be fully automated on behalf of the user, or

causing the telephone call to be partially automated on behalf of the user.

18. The method of claim 17 , further comprising:

determining whether the user input specifies temporal conditions associated with causing the telephone call to be fully automated on behalf of the user or causing the telephone call to be partially automated on behalf of the user, and

wherein determining whether to (1) fully automate the telephone call on behalf of the user, or (2) partially automate the telephone call on behalf of the user, is in response to determining that the temporal conditions are satisfied.

19. A method implemented by one or more processors, the method comprising:

receiving a telephone call, the telephone call being received via a client device of a user, and the telephone call being initiated by an additional user that is in addition to the user; and

in response to receiving the telephone call, causing the telephone call to be partially automated on behalf of the user, wherein causing the telephone call to be partially automated on behalf of the user comprises:

causing a chatbot, that is implemented locally at the client device of the user, to engage in a conversation with the additional user; and

during the conversation with the additional user:

receiving a given instance of audio data that requests the chatbot to perform a task;

determining, based on processing the given instance of audio data, a given suggestion chip that is associated with the task and that is to be provided for presentation to the user;

causing the given suggestion chip to be provided for presentation to the user;

in response to receiving a user selection, from the user, of the given suggestion chip and in response to determining that the additional user is associated with a first type of entity:

generating, based on the user selection of the given suggestion and based on the additional user being associated with the first type of entity, a first instance of synthesized speech audio data that captures first synthesized speech of the chatbot; and

causing the first instance of synthesized speech audio data to be audibly rendered for presentation to the additional user via an additional client device of the additional user; and

in response to receiving the user selection, from the user, of the given suggestion chip and in response to determining that the additional user is associated with a second type of entity that differs from the first entity type:

generating, based on the user selection of the given suggestion and based on the additional user being associated with the second type of entity, a second instance of synthesized speech audio data that captures second synthesized speech of the chatbot and that differs from the first synthesized speech of the chatbot; and

causing the second instance of synthesized speech audio data to be audibly rendered for presentation to the additional user via the additional client device of the additional user.

20. A method implemented by one or more processors, the method comprising:

receiving a telephone call, the telephone call being received via a client device of a user, and the telephone call being initiated by an additional user that is in addition to the user;

in response to receiving the telephone call:

identifying an entity that is associated with the additional user that initiated the telephone call; and

determining, based on the entity that is associated with the additional user, whether to (1) fully automate the telephone call on behalf of the user, (2) partially automate the telephone call on behalf of the user, or (3) refrain from automating the telephone call on behalf of the user;

in response to determining to (1) fully automate the telephone call on behalf of the user, causing the telephone call to be fully automated on behalf of the user;

in response to determining to (2) partially automate the telephone call on behalf of the user, causing the telephone call to be partially automated on behalf of the user; and

in response to determining to (3) refrain from automating the telephone call on behalf of the user, causing the user to be notified of the telephone call via the client device or an additional client device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2026
From: MANOR, RAN EL
To: GOOGLE LLC
Reel/Frame 075953/0133 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 16, 2022
From: TZUR, YOAV; LEVIATHAN, YANIV; MATIAS, YOSSI; JEDRZEJOWICZ, JAN
To: GOOGLE LLC
Reel/Frame 062120/0752 →
Continuity (1)
Related Publication 20240205332A1 · Jun 20, 2024
References Cited (160)
US 5815566A · Ramot et al. · 1998 [cited by applicant]
US 6304653B1 · O'Neil et al. · 2001 [cited by applicant]
US 6377567B1 · Leonard · 2002 [cited by applicant]
US 6731725B1 · Merwin et al. · 2004 [cited by applicant]
US 6922465B1 · Howe · 2005 [cited by applicant]
US 7084758B1 · Cole · 2006 [cited by applicant]
US 7337158B2 · Fratkina et al. · 2008 [cited by applicant]
US 7539656B2 · Fratkina et al. · 2009 [cited by applicant]
US 7792773B2 · McCord et al. · 2010 [cited by applicant]
US 7920678B2 · Cooper et al. · 2011 [cited by applicant]
US 8345835B1 · Or-Bach et al. · 2013 [cited by applicant]
US 8494121B1 · Barnett · 2013 [cited by applicant]
US 8594308B2 · Soundar · 2013 [cited by applicant]
US 8938058B2 · Soundar · 2015 [cited by applicant]
US 8964963B2 · Soundar · 2015 [cited by applicant]
US 9232369B1 · Fujisaki · 2016 [cited by applicant]
US 9318108B2 · Gruber et al. · 2016 [cited by applicant]
US 9430570B2 · Button · 2016 [cited by applicant]
US 9467566B2 · Soundar · 2016 [cited by applicant]
US 9473637B1 · Venkatapathy et al. · 2016 [cited by applicant]
US 10134395B2 · Typrin · 2018 [cited by applicant]
US 10318096B2 · Bhardwaj · 2019 [cited by applicant]
US 10425533B1 · Mossoba et al. · 2019 [cited by applicant]
US 10542143B2 · Segalis · 2020 [cited by examiner]
US 10671749B2 · Felice-Steele · 2020 [cited by examiner]
US 11005988B1 · Patakokila · 2021 [cited by applicant]
US 11012560B2 · Segalis et al. · 2021 [cited by applicant]
US 11056110B2 · Kim · 2021 [cited by applicant]
US 11134034B2 · Goslin · 2021 [cited by applicant]
US 11409425B2 · Yaseen · 2022 [cited by examiner]
US 11689486B1 · Bates · 2023 [cited by examiner]
US 20020051522A1 · Merrow et al. · 2002 [cited by applicant]
US 20020055975A1 · Petrovykh · 2002 [cited by applicant]
US 20030009530A1 · Philonenko et al. · 2003 [cited by applicant]
US 20030063732A1 · Mcknight · 2003 [cited by applicant]
US 20040001575A1 · Tang · 2004 [cited by applicant]
US 20040083195A1 · McCord et al. · 2004 [cited by applicant]
US 20040213384A1 · Alles et al. · 2004 [cited by applicant]
US 20040240642A1 · Crandell et al. · 2004 [cited by applicant]
US 20050147227A1 · Chervirala et al. · 2005 [cited by applicant]
US 20050175168A1 · Summe et al. · 2005 [cited by applicant]
US 20050271250A1 · Vallone et al. · 2005 [cited by applicant]
US 20060039365A1 · Ravikumar et al. · 2006 [cited by applicant]
US 20060056600A1 · Merrow et al. · 2006 [cited by applicant]
US 20060215824A1 · Mitby et al. · 2006 [cited by applicant]
US 20070036320A1 · Mandalia et al. · 2007 [cited by applicant]
US 20070201664A1 · Salafia · 2007 [cited by applicant]
US 20080181371A1 · Merrow et al. · 2008 [cited by applicant]
US 20080209449A1 · Maehira · 2008 [cited by applicant]
US 20080309449A1 · Martin et al. · 2008 [cited by applicant]
US 20090022293A1 · Routt · 2009 [cited by applicant]
US 20090029674A1 · Brezina et al. · 2009 [cited by applicant]
US 20090089096A1 · Schoenberg · 2009 [cited by applicant]
US 20090089100A1 · Nenov et al. · 2009 [cited by applicant]
US 20090137278A1 · Haru et al. · 2009 [cited by applicant]
US 20090232295A1 · Ryskamp · 2009 [cited by applicant]
US 20100088613A1 · DeLuca et al. · 2010 [cited by applicant]
US 20100094668A1 · Gupta · 2010 [cited by applicant]
US 20100104087A1 · Byrd et al. · 2010 [cited by applicant]
US 20100124325A1 · Weng et al. · 2010 [cited by applicant]
US 20100228590A1 · Muller et al. · 2010 [cited by applicant]
US 20110092187A1 · Miller · 2011 [cited by applicant]
US 20110270687A1 · Bazaz · 2011 [cited by applicant]
US 20120016678A1 · Gruber et al. · 2012 [cited by applicant]
US 20120109759A1 · Oren et al. · 2012 [cited by applicant]
US 20120147762A1 · Hancock et al. · 2012 [cited by applicant]
US 20120157067A1 · Turner et al. · 2012 [cited by applicant]
US 20120173243A1 · Anand et al. · 2012 [cited by applicant]
US 20120271676A1 · Aravamudan et al. · 2012 [cited by applicant]
US 20130060587A1 · Bayrak et al. · 2013 [cited by applicant]
US 20130077772A1 · Lichorowic et al. · 2013 [cited by applicant]
US 20130090098A1 · Gidwani · 2013 [cited by applicant]
US 20130136248A1 · Kaiser-Nyman et al. · 2013 [cited by applicant]
US 20130163741A1 · Balasaygun et al. · 2013 [cited by applicant]
US 20130275164A1 · Gruber et al. · 2013 [cited by applicant]
US 20140024362A1 · Kang et al. · 2014 [cited by applicant]
US 20140029734A1 · Kim et al. · 2014 [cited by applicant]
US 20140037084A1 · Dutta · 2014 [cited by applicant]
US 20140107476A1 · Tung et al. · 2014 [cited by applicant]
US 20140122077A1 · Nishikawa et al. · 2014 [cited by applicant]
US 20140122618A1 · Duan · 2014 [cited by applicant]
US 20140146962A1 · Busayapongchai · 2014 [cited by applicant]
US 20140200928A1 · Watanabe et al. · 2014 [cited by applicant]
US 20140207882A1 · Joo et al. · 2014 [cited by applicant]
US 20140247933A1 · Soundar · 2014 [cited by applicant]
US 20140279050A1 · Makar et al. · 2014 [cited by applicant]
US 20140280464A1 · De Ding et al. · 2014 [cited by applicant]
US 20140310365A1 · Sample et al. · 2014 [cited by applicant]
US 20150139413A1 · Hewitt et al. · 2015 [cited by applicant]
US 20150142704A1 · London · 2015 [cited by applicant]
US 20150150019A1 · Sheaffer et al. · 2015 [cited by applicant]
US 20150201013A1 · Nonaka · 2015 [cited by applicant]
US 20150237203A1 · Siminoff · 2015 [cited by applicant]
US 20150248817A1 · Steir et al. · 2015 [cited by applicant]
US 20150281446A1 · Milstein et al. · 2015 [cited by applicant]
US 20150339707A1 · Harrison et al. · 2015 [cited by applicant]
US 20150347399A1 · Aue et al. · 2015 [cited by applicant]
US 20150350331A1 · Kumar · 2015 [cited by applicant]
US 20150358790A1 · Nasserbakht · 2015 [cited by applicant]
US 20160028891A1 · Pirat et al. · 2016 [cited by applicant]
US 20160105546A1 · Keys et al. · 2016 [cited by applicant]
US 20160139998A1 · Dunn et al. · 2016 [cited by applicant]
US 20160198045A1 · Kulkarni et al. · 2016 [cited by applicant]
US 20160212266A1 · Soundar · 2016 [cited by applicant]
US 20160227033A1 · Song · 2016 [cited by applicant]
US 20160227034A1 · Kulkarni et al. · 2016 [cited by applicant]
US 20160277569A1 · Shine et al. · 2016 [cited by applicant]
US 20160379230A1 · Chen · 2016 [cited by applicant]
US 20170037084A1 · Fasan · 2017 [cited by applicant]
US 20170039194A1 · Tschetter · 2017 [cited by applicant]
US 20170061091A1 · McElhinney et al. · 2017 [cited by applicant]
US 20170094052A1 · Zhang et al. · 2017 [cited by applicant]
US 20170177298A1 · Hardee et al. · 2017 [cited by applicant]
US 20170180499A1 · Gelfenbeyn et al. · 2017 [cited by applicant]
US 20170289332A1 · Lavian et al. · 2017 [cited by applicant]
US 20170358296A1 · Segalis et al. · 2017 [cited by applicant]
US 20170359463A1 · Segalis et al. · 2017 [cited by applicant]
US 20170359464A1 · Segalis et al. · 2017 [cited by applicant]
US 20170365277A1 · Park · 2017 [cited by applicant]
US 20180124255A1 · Kawamura et al. · 2018 [cited by applicant]
US 20180133900A1 · Breazeal et al. · 2018 [cited by applicant]
US 20180220000A1 · Segalis et al. · 2018 [cited by applicant]
US 20180227416A1 · Segalis et al. · 2018 [cited by applicant]
US 20180227417A1 · Segalis et al. · 2018 [cited by applicant]
US 20180227418A1 · Segalis et al. · 2018 [cited by applicant]
US 20180336449A1 · Adan et al. · 2018 [cited by applicant]
US 20180342241A1 · Qu · 2018 [cited by applicant]
US 20190281159A1 · Segalis et al. · 2019 [cited by applicant]
US 20190306314A1 · Segalis et al. · 2019 [cited by applicant]
US 20200042597A1 · Wu · 2020 [cited by applicant]
US 20210203784A1 · Konig · 2021 [cited by applicant]
US 20210243300A1 · Segalis et al. · 2021 [cited by applicant]
US 20220083908A1 · Sharifi et al. · 2022 [cited by applicant]
CN 103795877 · 2014 [cited by applicant]
CN 105592237 · 2016 [cited by applicant]
CN 106503646A · 2017 [cited by applicant]
EP 1679693 · 2006 [cited by applicant]
EP 3618062 · 2020 [cited by applicant]
JP 2004508748 · 2004 [cited by applicant]
JP 2007219385 · 2007 [cited by applicant]
JP 2007524928 · 2007 [cited by applicant]
JP 2008015439 · 2008 [cited by applicant]
JP 2008022406A · 2008 [cited by applicant]
JP 2009210703 · 2009 [cited by applicant]
JP 2015070371 · 2015 [cited by applicant]
JP 2015132987A · 2015 [cited by applicant]
JP 2016095582A · 2016 [cited by applicant]
JP 2018101847A · 2018 [cited by applicant]
JP 2019522914A · 2019 [cited by applicant]
KR 20130099423 · 2013 [cited by applicant]
KR 20140121105 · 2014 [cited by applicant]
WO 2007065193 · 2007 [cited by applicant]
WO 2015020942 · 2015 [cited by applicant]
WO 2014197635 · 2017 [cited by applicant]
European Patent Office; Invitation to Pay Additional Fees issued in Application No. PCT/US2022/053099; 9 pages; dated Aug. 22, 2023. [cited by applicant]
European Patent Office; International Search Report and Written Opinion issued in Application No. PCT/US2022/053099; 16 pages; dated Oct. 13, 2023. [cited by applicant]
Leviathan, Yaniv et al.; Google Duplex: An AI System for Accomplishing Real-World Tasks Over the Phone; Google AI blog; 7 pages; dated 2018. [cited by applicant]
Davies, R. et al.; Automatic Context Determination for Answering User Queries; Technical Disclosure Commons; pp. 1-8; dated Feb. 2019. [cited by applicant]
Pradhan, Swadhin et al.; Understanding and Managing Notifications; IEEE; INFOCOM 2017—IEEE Conference on Computer Communications; pp. 1-9; dated May 2017. [cited by applicant]
Mehrotra, Abhinav et al.; Designing Content-driven Intelligent Notification; Mechanisms for Mobile Applications; Proceedings of the 2015 ACM International Joint Conference on Pervasive and Ubiquitous Computing (UBICOMP … [cited by applicant]
Cited By (1)
US 12,725,128