Embedding Search With Cached Vectors for Fast Similar Record Retrieval

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing embedding-based search methods for finding similar data records are inefficient in terms of computing resources and time, especially for 'find similar' or 'more like this' searches, as generating embeddings is costly and time-consuming.

Innovation Solution

A computer-implemented method that generates embeddings in batches infrequently and caches them, allowing for optimized embedding searches by using cached embeddings or generating new ones on demand, and optionally combining with keyword searches to provide near-instantaneous results.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If embedding generation is performed frequently to ensure up-to-date search results, then search accuracy is improved, but computing resource consumption and time cost increase

Engineering Contradiction:
Improvesearch accuracyVSAvoidcomputing resource consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary embedding generation in batch mode for new or updated data records before they are added to the search index. This advance preparation ensures that embeddings are ready when needed for search operations, eliminating the need for frequent on-demand embedding generation and reducing computing resource consumption during actual search operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of generating embeddings continuously or on every data update, the system adopts periodic batch processing where embeddings are generated at scheduled intervals or when a threshold of new records is reached. This periodic approach balances search accuracy with reduced computing resource usage compared to continuous embedding generation.

Inventive Principle:
Principle #19Periodic action

2Loss of time

If embedding generation is performed frequently to maintain current data, then data currency is improved, but processing time increases

Engineering Contradiction:
Improvedata currencyVSAvoidprocessing time
Core Design Contradiction:
Loss of timeVSDuration of action of moving object

Solution Approach 1:

Embeddings are generated in advance during batch processing operations before the data records are made searchable. This preliminary action ensures that when search operations occur, the embedding generation work has already been completed, reducing the processing time experienced during actual search operations while maintaining data currency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains continuous search functionality by using pre-generated embeddings from batch processing, ensuring that search operations can proceed without interruption or delay for embedding generation. This continuity eliminates processing time delays during search operations while maintaining up-to-date search results through scheduled batch updates.

Inventive Principle:
Principle #20Continuity of useful action

3Measurement precision

If on-demand embedding generation is used for each search query, then search relevance is improved, but response time deteriorates

Engineering Contradiction:
Improvesearch relevanceVSAvoidresponse time
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The system generates embeddings in advance during batch processing operations, so that when search queries are submitted, the embeddings are already available in the search index. This preliminary preparation eliminates the need for time-consuming on-demand embedding generation during search operations, maintaining search relevance while dramatically improving response time.

Inventive Principle:
Principle #10Preliminary action

4Use of energy by moving object

If batch processing is used to reduce resource usage, then resource efficiency is improved, but model update frequency decreases

Engineering Contradiction:
Improveresource efficiencyVSAvoidmodel update frequency
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The system implements periodic batch processing where embeddings are generated and the search index is updated at scheduled intervals or when a threshold of new records is reached. This periodic approach balances resource efficiency by avoiding continuous processing while maintaining model update frequency sufficient to keep search results current, resolving the contradiction between resource efficiency and update frequency.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS20250355914A1Optimized embedding search
Publication Date: 2025.11.20 SHOPIFY INC
  • US20250355914A1 patent drawing
  • US20250355914A1 patent drawing
  • US20250355914A1 patent drawing

AI summary

Systems and methods are disclosed for an embedding search that are optimized, e.g., for a “find similar” or “more like this” search. In one embodiment, a computer-implemented method comprises receiving a request to find data records in a collection of data records that are similar to a particular data record, determining that the particular data record is not included in a model comprising data indicative of similar data records among the collection based on embeddings of data records in the collection, and, responsive thereto, generating at least one embedding of the particular data record and searching the model for a subset of the collection that are similar to the particular data record, based on the at least one embedding. The method further comprises providing a response to the request comprising at least some of the similar data records.