Abstract
Initializes a new vector store with embeddings and database configuration.
Instance of EmbeddingsInterface
used to embed queries.
Configuration settings for the database or storage system.
Defines the filter type used in search and delete operations. Can be an object for structured conditions or a string for simpler filtering.
Embeddings interface for generating vector embeddings from text queries, enabling vector-based similarity searches.
Abstract
addAdds documents to the vector store, embedding them first through the
embeddings
instance.
Array of documents to embed and add.
Optional
options: AddDocumentOptionsOptional configuration for embedding and storing documents.
A promise resolving to an array of document IDs or void, based on implementation.
Abstract
addAdds precomputed vectors and corresponding documents to the vector store.
An array of vectors representing each document.
Array of documents associated with each vector.
Optional
options: AddDocumentOptionsOptional configuration for adding vectors, such as indexing.
A promise resolving to an array of document IDs or void, based on implementation.
Creates a VectorStoreRetriever
instance with flexible configuration options.
Optional
kOrFields: number | Partial<VectorStoreRetrieverInput<SaveableVectorStore>>If a number is provided, it sets the k
parameter (number of items to retrieve).
Optional
filter: string | objectOptional filter criteria to limit the items retrieved based on the specified filter type.
Optional
callbacks: CallbacksOptional callbacks that may be triggered at specific stages of the retrieval process.
Optional
tags: string[]Tags to categorize or label the VectorStoreRetriever
. Defaults to an empty array if not provided.
Optional
metadata: Record<string, unknown>Additional metadata as key-value pairs to add contextual information for the retrieval process.
Optional
verbose: booleanIf true
, enables detailed logging for the retrieval process. Defaults to false
.
VectorStoreRetriever
instance based on the provided parameters.Optional
maxReturn documents selected using the maximal marginal relevance. Maximal marginal relevance optimizes for similarity to the query AND diversity among selected documents.
Text to look up documents similar to.
Abstract
saveSaves the current state of the vector store to the specified directory.
This method must be implemented by subclasses to define their own serialization process for persisting vector data. The implementation determines the structure and format of the saved data.
The directory path where the vector store data will be saved.
Searches for documents similar to a text query by embedding the query and performing a similarity search on the resulting vector.
Text query for finding similar documents.
Number of similar results to return. Defaults to 4.
Optional filter based on FilterType
.
Optional callbacks for monitoring search progress
A promise resolving to an array of DocumentInterface
instances representing similar documents.
Abstract
similarityPerforms a similarity search using a vector query and returns results along with their similarity scores.
Vector representing the search query.
Number of similar results to return.
Optional
filter: string | objectOptional filter based on FilterType
to restrict results.
A promise resolving to an array of tuples containing documents and their similarity scores.
Searches for documents similar to a text query by embedding the query, and returns results with similarity scores.
Text query for finding similar documents.
Number of similar results to return. Defaults to 4.
Optional filter based on FilterType
.
Optional callbacks for monitoring search progress
A promise resolving to an array of tuples, each containing a document and its similarity score.
Static
fromCreates 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.
Array of DocumentInterface
instances representing the documents to be stored.
Instance of EmbeddingsInterface
to embed the documents.
Database configuration settings.
A promise that resolves to a new VectorStore
instance.
Static
fromCreates 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.
Array of strings representing the text documents to be stored.
Metadata for the texts, either as an array (one for each text) or a single object (applied to all texts).
Instance of EmbeddingsInterface
to embed the texts.
Database configuration settings.
A promise that resolves to a new VectorStore
instance.
Static
loadLoads a vector store instance from the specified directory, using the provided embeddings to ensure compatibility.
This static method reconstructs a SaveableVectorStore
from previously
saved data. Implementations should interpret the saved data format to
recreate the vector store instance.
The directory path from which the vector store data will be loaded.
An instance of EmbeddingsInterface
to align
the embeddings with the loaded vector data.
A promise that resolves to a SaveableVectorStore
instance
constructed from the saved data.
Abstract class extending
VectorStore
that defines a contract for saving and loading vector store instances.The
SaveableVectorStore
class allows vector store implementations to persist their data and retrieve it when needed.The format for saving and loading data is left to the implementing subclass.Subclasses must implement the
save
method to handle their custom serialization logic, while theload
method enables reconstruction of a vector store from saved data, requiring compatible embeddings through theEmbeddingsInterface
.Abstract