IP Library › Granted Patent US 12,373,425
Granted Patent B1
US 12,373,425 · App. 18/643,594 · Granted Jul 29, 2025

Natural language query generation for feature stores using zero shot learning

Inventors: Harsh Vardhan Rai (Bangalore, IN); Kshitiz Lohia (Rewari, IN); Divyank Gupta (Bengaluru, IN); Srikanta Prasad Sondekoppam Vijayashankar (Bangalore, IN)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06F16/2423G06F16/24522G06F16/248
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,373,425
App. No.
18/643,594
Granted
Jul 29, 2025
Kind
B1
Abstract

The present disclosure pertains to natural language techniques for querying data stored in feature stores using zero shot learning. In a particular aspect, a computer-implemented method includes receiving a natural language query for retrieving features from a feature store, generating an input prompt by appending a script to the natural language query, and then using a large language model to determine tables or databases from the feature store that are relevant to the natural language query, retrieve metadata for the tables or databases from the feature store, determine feature groups comprising features relevant to the natural language query, and generate a programming language query based on the input prompt, the metadata, and the groups. A list of features within the feature groups that are accessible within the feature store may then be retrieved by executing the programming language query on the feature store.

Claims (61)

1. A computer-implemented method comprising:

receiving, from a user, a natural language query for retrieving features from a feature store;

generating an input prompt by appending text identifying the feature store to the natural language query;

determining, by a large language model (LLM), one or more tables or databases from the feature store that are relevant to the natural language query based on the input prompt;

retrieving, by the LLM, metadata for the one or more tables or databases from the feature store;

determining, by the LLM, one or more feature groups comprising features relevant to the natural language query based on the metadata;

generating, by the LLM, a programming language query based on the input prompt, the metadata, and the one or more feature groups;

retrieving a list of features within the one or more feature groups that are accessible within the feature store by executing the programming language query on the feature store; and

outputting the list of features to the user.

2. The computer-implemented method of claim 1 , further comprising:

training, validating, or implementing a machine learning model based on all or a portion of the features in the list of features; or

retrieving a set of data from a database based on the list of features, and training, validating, or implementing a machine learning model using the set of data.

3. The computer-implemented method of claim 1 , wherein the text appended to the input prompt is a script that comprises: identification of the LLM, identification of the feature store, and identification of a generator module that is implemented as part of the LLM and used to orchestrate the extraction of the one or more tables or databases and metadata from the feature store.

4. The computer-implemented method of claim 3 , wherein the generator module comprises an algorithm or series of functional steps that are executed by the LLM to determine the one or more tables or databases from the feature store, retrieve the metadata for the one or more tables or databases from the feature store, and determining the one or more feature groups.

5. The computer-implemented method of claim 4 , wherein executing the algorithm or series of functional steps comprises:

executing a first function that generates and executes, via a query runner function, one or more database queries on one or more databases for retrieval of a list of databases available within the feature store, the list of databases comprising the one or more databases;

executing a second function that generates and executes, via the query runner function, one or more table queries on the one or more databases for retrieval of a list of tables available within the one or more databases, wherein the tables represent feature groups and/or datasets available within the one or more databases and the list of tables comprise the one or more tables; and

executing a third function that generates and executes, via the query runner function, one or more table queries on the tables for retrieval of information about the tables and a list of features within each of the feature groups and/or datasets.

6. The computer-implemented method of claim 5 , wherein the first function also gathers information about the databases, including the databases' structure, the metadata, and schemas, and wherein the third function also gathers information about the tables, including the tables' the metadata and schemas.

7. The computer-implemented method of claim 6 , wherein the programming language query is generated based on the input prompt, the metadata and the schemas for the databases, the metadata and schema for the tables, and the one or more feature groups.

8. A system comprising:

one or more processors; and

one or more computer-readable media storing instructions which, when executed by the one or more processors, cause the system to perform operations comprising:

receiving, from a user, a natural language query for retrieving features from a feature store;

generating an input prompt by appending text identifying the feature store to the natural language query;

determining, by a large language model (LLM), one or more tables or databases from the feature store that are relevant to the natural language query based on the input prompt;

retrieving, by the LLM, metadata for the one or more tables or databases from the feature store;

determining, by the LLM, one or more feature groups comprising features relevant to the natural language query based on the metadata;

generating, by the LLM, a programming language query based on the input prompt, the metadata, and the one or more feature groups;

retrieving a list of features within the one or more feature groups that are accessible within the feature store by executing the programming language query on the feature store; and

outputting the list of features to the user.

9. The system of claim 8 , wherein the operations further comprise:

training, validating, or implementing a machine learning model based on all or a portion of the features in the list of features; or

retrieving a set of data from a database based on the list of features, and training, validating, or implementing a machine learning model using the set of data.

10. The system of claim 8 , wherein the text appended to the input prompt is a script that comprises: identification of the LLM, identification of the feature store, and identification of a generator module that is implemented as part of the LLM and used to orchestrate the extraction of the one or more tables or databases and metadata from the feature store.

11. The system of claim 10 , wherein the generator module comprises an algorithm or series of functional steps that are executed by the LLM to determine the one or more tables or databases from the feature store, retrieve the metadata for the one or more tables or databases from the feature store, and determining the one or more feature groups.

12. The system of claim 11 , wherein executing the algorithm or series of functional steps comprises:

executing a first function that generates and executes, via a query runner function, one or more database queries on one or more databases for retrieval of a list of databases available within the feature store, the list of databases comprising the one or more databases;

executing a second function that generates and executes, via the query runner function, one or more table queries on the one or more databases for retrieval of a list of tables available within the one or more databases, wherein the tables represent feature groups and/or datasets available within the one or more databases and the list of tables comprise the one or more tables; and

executing a third function that generates and executes, via the query runner function, one or more table queries on the tables for retrieval of information about the tables and a list of features within each of the feature groups and/or datasets.

13. The system of claim 12 , wherein the first function also gathers information about the databases, including the databases' structure, the metadata, and schemas, and wherein the third function also gathers information about the tables, including the tables' the metadata and schemas.

14. The system of claim 13 , wherein the programming language query is generated based on the input prompt, the metadata and the schemas for the databases, the metadata and schema for the tables, and the one or more feature groups.

15. One or more non-transitory computer-readable media storing instructions which, when executed by one or more processors, cause a system to perform operations comprising:

receiving, from a user, a natural language query for retrieving features from a feature store;

generating an input prompt by appending text identifying the feature store to the natural language query;

determining, by a large language model (LLM), one or more tables or databases from the feature store that are relevant to the natural language query based on the input prompt;

retrieving, by the LLM, metadata for the one or more tables or databases from the feature store;

determining, by the LLM, one or more feature groups comprising features relevant to the natural language query based on the metadata;

generating, by the LLM, a programming language query based on the input prompt, the metadata, and the one or more feature groups;

retrieving a list of features within the one or more feature groups that are accessible within the feature store by executing the programming language query on the feature store; and

outputting the list of features to the user.

16. The one or more non-transitory computer-readable media of claim 15 , wherein the operations further comprise:

training, validating, or implementing a machine learning model based on all or a portion of the features in the list of features; or

retrieving a set of data from a database based on the list of features, and training, validating, or implementing a machine learning model using the set of data.

17. The one or more non-transitory computer-readable media of claim 16 , wherein the text appended to the input prompt is a script that comprises: identification of the LLM, identification of the feature store, and identification of a generator module that is implemented as part of the LLM and used to orchestrate the extraction of the one or more tables or databases and metadata from the feature store.

18. The one or more non-transitory computer-readable media of claim 17 , wherein the generator module comprises an algorithm or series of functional steps that are executed by the LLM to determine the one or more tables or databases from the feature store, retrieve the metadata for the one or more tables or databases from the feature store, and determining the one or more feature groups.

19. The one or more non-transitory computer-readable media of claim 18 , wherein executing the algorithm or series of functional steps comprises:

executing a first function that generates and executes, via a query runner function, one or more database queries on one or more databases for retrieval of a list of databases available within the feature store, the list of databases comprising the one or more databases;

executing a second function that generates and executes, via the query runner function, one or more table queries on the one or more databases for retrieval of a list of tables available within the one or more databases, wherein the tables represent feature groups and/or datasets available within the one or more databases and the list of tables comprise the one or more tables; and

executing a third function that generates and executes, via the query runner function, one or more table queries on the tables for retrieval of information about the tables and a list of features within each of the feature groups and/or datasets.

20. The one or more non-transitory computer-readable media of claim 19 , wherein the first function also gathers information about the databases, including the databases' structure, the metadata, and schemas, wherein the third function also gathers information about the tables, including the tables' the metadata and schemas, and wherein the programming language query is generated based on the input prompt, the metadata and the schemas for the databases, the metadata and schema for the tables, and the one or more feature groups.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2024
From: RAI, HARSH VARDHAN; LOHIA, KSHITIZ; GUPTA, DIVYANK; SONDEKOPPAM VIJAYASHANKAR, SRIKANTA PRASAD
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 067205/0767 →
References Cited (26)
US 12027238B2 · Erez · 2024 [cited by examiner]
US 20150310862A1 · Dauphin · 2015 [cited by examiner]
US 20170206577A1 · Hunsaker · 2017 [cited by examiner]
US 20190303703A1 · Kumar · 2019 [cited by examiner]
US 20210049158A1 · Jiao · 2021 [cited by examiner]
US 20210090694A1 · Colley · 2021 [cited by examiner]
US 20210118136A1 · Hassan-Shafique · 2021 [cited by examiner]
US 20210191926A1 · Izenson et al. · 2021 [cited by applicant]
US 20220076164A1 · Conort et al. · 2022 [cited by applicant]
US 20230035639A1 · Zhao et al. · 2023 [cited by applicant]
US 20230297878A1 · Tchankotadze et al. · 2023 [cited by applicant]
US 20230418833A1 · Gambhir · 2023 [cited by examiner]
US 20240265281A1 · Hart · 2024 [cited by examiner]
US 20240362209A1 · Almaer · 2024 [cited by examiner]
US 20240419726A1 · Jenni · 2024 [cited by examiner]
US 20250086213A1 · Dilipkumar · 2025 [cited by examiner]
CN 116561184B · 2023 [cited by applicant]
“Feature Stores and LLMs-langchain”, Langchain, Available online at: https://blog.langchain.dev/feature-stores-and-llms/, May 9, 2023, pp. 1-8. [cited by applicant]
“Integrate Modern Data Architectures with Generative AI and Interact Using Prompts for Querying SQL Databases & APIs”, Available online at: https://github.com/aws-samples/amazon-sagemaker-genai-datamesh/blob/main/blogs/… [cited by applicant]
“Invoke Bedrock Model for SQL Query Generation”, Available online at: https://github.com/aws-samples/amazon-bedrock-workshop/blob/main/06_CodeGeneration/01_sql_query_generate_w_bedrock.ipynb, Retrieved from internet on … [cited by applicant]
“Personalizing LLMs with a Feature Store”, Open Data Science Conference, Available online at: https://odsc.com/speakers/personalizing-llms-with-a-feature-store/, 2024, 4 pages. [cited by applicant]
Aslett , “Databricks Utilizes Unity Catalog to Support Generative AI Development”, Ventana Research Analyst Perspectives, Available online at: https://mattaslett.ventanaresearch.com/databricks-utilizes-unity-catalog-to-… [cited by applicant]
Cui , et al., “Personalize your Generative AI Applications with Amazon SageMaker Feature Store”, Amazon Web Services Machine Learning Blog, Available online at: https://aws.amazon.com/blogs/machine-learning/personalize-… [cited by applicant]
Panda, et al., “Build a Robust Text-to-SQL Solution Generating Complex Queries, Self Correcting, and Querying Diverse Data Sources”, Amazon Web Services Machine Learning Blog, Available online at: https://aws.amazon.com… [cited by applicant]
Ren , et al., “Neural Graph Reasoning: Complex Logical Query Answering Meets Graph Databases”, Available online at: https://arxiv.org/pdf/2303.14617.pdf, Mar. 26, 2023, 65 pages. [cited by applicant]
Skeels , “Blizzard: A Lightweight, Yet Powerful ML Feature System for Prototyping and v1 Use Cases”, Cash App AI Blog, Available online at: https://ai.cash.app/blizzard, Jun. 20, 2023, pp. 1-16. [cited by applicant]
Cited By (3)
US 12,632,449 US 12,681,990 US 12,737,195