IP Library Granted Patent US 12,468,513
Granted Patent B2
US 12,468,513 · App. 18/952,811 · Granted Nov 11, 2025

Generate a script to automate a task associated with a webpage

Inventors: Shuhao Zhang (Cupertino, CA); Qi Zhai (Hillsborough, CA); Daniel Lawrence Schafer (Portola Valley, CA); Pavlo Dudka (Mountain View, CA); Mingyang Li (Bellevue, WA); Urvish Dipakkumar Thakker (Sunnyvale, CA); Mark Yi Chien Peng (Palo Alto, CA)
Assignee: Tiny Fish Inc.
G06F8/38G06F16/334G06F16/338G06F16/9538G06F40/20
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,468,513
App. No.
18/952,811
Granted
Nov 11, 2025
Kind
B2
Abstract

A query that includes one or more variables is received. The one or more variables correspond to one or more interactive elements. A large language model is utilized to generate a query response that associates one or more variables included in the query to the one or more interactive elements. A script is generated utilizing the query response that associates the one or more variables included in the query to the one or more interactive elements.

Claims (46)

1 . A method, comprising:

receiving a query that includes one or more variables, wherein the one or more variables correspond to a first set of one or more interactive elements;

processing the first set of one or more interactive elements to determine one or more corresponding parameters associated with the one or more interactive elements;

providing to a cloud service the query that includes the one or more variables and the one or more corresponding parameters associated with the one or more interactive elements included in the first set, wherein the cloud service generates a prompt based on the query and the one or more corresponding parameters associated with the one or more interactive elements and provides the prompt to a large language model to generate a query response that maps the one or more variables included in the query to the first set of the one or more interactive elements; and

generating a script utilizing the one or more variables included in the query based on the query response received from the large language model that maps the one or more variables included in the query to the first set of the one or more interactive elements.

2 . The method of claim 1 , wherein the first set of the one or more interactive elements are associated with a webpage.

3 . The method of claim 1 , wherein the first set of the one or more interactive elements are associated with an application.

4 . The method of claim 3 , further comprising obtaining user interface content associated with the application.

5 . The method of claim 4 , wherein the user interface content associated with the application is extracted from a user interface tree associated with the application.

6 . The method of claim 5 , wherein the user interface content associated with the application is extracted by a user interface content retrieval service associated with a device on which the application is installed.

7 . The method of claim 6 , wherein the extracted user interface content associated with the application includes a user interface layout, screen content, or a screenshot.

8 . The method of claim 6 , wherein the user interface content retrieval service is installed on the device.

9 . The method of claim 6 , wherein the user interface content retrieval service is installed on a second device separate from the device.

10 . The method of claim 4 , further comprising processing the user interface content associated with the application into a consumable format.

11 . The method of claim 10 , wherein the consumable format is XML, JSON or a screenshot.

12 . The method of claim 10 , wherein the processed user interface content associated with the application includes location information for the first set of the one or more interactive elements.

13 . The method of claim 10 , wherein the one or more corresponding parameters associated with the one or more interactive elements include a role, a name, and/or a tag.

14 . The method of claim 1 , wherein the large language model is configured to generate the query response in response to receiving the prompt.

15 . The method of claim 1 , further comprising receiving the query response from the large language model via the cloud service.

16 . A system, comprising:

a processor configured to:

receive a query that includes one or more variables, wherein the one or more variables correspond to a first set of one or more interactive elements;

process the first set of one or more interactive elements to determine one or more corresponding parameters associated with the one or more interactive elements;

provide to a cloud service the query that includes the one or more variables and the one or more corresponding parameters associated with the one or more interactive elements included in the first set, wherein the cloud service is configured to generate a prompt based on the query and the one or more corresponding parameters associated with the one or more interactive elements and provide the prompt to a large language model to generate a query response that maps one or more variables included in the query to the first set of the one or more interactive elements; and

generate a script utilizing the one or more variables included in the query based on the query response received from the large language model that maps the one or more variables included in the query to the first set of one or more interactive elements; and

a memory coupled to the processor and configured to provide the processor with instructions.

17 . The system of claim 16 , wherein the first set of the one or more interactive elements are associated with an application.

18 . The system of claim 17 , wherein the processor is configured to obtain user interface content associated with the application that is extracted from a user interface tree associated with the application.

19 . The system of claim 18 , wherein the processor is further configured to process the user interface content associated with the application into a consumable format.

20 . The system of claim 19 , wherein the consumable format is XML, JSON or a screenshot.

21 . The system of claim 19 , wherein the processed user interface content associated with the application includes location information for the first set of the one or more interactive elements.

22 . The system of claim 19 , wherein the one or more corresponding parameters associated with the one or more interactive elements include a role, a name, and/or a tag.

23 . The system of claim 17 , wherein the processor is further configured to obtain user interface content associated with the application.

24 . The system of claim 23 , wherein the user interface content associated with the application is extracted from a user interface tree associated with the application.

25 . The system of claim 24 , wherein the user interface content associated with the application is extracted by a user interface content retrieval service associated with a device on which the application is installed.

26 . The system of claim 25 , wherein the extracted user interface content associated with the application includes a user interface layout, screen content, or a screenshot.

27 . The system of claim 25 , wherein the user interface content retrieval service is installed on the device.

28 . The system of claim 25 , wherein the user interface content retrieval service is installed on a second device separate from the device.

29 . The system of claim 16 , wherein the first set of the one or more interactive elements are associated with a webpage.

30 . The system of claim 16 , wherein the large language model is configured to generate the query response in response to receiving the prompt.

31 . The system of claim 16 , wherein the processor is further configured to receive the query response from the large language model via the cloud service.

32 . A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions for:

receiving a query that includes one or more variables, wherein the one or more variables correspond to a first set of one or more interactive elements;

processing the first set of one or more interactive elements to determine one or more corresponding parameters associated with the one or more interactive elements;

providing to a cloud service the query that includes the one or more variables and the one or more corresponding parameters associated with the one or more interactive elements included in the first set, wherein the cloud service generates a prompt based on the query and the one or more corresponding parameters associated with the one or more interactive elements and provides the prompt to a large language model to generate a query response that maps the one or more variables included in the query to the first set of the one or more interactive elements; and

generating a script utilizing the one or more variables included in the query based on the query response received from the large language model that maps the one or more variables included in the query to the first set of one or more interactive elements.

Continuity (4)
Continuation 18630822 · Apr 9, 2024
Continuation In Part 18415431 · Jan 17, 2024
Provisional Application 63534541 · Aug 24, 2023
Related Publication 20250077197A1 · Mar 6, 2025
References Cited (92)
US 7231606B2 · Miller · 2007 [cited by applicant]
US 8255812B1 · Parparita · 2012 [cited by applicant]
US 9286290B2 · Allen · 2016 [cited by applicant]
US 9641591B1 · Kolam · 2017 [cited by applicant]
US 9811248B1 · Berg · 2017 [cited by applicant]
US 9824151B2 · Freund · 2017 [cited by applicant]
US 10296571B2 · Kosonen · 2019 [cited by applicant]
US 10366140B2 · Butt · 2019 [cited by applicant]
US 10382379B1 · Zhang · 2019 [cited by applicant]
US 10521106B2 · Cao · 2019 [cited by applicant]
US 10572894B1 · Traupman · 2020 [cited by applicant]
US 10585927B1 · Liao · 2020 [cited by examiner]
US 10628630B1 · Surace · 2020 [cited by applicant]
US 11100295B2 · Hirzel · 2021 [cited by applicant]
US 11748243B2 · Finkelstein · 2023 [cited by applicant]
US 12010076B1 · Andrew · 2024 [cited by applicant]
US 12014192B2 · Riva · 2024 [cited by applicant]
US 12067362B2 · Tunstall-Pedoe · 2024 [cited by applicant]
US 12073180B2 · Tunstall-Pedoe · 2024 [cited by applicant]
US 12333260B2 · Shi · 2025 [cited by examiner]
US 20060020481A1 · Lee · 2006 [cited by applicant]
US 20060020515A1 · Lee · 2006 [cited by applicant]
US 20070234217A1 · Miller · 2007 [cited by applicant]
US 20090012969A1 · Rail · 2009 [cited by examiner]
US 20090083363A1 · Kiciman · 2009 [cited by applicant]
US 20090083409A1 · Kiciman · 2009 [cited by applicant]
US 20090083714A1 · Kiciman · 2009 [cited by applicant]
US 20090089312A1 · Chi · 2009 [cited by examiner]
US 20090100345A1 · Miller · 2009 [cited by applicant]
US 20090327235A1 · Coladonato · 2009 [cited by applicant]
US 20110015954A1 · Ward · 2011 [cited by applicant]
US 20120192155A1 · Silbey · 2012 [cited by applicant]
US 20120290936A1 · Mahmud · 2012 [cited by examiner]
US 20150154158A1 · Zeine · 2015 [cited by applicant]
US 20150309990A1 · Allen · 2015 [cited by applicant]
US 20160042411A1 · Avner · 2016 [cited by applicant]
US 20160196111A1 · Pujari · 2016 [cited by examiner]
US 20170061528A1 · Arora · 2017 [cited by applicant]
US 20170091158A1 · Zeine · 2017 [cited by applicant]
US 20170169118A1 · Jhaj · 2017 [cited by examiner]
US 20170257393A1 · De Barros · 2017 [cited by applicant]
US 20170277625A1 · Shtuchkin · 2017 [cited by examiner]
US 20170300403A1 · Ramraz · 2017 [cited by examiner]
US 20180060303A1 · Sarikaya · 2018 [cited by applicant]
US 20180101537A1 · Govindarajan · 2018 [cited by applicant]
US 20180184178A1 · Hoeben · 2018 [cited by applicant]
US 20190050461A1 · Schrader · 2019 [cited by examiner]
US 20190179940A1 · Ross · 2019 [cited by applicant]
US 20190260750A1 · Mehrdad · 2019 [cited by applicant]
US 20190279084A1 · Darachi, Jr. · 2019 [cited by applicant]
US 20190340224A1 · Akhoury · 2019 [cited by applicant]
US 20190340256A1 · Kulkarni · 2019 [cited by applicant]
US 20200004798A1 · Weinert, Jr. · 2020 [cited by applicant]
US 20200065377A1 · Hirzel · 2020 [cited by applicant]
US 20200089597A1 · Kastyshyn · 2020 [cited by applicant]
US 20200097303A1 · O'Kane · 2020 [cited by applicant]
US 20200184960A1 · Suzuki · 2020 [cited by applicant]
US 20200233707A1 · Ramamurthy · 2020 [cited by examiner]
US 20200249963A1 · Yeh · 2020 [cited by applicant]
US 20200285353A1 · Rezazadeh Sereshkeh · 2020 [cited by examiner]
US 20200334301A1 · Walters · 2020 [cited by examiner]
US 20200349215A1 · Mcmurray · 2020 [cited by applicant]
US 20210019309A1 · Yadav · 2021 [cited by applicant]
US 20210191986A1 · Okajima · 2021 [cited by applicant]
US 20210256076A1 · Mcmurray · 2021 [cited by applicant]
US 20210295382A1 · Buchanan · 2021 [cited by applicant]
US 20210304064A1 · Mudi · 2021 [cited by applicant]
US 20210311939A1 · Shtilkind · 2021 [cited by examiner]
US 20210392144A1 · Vaidyanath · 2021 [cited by applicant]
US 20220269736A1 · Walters · 2022 [cited by examiner]
US 20220284064A1 · Shaw · 2022 [cited by examiner]
US 20230095006A1 · Riva · 2023 [cited by applicant]
US 20230161972A1 · Härmä · 2023 [cited by applicant]
US 20230195825A1 · Rao · 2023 [cited by examiner]
US 20230274094A1 · Tunstall-Pedoe · 2023 [cited by applicant]
US 20230393810A1 · Lange · 2023 [cited by applicant]
US 20240242154A1 · Jindal · 2024 [cited by applicant]
US 20240281446A1 · Bathwal · 2024 [cited by applicant]
US 20240289360A1 · Chepkwony · 2024 [cited by applicant]
US 20240303441A1 · Sobhy Deraz · 2024 [cited by applicant]
CN 103268337 · 2013 [cited by applicant]
CN 106709062 · 2017 [cited by applicant]
CN 108009183 · 2018 [cited by applicant]
CN 108769832 · 2018 [cited by applicant]
CN 111367414 · 2020 [cited by applicant]
CN 112540736 · 2021 [cited by applicant]
CN 114127672A · 2022 [cited by examiner]
CN 114647806 · 2022 [cited by applicant]
CN 114780893 · 2022 [cited by applicant]
CN 115017397 · 2022 [cited by applicant]
CN 117555539A · 2024 [cited by examiner]
EP 3767567 · 2021 [cited by applicant]