IP Library Granted Patent US 12,387,724
Granted Patent B2
US 12,387,724 · App. 18/013,083 · Granted Aug 12, 2025

Human-in-the-loop voice automation system

Inventors: Keun Soo Yim (San Jose, CA); Ilya Firman (Sunnyvale, CA); Adam Miller Coimbra (Mountain View, CA); Robert James Berry (New York, NY); Mugurel Ionut Andreica (Thalwil, CH); Mikhail Reutov (Zurich, CH); Gabriel Oak Taubman (Brooklyn, NY); Cliff Shan Kuang (San Francisco, CA); Michael Oh (Santa Clara, CA); Svetoslav Radoslavov Ganov (Alamo, CA); Kalyana Ram Desineni (San Jose, CA)
Assignee: GOOGLE LLC
G10L15/22G10L15/1822G10L2015/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,387,724
App. No.
18/013,083
Granted
Aug 12, 2025
Kind
B2
Abstract

The present disclosure is directed to automating user interactions in an application. In particular, the computing device can determine, based on the input data, an intent associated with performing an action on the computing device. Additionally, the computing device can invoke, using an application-level assistant component configured to provide an application-level interface on the computing device, execution of an application. Moreover, the computing device can transmit, to a system-level assistant component configured to provide a system-level interface with the computing device, instructions to interface with an actionable component of the application. The instructions can be transmitted using a trusted intermediary component configured to facilitate an interface between the system-level assistant component and the application-level assistant component. Furthermore, the computing device can engage, using the system-level assistant component, the actionable component of the application to perform the action.

Claims (44)

1. A computing device, comprising:

one or more processors; and

one or more memory devices storing instructions that are executable by the one or more processors to cause the one or more processors to perform operations, the operations comprising:

determining, based on input data associated with a user of the computing device, an intent associated with performing an action on the computing device;

invoking, using an application-level assistant component configured to provide an application-level interface on the computing device, execution of an application;

transmitting, to a system-level assistant component configured to provide a system-level interface with the computing device, instructions to interface with an actionable component of the application, wherein the instructions are transmitted using a trusted intermediary component configured to facilitate an interface between the system-level assistant component and the application-level assistant component, wherein the trusted intermediary component comprises an application program interface (API); and

engaging, using the system-level assistant component, the actionable component of the application to perform the action.

2. The computing device of claim 1 , wherein the API is a middleware API, an operating system kernel API, or a direct remote procedure call (RPC)-based API.

3. The computing device of claim 1 , wherein the actionable component comprises an input field, and wherein engagement of the actionable component comprises inputting a value in the input field.

4. The computing device of claim 1 , wherein the actionable component comprises a rendered output, and wherein engagement of the actionable component comprises parsing the rendered output to identify input fields.

5. The computing device of claim 1 , wherein the intent is determined using the application-level assistant component.

6. The computing device of claim 1 , wherein the system-level assistant component generates an input comprising data unavailable to the application-level assistant component.

7. The computing device of claim 1 , wherein engagement of the actionable component comprises determining missing information, and the operations further comprising:

initiating a follow-up query requesting the missing information.

8. The computing device of claim 7 , wherein the system-level assistant component generates the follow-up query.

9. The computing device of claim 7 , the operations further comprising:

parsing, using the system-level assistant component, a response to the follow-up query.

10. The computing device of claim 9 , the operations further comprising:

determining, by performing an automatic speech recognition (ASR) technique using the system-level assistant component, that the response to the follow-up query is unknown;

transmitting, using the trusted intermediary, the response to the application-level assistant component; and

analyzing, by performing a natural-language understanding (NLU) technique using the application-level assistant component, the response to the follow-up query to determine a parameter.

11. The computing device of claim 10 , the operations further comprising:

transmitting, using the trusted intermediary, the parameter to the system-level assistant component; and

engaging, using the system-level assistant component, the actionable component of the application by inputting the parameter in an input field.

12. The computing device of claim 7 , the operations further comprising:

modifying a sequence of tasks being performed by the system-level assistant component based on a response to the follow-up query.

13. The computing device of claim 1 , wherein the system-level assistant component performs an automatic speech recognition (ASR) technique and application-level assistant component performs a natural-language understanding (NLU) technique.

14. The computing device of claim 1 , wherein the application-level assistant component comprises a third-party assistant component.

15. The computing device of claim 1 , the operations further comprising:

retrieving, using the application-level assistant component, a content item obtained from a real-time content selection component of a remote server, the content item comprising the application.

16. The computing device of claim 1 , wherein the system-level assistant component is running as part of an operating system of the computing device or a middleware of the computing device.

17. The computing device of claim 1 , wherein the system-level assistant component has system-level privileges, wherein the system-level privileges includes one or more privileges not available to the application-level assistant component.

18. The computing device of claim 1 , wherein the application-level assistant component is opening the application, and wherein the system-level assistant component is performing a user-interface action associated with an activity of the application.

19. The computing device of claim 1 , wherein the computing device is a user computing device, and wherein the application-level assistant component and the system level assistant component are implemented by the user computing device.

20. A computer-implemented method comprising:

determining, based on input data associated with a user of a computing device, an intent associated with performing an action on the computing device;

invoking, using an application-level assistant component configured to provide an application-level interface on the computing device, execution of an application;

transmitting, to a system-level assistant component configured to provide a system-level interface with the computing device, instructions to interface with an actionable component of the application, wherein the instructions are transmitted using a trusted intermediary component configured to facilitate an interface between the system-level assistant component and the application-level assistant component, wherein the trusted intermediary component comprises an application program interface (API); and

engaging, using the system-level assistant component, the actionable component of the application to perform the action.

21. One or more non-transitory computer-readable media comprising instructions that when executed by one or more computing devices cause the one or more computing devices to perform operations comprising:

determining, based on input data associated with a user of the computing device, an intent associated with performing an action on the computing device;

invoking, using an application-level assistant component configured to provide an application-level interface on the computing device, execution of an application;

transmitting, to a system-level assistant component configured to provide a system-level interface with the computing device, instructions to interface with an actionable component of the application, wherein the instructions are transmitted using a trusted intermediary component configured to facilitate an interface between the system-level assistant component and the application-level assistant component, wherein the trusted intermediary component comprises an application program interface (API); and

engaging, using the system-level assistant component, the actionable component of the application to perform the action.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2023
From: YIM, KEUN SOO; FIRMAN, ILYA; COIMBRA, ADAM MILLER; BERRY, ROBERT JAMES; ANDREICA, MUGUREL-IONUT; REUTOV, MIKHAIL; TAUBMAN, GABRIEL OAK; KUANG, CLIFF SHAN; OH, MICHAEL; GANOV, SVETOSLAV RADOSLAVOV; DESINENI, KALYANA RAM
To: GOOGLE LLC
Reel/Frame 063518/0210 →
Continuity (1)
Related Publication 20230274737A1 · Aug 31, 2023
References Cited (16)
US 6408272B1 · White · 2002 [cited by examiner]
US 8165886B1 · Gagnon · 2012 [cited by examiner]
US 11087359B1 · Agarwal et al. · 2021 [cited by applicant]
US 11488589B1 · Fregly · 2022 [cited by examiner]
US 11500672B2 · Zeitlin · 2022 [cited by examiner]
US 20020065654A1 · Grant · 2002 [cited by examiner]
US 20200076901A1 · Smith · 2020 [cited by examiner]
US 20200160860A1 · Singh et al. · 2020 [cited by applicant]
US 20200168217A1 · Webster · 2020 [cited by examiner]
US 20200249985A1 · Zeitlin · 2020 [cited by examiner]
US 20220113934A1 · Lee et al. · 2022 [cited by applicant]
WO WO2020040753 · 2020 [cited by applicant]
WO WO2021107951 · 2021 [cited by applicant]
WO WO2021204098A1 · 2021 [cited by examiner]
International Search Report and Written Opinion for PCT/US2022/034936, mailed on Jan. 30, 2023, 13 pages. [cited by applicant]
International Preliminary Report on Patentability for PCT/US2022/031581, mailed on Dec. 12, 2024, 11 pages. [cited by applicant]