IP Library Granted Patent US 12,254,885
Granted Patent B2
US 12,254,885 · App. 18/097,157 · Granted Mar 18, 2025

Detecting and handling failures in other assistants

Inventors: Victor Carbune (Zurich, CH); Matthew Sharifi (Kilchberg, CH)
Assignee: GOOGLE LLC
G10L15/32G10L15/22G10L2015/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,254,885
App. No.
18/097,157
Granted
Mar 18, 2025
Kind
B2
Abstract

Techniques are described herein for detecting and handling failures in other automated assistants. A method includes: executing a first automated assistant in an inactive state at least in part on a computing device operated by a user; while in the inactive state, determining, by the first automated assistant, that a second automated assistant failed to fulfill a request of the user; in response to determining that the second automated assistant failed to fulfill the request of the user, the first automated assistant processing cached audio data that captures a spoken utterance of the user comprising the request that the second automated assistant failed to fulfill, or features of the cached audio data, to determine a response that fulfills the request of the user; and providing, by the first automated assistant to the user, the response that fulfills the request of the user.

Claims (55)

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

determining, by a first automated assistant executed at least in part on a computing device operated by a user, that a second automated assistant provided an inaccurate result in response to a request of the user that was directed to the second automated assistant, wherein determining that the second automated assistant provided the inaccurate result in response to the request of the user that was directed to the second automated assistant comprises:

processing, by the first automated assistant, audio data that captures an initial response provided by the second automated assistant responsive to the request; and

determining, by the first automated assistant, and based on the processing of the audio data, that the initial response is the inaccurate result; and

in response to the first automated assistant determining that the second automated assistant provided the inaccurate result in response to the request of the user that was directed to the second automated assistant;

automatically determining, by the first automated assistant, a response that fulfills the request of the user, wherein automatically determining the response that fulfills the request of the user comprises automatically processing, by the first automated assistant, cached audio data, or features of the cached audio data, that captures a spoken utterance of the user comprising the request responsive to which the second automated assistant provided the inaccurate result; and

automatically providing, by the first automated assistant to the user, the response that fulfills the request of the user.

2. The method according to claim 1 , wherein the cached audio data further captures the initial response provided by the second automated assistant to the request.

3. The method according to claim 1 , wherein:

the second automated assistant is executed on the computing device, and

the cached audio data is received by the first automated assistant via a meta assistant that is executed on the computing device.

4. The method according to claim 1 , wherein:

the second automated assistant is executed on another computing device, and

the cached audio data is received by the first automated assistant via one or more microphones of the computing device.

5. The method according to claim 1 , wherein processing the audio data that captures the initial response provided by the second automated assistant responsive to the request comprises:

receiving the audio data that captures the initial response provided by the second automated assistant responsive to the request; and

using speaker identification on the audio data that captures the initial response to determine that the initial response is provided by the second automated assistant.

6. The method according to claim 5 , wherein processing the audio data that captures the initial response provided by the second automated assistant responsive to the request further comprises:

processing the audio data that captures the initial response using a hotword detection model to determine that the initial response is the inaccurate result.

7. The method according to claim 5 , wherein processing the audio data that captures the initial response provided by the second automated assistant responsive to the request further comprises:

processing the audio data that captures the initial response using automatic speech recognition to generate text; and

processing the text using natural language processing techniques to determine that the initial response is the inaccurate result.

8. The method according to claim 1 , wherein the first automated assistant causes the response that fulfills the request of the user to be provided on another computing device.

9. The method according to claim 1 , wherein the first automated assistant causes the response that fulfills the request of the user to be displayed on a display of the computing device.

10. A computer program product comprising one or more non-transitory computer-readable storage media having program instructions collectively stored on the one or more computer-readable storage media, the program instructions executable to:

determine, by a first automated assistant executed at least in part on a computing device operated by a user, that a second automated assistant provided an inaccurate result in response to a request of the user that was directed to the second automated assistant, wherein the program instructions that are executable to determine that the second automated assistant provided the inaccurate result in response to the request of the user that was directed to the second automated assistant are executable to:

process, by the first automated assistant, audio data that captures an initial response provided by the second automated assistant responsive to the request; and

determine, by the first automated assistant, and based on the processing of the audio data, that the initial response is the inaccurate result; and

in response to the first automated assistant determining that the second automated assistant provided the inaccurate result in response to the request of the user that was directed to the second automated assistant:

automatically determine, by the first automated assistant, a response that fulfills the request of the user, wherein the program instructions that are executable to automatically determine the response that fulfills the request of the user are executable to automatically process, by the first automated assistant, cached audio data, or features of the cached audio data, that captures a spoken utterance of the user comprising the request responsive to which the second automated assistant provided the inaccurate result; and

automatically provide, by the first automated assistant to the user, an indication of availability of the response that fulfills the request of the user.

11. The computer program product according to claim 10 , wherein the cached audio data further captures the initial response provided by the second automated assistant to the request.

12. The computer program product according to claim 10 , wherein:

the second automated assistant is executed on the computing device, and

the cached audio data is received by the first automated assistant via a meta assistant that is executed on the computing device.

13. The computer program product according to claim 10 , wherein:

the second automated assistant is executed on another computing device, and

the cached audio data is received by the first automated assistant via one or more microphones of the computing device.

14. The computer program product according to claim 10 , wherein the program instructions that are executable to process the audio data that captures the initial response provided by the second automated assistant responsive to the request are executable to:

receive the audio data that captures the initial response provided by the second automated assistant responsive to the request;

use speaker identification on the audio data that captures the initial response to determine that the initial response is provided by the second automated assistant; and

process the audio data that captures the initial response using a hotword detection model to determine that the initial response is the inaccurate result.

15. The computer program product according to claim 10 , wherein the indication of availability is a visual indication provided by the computing device.

16. The computer program product according to claim 15 , the program instructions further being executable to:

receive, by the first automated assistant, a request for the response that fulfills the request of the user; and

in response to receiving the request for the response that fulfills the request of the user, provide, by the first automated assistant to the user, the response that fulfills the request of the user.

17. A system comprising:

a processor, a computer-readable memory, one or more computer-readable storage media, and program instructions collectively stored on the one or more computer-readable storage media, the program instructions executable to:

determine, by a first automated assistant executed at least in part on a computing device operated by a user, that a second automated assistant provided an inaccurate result in response to a request of the user that was directed to the second automated assistant, wherein the programs instructions that are executable to determine that the second automated assistant provided the inaccurate result in response to the request of the user that was directed to the second automated assistant are executable to:

process, by the first automated assistant, audio data that captures an initial response provided by the second automated assistant responsive to the request; and

determine, by the first automated assistant, and based on the processing of the audio data, that the initial response is the inaccurate result;

in response to the first automated assistant determining that the second automated assistant provided the inaccurate result in response to the request of the user that was directed to the second automated assistant, automatically provide an indication to the user that the first automated assistant is available to fulfill the request of the user; and

in response to receiving from the user an instruction to fulfill the request:

automatically determine, by the first automated assistant, a response that fulfills the request of the user, wherein the program instructions that are executable to automatically determine the response that fulfills the request of the user are executable to automatically process, by the first automated assistant, cached audio data, or features of the cached audio data, that captures a spoken utterance of the user comprising the request responsive to which the second automated assistant provided the inaccurate result; and

automatically provide, by the first automated assistant to the user, the response that fulfills the request of the user.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2023
From: CARBUNE, VICTOR; SHARIFI, MATTHEW
To: GOOGLE LLC
Reel/Frame 062786/0808 →
Continuity (3)
Continuation 17087358 · Nov 2, 2020
Provisional Application 63093163 · Oct 16, 2020
Related Publication 20230169980A1 · Jun 1, 2023
References Cited (41)
US 10354653B1 · Vijayvergia et al. · 2019 [cited by applicant]
US 10971158B1 · Patangay et al. · 2021 [cited by applicant]
US 11646013B2 · Tran · 2023 [cited by examiner]
US 20140244712A1 · Walters et al. · 2014 [cited by applicant]
US 20160104483A1 · Foerster et al. · 2016 [cited by applicant]
US 20160155443A1 · Khan et al. · 2016 [cited by applicant]
US 20170277993A1 · Beaver · 2017 [cited by examiner]
US 20180063624A1 · Boesen · 2018 [cited by applicant]
US 20180082683A1 · Chen et al. · 2018 [cited by applicant]
US 20180204569A1 · Nadkar et al. · 2018 [cited by applicant]
US 20180293484A1 · Wang · 2018 [cited by examiner]
US 20190013019A1 · Lawrence · 2019 [cited by applicant]
US 20190066672A1 · Wood et al. · 2019 [cited by applicant]
US 20190074013A1 · Lawrence · 2019 [cited by examiner]
US 20190180770A1 · Kothari et al. · 2019 [cited by applicant]
US 20190341039A1 · Bharadwaj · 2019 [cited by applicant]
US 20190385604A1 · Foerster et al. · 2019 [cited by applicant]
US 20200105273A1 · O'Donovan · 2020 [cited by examiner]
US 20200135200A1 · Taparia et al. · 2020 [cited by applicant]
US 20200380968A1 · Hatfield et al. · 2020 [cited by applicant]
US 20200402502A1 · Hanes · 2020 [cited by examiner]
US 20220093104A1 · Sharifi et al. · 2022 [cited by applicant]
US 20220115012A1 · Huang · 2022 [cited by examiner]
US 20220122610A1 · Carbune et al. · 2022 [cited by applicant]
CN 110462730 · 2019 [cited by applicant]
CN 110741338 · 2020 [cited by applicant]
CN 110785763 · 2020 [cited by applicant]
CN 110998717 · 2020 [cited by applicant]
EP 3224833 · 2017 [cited by applicant]
JP 2020144712 · 2020 [cited by applicant]
JP 2020154082 · 2020 [cited by applicant]
WO 2020116026 · 2020 [cited by applicant]
European Patent Office; International Search Report and Written Opinion of App. No. PCT/US2020/064987; 12 pages; dated Jul. 5, 2021. [cited by applicant]
Australian Patent Office; Examination Report issued in Application No. 2020472583; 4 pages; dated May 10, 2023. [cited by applicant]
Intellectual Property India; Examination Report issued in Application No. 202227064253; 7 pages; dated Dec. 18, 2023. [cited by applicant]
Japanese Patent Office; Notice of Reasons for Rejection issued in Application No. 2022-571845; 6 pages; dated Jan. 15, 2024. [cited by applicant]
Australian Patent Office; Notice of Acceptance issued for Application No. 2020472583, 3 pages, dated Sep. 28, 2023. [cited by applicant]
China National Intellectual Property Administration; Notification of First Office Action issued in Application No. 202080101563.3; 36 pages; dated May 23, 2024. [cited by applicant]
China National Intellectual Property Administration; Notice of Grant issued in Application No. 202080101563.3; 6 pages; dated Sep. 30, 2024. [cited by applicant]
European Patent Office, Intention to Grant issued in Application No. 20829155.9; 50 pages; dated Nov. 15, 2024. [cited by applicant]
Australian Patent Office; Examination Report issued in Application No. 2024200224; 4 pages; dated Dec. 3, 2024. [cited by applicant]