IP Library Granted Patent US 12,541,493
Granted Patent B1
US 12,541,493 · App. 18/755,593 · Granted Feb 3, 2026

Automatic vector index generation with machine-learned large language model

Inventors: Akhil Gupta (Hillsborough, CA); Eric Christopher Peter (Greenbrae, CA); Zhidong Qu (Milpitas, CA); Kevin Raji Cherian (San Ramon, CA); Sergei Sergeevich Tsarev (San Francisco, CA); Ankit Vij (San Francisco, CA)
Assignee: Databricks, Inc.
G06F16/2237
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,541,493
App. No.
18/755,593
Granted
Feb 3, 2026
Kind
B1
Abstract

A data processing system accesses a dataset from a data source and generates a set of embedding vectors representing the dataset in a latent space. The system splits the dataset into a set of data chunks and generates the embedding vectors. Each embedding vector represents a data chunk. The system may store the generated set of embedding vectors in a vector database that includes a plurality of embedding vectors. The system updates the embedding vectors by detecting a change to a first dataset that is represented by a first set of embedding vectors in the vector database, determining that the change to the first dataset is related to a first data chunk of the first set of data chunks included in the first dataset, updating a first embedding vector representing the first data chunk with the detected change; and storing the updated first embedding vector in the vector database.

Claims (95)

1 . A method, comprising:

accessing a dataset from a data source;

generating a set of embedding vectors representing the dataset in a latent space, wherein generating the set of embedding vectors comprises:

splitting the dataset into a set of data chunks;

indexing each data chunk of the set of data chunks with an embedding vector of the set of embedding vectors; and

generating, for each data chunk of the set of data chunks, metadata associated with a corresponding embedding vector, the metadata comprising version information indicative of the data chunk;

storing the generated set of embedding vectors in a vector database; and

updating the embedding vectors in the vector database, the updating further comprising:

detecting a change to the dataset;

determining, based on change information recorded in a transaction log for the dataset, that the change to the dataset is related to a first data chunk of the set of data chunks;

accessing the metadata corresponding to the first data chunk;

determining, based on a comparison of the version information in the metadata corresponding to the first data chunk with version information for the first data chunk indicated by the change information in the transaction log, that a first embedding vector representing the first data chunk requires an update;

updating the first embedding vector representing the first data chunk based on the change information; and

replacing the first embedding vector stored in the vector database with the updated first embedding vector.

2 . The method of claim 1 , wherein the metadata for each data chunk represents one or more parameters of the data chunk.

3 . The method of claim 1 , further comprising:

updating the metadata corresponding to the first data chunk based on the change information.

4 . The method of claim 1 , comprising:

receiving, from a client device, a query;

identifying, based on the query, one or more datasets using one or more sets of embedding vectors stored in the vector database;

generating a prompt for input to a machine-learned language model, the prompt specifying at least the query, the one or more identified datasets, and a request to generate a response to the query using the one or more identified datasets as contextual information of the query;

providing the prompt to a model serving system for execution by the machine-learned language model;

receiving, from the model serving system, an output generated by executing the machine-learned language model on the prompt, the output comprising the requested response to the query; and

providing for display a query response including the received output.

5 . The method of claim 4 , wherein identifying, based on the query, the one or more datasets further comprises:

applying an embedding model to the query; and

generating a user query embedding vector that represents the query in the latent space.

6 . The method of claim 1 , further comprising:

periodically updating the set of embedding vectors; and

storing the updated embedding vectors in the vector database.

7 . The method of claim 1 , wherein the dataset comprises information in a format of text, audio, video, or image.

8 . A non-transitory computer readable storage medium comprising stored program code comprising instructions that when executed by one or more processors of one or more computing devices cause the one or more computing devices to:

access a dataset from a data source;

generate a set of embedding vectors representing the dataset in a latent space, the instruction to generate the set of embedding vectors further comprising instructions to:

split the dataset into a set of data chunks;

index each data chunk of the set of data chunks with an embedding vector of the set of embedding vectors; and

generate, for each data chunk of the set of data chunks, metadata associated with a corresponding embedding vector, the metadata comprising version information indicative of the data chunk;

store the generated set of embedding vectors in a vector database; and

update the embedding vectors in the vector database, the instruction to update further comprising instructions to:

detect a change to the dataset;

determine, based on change information recorded in a transaction log for the dataset, that the change to the dataset is related to a first data chunk of the set of data chunks;

access the metadata corresponding to the first data chunk;

determine, based on a comparison of the version information in the metadata corresponding to the first data chunk with version information for the first data chunk indicated by the change information in the transaction log, that a first embedding vector representing the first data chunk requires an update;

update the first embedding vector representing the first data chunk based on the change information; and

replace the first embedding vector stored in the vector database with the updated first embedding vector.

9 . The non-transitory computer readable storage medium of claim 8 , wherein the metadata for each data chunk represents one or more parameters of the data chunk.

10 . The non-transitory computer readable storage medium of claim 8 , wherein the instructions further cause the one or more computing devices to:

update the metadata corresponding to the first data chunk based on the change information.

11 . The non-transitory computer readable storage medium of claim 8 , wherein the instructions further cause the one or more computing devices to:

receive, from a client device, a query;

identify, based on the query, one or more datasets using one or more sets of embedding vectors stored in the vector database;

generate a prompt for input to a machine-learned language model, the prompt specifying at least the query, the one or more identified datasets, and a request to generate a response to the query using the one or more identified datasets as contextual information of the query;

provide the prompt to a model serving system for execution by the machine-learned language model;

receive, from the model serving system, an output generated through execution of the machine-learned language model on the prompt, the output comprising the requested response to the query; and

provide for display a query response including the received output.

12 . The non-transitory computer readable storage medium of claim 11 , wherein the instructions to identify based on the query, the one or more datasets, cause the one or more computing devices to:

apply an embedding model to the query; and

generate a user query embedding vector that represents the query in the latent space.

13 . The non-transitory computer readable storage medium of claim 8 , wherein the instructions further cause the one or more computing devices to:

periodically update the set of embedding vectors; and

store the updated embedding vectors in the vector database.

14 . The non-transitory computer readable storage medium of claim 8 ,

wherein the dataset comprises information in a format of text, audio, video, or image.

15 . A system comprising:

one or more computer processors; and

one or more computer-readable mediums storing instructions that, when executed by the one or more computer processors, cause the system to:

access a dataset from a data source;

generate a set of embedding vectors representing the dataset in a latent space, the instruction to generate the set of embedding vectors further comprising instructions to:

split the dataset into a set of data chunks;

index each data chunk of the set of data chunks with an embedding vector of the set of embedding vectors; and

generate, for each data chunk of the set of data chunks, metadata associated with a corresponding embedding vector, the metadata comprising version information indicative of the data chunk;

store the generated set of embedding vectors in a vector database; and

update the embedding vectors in the vector database, the instruction to update further comprising instructions to:

detect a change to the dataset;

determine, based on change information recorded in a transaction log for the dataset, that the change to the dataset is related to a first data chunk of the set of data chunks;

access the metadata corresponding to the first data chunk;

determine, based on a comparison of the version information in the metadata corresponding to the first data chunk with version information for the first data chunk indicated by the change information in the transaction log, that a first embedding vector representing the first data chunk requires an update;

update the first embedding vector representing the first data chunk based on the change information; and

replace the first embedding vector stored in the vector database with the updated first embedding vector.

16 . The system of claim 15 , wherein the metadata for each data chunk represents one or more parameters of the data chunk.

17 . The system of claim 15 , wherein the instructions further cause the system to:

update the metadata corresponding to the first data chunk based on the change information.

18 . The system of claim 15 , wherein the instructions further cause the system to:

receive, from a client device, a query;

identify, based on the query, one or more datasets using one or more sets of embedding vectors stored in the vector database;

generate a prompt for input to a machine-learned language model, the prompt specifying at least the query, the one or more identified datasets, and a request to generate a response to the query using the one or more identified datasets as contextual information of the query;

provide the prompt to a model serving system for execution by the machine-learned language model;

receive, from the model serving system, an output generated through execution of the machine-learned language model on the prompt, the output comprising the requested response to the query; and

provide for display a query response including the received output.

19 . The system of claim 18 , wherein the instructions to identify the one or more datasets further cause the system to:

apply an embedding model to the query; and

generate a user query embedding vector that represents the query in the latent space.

20 . The system of claim 15 , wherein the instructions further cause the system to:

periodically update the set of embedding vectors; and

store the updated embedding vectors in the vector database.

Assignments (2)
SECURITY INTEREST Recorded Jan 6, 2025
From: DATABRICKS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 069825/0419 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 25, 2024
From: GUPTA, AKHIL; PETER, ERIC CHRISTOPHER; QU, ZHIDONG; CHERIAN, KEVIN RAJI; TSAREV, SERGEI SERGEEVICH; VIJ, ANKIT
To: DATABRICKS, INC.
Reel/Frame 068080/0593 →
References Cited (13)
US 12235882B1 · Chawla · 2025 [cited by examiner]
US 12265590B1 · Shiokawa · 2025 [cited by examiner]
US 20140047454A1 · Oliver · 2014 [cited by applicant]
US 20200175360A1 · Conti · 2020 [cited by applicant]
US 20220222235A1 · Menghani · 2022 [cited by examiner]
US 20230171235A1 · Chhibber · 2023 [cited by examiner]
US 20240378655A1 · Eyal · 2024 [cited by examiner]
US 20250086647A1 · Gao · 2025 [cited by applicant]
US 20250103746A1 · Gharibi · 2025 [cited by examiner]
CN 116701431A · 2023 [cited by examiner]
Ispas, A. et al. “Databricks SQL Statement Execution API—Announcing the Public Preview.” Databricks Platform Blog, Mar. 7, 2023, 12 pages, [Online] [Retrieved Aug. 27, 2024], Retrieved from the Internet <URL:https://www… [cited by applicant]
OPENSEARCH. “Paginate Results.” OpenSearch.org, Nov. 17, 2022, 9 pages, [Online] [Retrieved Aug. 27, 2024], Retrieved from the Internet <URL:https://opensearch.org/docs/latest/search-plugins/searching-data/paginate/>. [cited by applicant]
United States Office Action, U.S. Appl. No. 18/755,591, filed Jul. 10, 2025, 29 pages. [cited by applicant]
Cited By (1)
US 12,682,217