class MatchingEngineA class that represents a connection to a Google Vertex AI Matching Engine instance.
The host to connect to for queries and upserts.
The version of the API functions. Part of the path.
Explicitly set Google Auth credentials if you cannot get them from google auth application-default login This is useful for serverless or autoscaling environments like Fargate
The id for the "deployed index", which is an identifier in the index endpoint that references the index (but is not the index id)
Docstore that retains the document, stored by ID
Embeddings interface for generating vector embeddings from text queries, enabling vector-based similarity searches.
Hostname for the API call
The id for the index
The id for the index endpoint
Region where the LLM is stored
Returns a string representing the type of vector store, which subclasses must implement to identify their specific vector storage type.
Adds documents to the vector store, embedding them first through the
embeddings instance.
Adds precomputed vectors and corresponding documents to the vector store.
Creates a VectorStoreRetriever instance with flexible configuration options.
Create an index datapoint for the vector and document id. If an id does not exist, create it and set the document to its value.
Deletes documents from the vector store based on the specified parameters.
For this index endpoint, figure out what API Endpoint URL and deployed
index ID should be used to do upserts and queries.
Also sets the apiEndpoint and deployedIndexId property for future use.
Return documents selected using the maximal marginal relevance. Maximal marginal relevance optimizes for similarity to the query AND diversity among selected documents.
Given the metadata from a document, convert it to an array of Restriction objects that may be passed to the Matching Engine and stored. The default implementation flattens any metadata and includes it as an "allowList". Subclasses can choose to convert some of these to "denyList" items or to add additional restrictions (for example, to format dates into a different structure or to add additional restrictions based on the date).
Searches for documents similar to a text query by embedding the query and performing a similarity search on the resulting vector.
Performs a similarity search using a vector query and returns results along with their similarity scores.
Searches for documents similar to a text query by embedding the query, and returns results with similarity scores.
Creates a VectorStore instance from an array of documents, using the specified
embeddings and database configuration.
Subclasses must implement this method to define how documents are embedded and stored. Throws an error if not overridden.
Creates a VectorStore instance from an array of text strings and optional
metadata, using the specified embeddings and database configuration.
Subclasses must implement this method to define how text and metadata are embedded and stored in the vector store. Throws an error if not overridden.
The name of the serializable. Override to provide an alias or to preserve the serialized module name in minified environments.
Implemented as a static method to support loading logic.