Embeddings interface for generating vector embeddings from text queries, enabling vector-based similarity searches.
Defines the filter type used in search and delete operations. Can be an object for structured conditions or a string for simpler filtering.
Returns the average of cosine distances between vectors a and b
first vector
second vector
A map of aliases for constructor args. Keys are the attribute names, e.g. "foo". Values are the alias that will replace the key in serialization. This is used to eg. make argument names match Python.
A map of additional attributes to merge with constructor args. Keys are the attribute names, e.g. "foo". Values are the attribute values, which will be serialized. These attributes need to be accepted by the constructor as arguments.
The final serialized identifier for the module.
A map of secrets, which will be omitted from serialization. Keys are paths to the secret in constructor args, e.g. "foo.bar.baz". Values are the secret ids, which will be used when deserializing.
A manual list of keys that should be serialized. If not overridden, all fields passed into the constructor will be serialized.
Abstract
_Returns a string representing the type of vector store, which subclasses must implement to identify their specific vector storage type.
A string indicating the vector store type.
Method to add documents to the memory vector store. It extracts the text from each document, generates embeddings for them, and adds the resulting vectors to the store.
Array of Document
instances to be added to the store.
Promise that resolves when all documents have been added.
Method to add vectors to the memory vector store. It creates
MemoryVector
instances for each vector and document pair and adds
them to the store.
Array of vectors to be added to the store.
Array of Document
instances corresponding to the vectors.
Promise that resolves when all vectors have been added.
Creates a VectorStoreRetriever
instance with flexible configuration options.
Optional
kOrFields: number | Partial<VectorStoreRetrieverInput<FakeVectorStore>>If a number is provided, it sets the k
parameter (number of items to retrieve).
Optional
filter: (doc: Document) => booleanOptional 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.Deletes documents from the vector store based on the specified parameters.
Optional
_params: Record<string, any>Flexible key-value pairs defining conditions for document deletion.
A promise that resolves once the deletion is complete.
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.
Options for configuring a maximal marginal relevance (MMR) search.
MMR search optimizes for both similarity to the query and diversity among the results, balancing the retrieval of relevant documents with variation in the content returned.
Fields:
fetchK
(optional): The initial number of documents to retrieve from the
vector store before applying the MMR algorithm. This larger set provides a
pool of documents from which the algorithm can select the most diverse
results based on relevance to the query.
filter
(optional): A filter of type FilterType
to refine the search
results, allowing additional conditions to target specific subsets
of documents.
k
: The number of documents to return in the final results. This is the
primary count of documents that are most relevant to the query.
lambda
(optional): A value between 0 and 1 that determines the balance
between relevance and diversity:
lambda
of 0 emphasizes diversity, maximizing content variation.lambda
of 1 emphasizes similarity to the query, focusing on relevance.
Values between 0 and 1 provide a mix of relevance and diversity.Optional
fetchK?: numberOptional
filter?: FilterTypeOptional
lambda?: numberSearches 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.
Method to perform a similarity search in the memory vector store. It
calculates the similarity between the query vector and each vector in
the store, sorts the results by similarity, and returns the top k
results along with their scores.
Query vector to compare against the vectors in the store.
Number of top results to return.
Optional
filter: (doc: Document) => booleanOptional filter function to apply to the vectors before performing the search.
Promise that resolves with an array of tuples, each containing a Document
and its similarity score.
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
fromStatic method to create a FakeVectorStore
instance from an array of
Document
instances. It adds the documents to the store.
Array of Document
instances to be added to the store.
Embeddings
instance used to generate embeddings for the documents.
Optional
dbConfig: FakeVectorStoreArgsOptional FakeVectorStoreArgs
to configure the FakeVectorStore
instance.
Promise that resolves with a new FakeVectorStore
instance.
Static
fromStatic method to create a FakeVectorStore
instance from an existing
index. It creates a new FakeVectorStore
instance without adding any
documents or vectors.
Embeddings
instance used to generate embeddings for the documents.
Optional
dbConfig: FakeVectorStoreArgsOptional FakeVectorStoreArgs
to configure the FakeVectorStore
instance.
Promise that resolves with a new FakeVectorStore
instance.
Static
fromStatic method to create a FakeVectorStore
instance from an array of
texts. It creates a Document
for each text and metadata pair, and
adds them to the store.
Array of texts to be added to the store.
Array or single object of metadata corresponding to the texts.
Embeddings
instance used to generate embeddings for the texts.
Optional
dbConfig: FakeVectorStoreArgsOptional FakeVectorStoreArgs
to configure the FakeVectorStore
instance.
Promise that resolves with a new FakeVectorStore
instance.
Static
lc_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.
Class that extends
VectorStore
to store vectors in memory. Provides methods for adding documents, performing similarity searches, and creating instances from texts, documents, or an existing index.