Tony20100/langchain_full huggingface dataset:
Return docs selected using the maximal marginal relevance.
as_retriever(**kwargs)
Return VectorStoreRetriever initialized from this VectorStore.
asearch(query, search_type, **kwargs)
Return docs most similar to query using specified search type.
asimilarity_search(query[, k])
Return docs most similar to query.
asimilarity_search_by_vector(embedding[, k])
Return docs most similar to embedding vector.
asimilarity_search_with_relevance_scores(query)
Return docs and relevance scores in the range [0, 1].
asimilarity_search_with_score(*args, **kwargs)
Run similarity search with distance.
delete([ids])
Delete by vector ID or other criteria.
from_components(project_id, region, ...[, ...])
Takes the object creation out of the constructor. :param project_id: The GCP project id. :param region: The default location making the API calls. It must have :param the same location as the GCS bucket and must be regional.: :param gcs_bucket_name: The location where the vectors will be stored in :param order for the index to be created.: :param index_id: The id of the created index. :param endpoint_id: The id of the created endpoint. :param private_service_connect_ip_address: The IP address of the private :param service connect instance.: :param credentials_path: (Optional) The path of the Google credentials on :param the local file system.: :param embedding: The Embeddings that will be used for :param embedding the texts.: :param stream_update: Whether to update with streaming or batching. VectorSearch                       index must be compatible with stream/batch updates. :param kwargs: Additional keyword arguments to pass to                VertexAIVectorSearch.__init__().
from_documents(documents, embedding, **kwargs)
from_documents(documents, embedding, **kwargs)
Return VectorStore initialized from documents and embeddings.
from_texts(texts, embedding[, metadatas])
Use from components instead.
max_marginal_relevance_search(query[, k, ...])
Return docs selected using the maximal marginal relevance.
max_marginal_relevance_search_by_vector(...)
Return docs selected using the maximal marginal relevance.
search(query, search_type, **kwargs)
Return docs most similar to query using specified search type.
similarity_search(query[, k, filter, ...])
Return docs most similar to query. :param query: The string that will be used to search for similar documents. :param k: The amount of neighbors that will be retrieved. :param filter: Optional. A list of Namespaces for filtering the matching results. For example:                [Namespace("color", ["red"], []), Namespace("shape", [], ["squared"])]                will match datapoints that satisfy "red color" but not include                datapoints with "squared shape". Please refer to                https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json                 for more detail. :param numeric_filter: Optional. A list of NumericNamespaces for filterning                        the matching results. Please refer to                        https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json                        for more detail.
similarity_search_by_vector(embedding[, k])
Return docs most similar to embedding vector.
similarity_search_by_vector_with_score(embedding)
Return docs most similar to embedding vector.
similarity_search_by_vector_with_score(embedding)
Return docs most similar to the embedding and their cosine distance. :param embedding: Embedding to look up documents similar to. :param k: Number of Documents to return. Defaults to 4. :param filter: Optional. A list of Namespaces for filtering                the matching results. For example:                [Namespace("color", ["red"], []), Namespace("shape", [], ["squared"])]                will match datapoints that satisfy "red color" but not include                datapoints with "squared shape". Please refer to                https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json                for more detail. :param numeric_filter: Optional. A list of NumericNamespaces for filterning                        the matching results. Please refer to                        https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json                        for more detail.
similarity_search_with_relevance_scores(query)
Return docs and relevance scores in the range [0, 1].
similarity_search_with_score(query[, k, ...])
similarity_search_with_score(query[, k, ...])
Return docs most similar to query and their cosine distance from the query. :param query: String query look up documents similar to. :param k: Number of Documents to return. Defaults to 4. :param filter: Optional. A list of Namespaces for filtering                the matching results. For example:                [Namespace("color", ["red"], []), Namespace("shape", [], ["squared"])]                will match datapoints that satisfy "red color" but not include                datapoints with "squared shape". Please refer to                https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json                for more detail. :param numeric_filter: Optional. A list of NumericNamespaces for filterning                        the matching results. Please refer to                        https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json                        for more detail.
Parameters
searcher (Searcher) – 
document_storage (DocumentStorage) – 
embbedings (Optional[Embeddings]) – 
__init__(searcher: Searcher, document_storage: DocumentStorage, embbedings: Optional[Embeddings] = None) → None¶
Constructor.
:param searcher: Object in charge of searching and storing the index.
:param document_storage: Object in charge of storing and retrieving documents.
:param embbedings: Object in charge of transforming text to embbeddings.
Parameters
searcher (Searcher) – 
document_storage (DocumentStorage) – 
embbedings (Optional[Embeddings]) – 
Return type
None
async aadd_documents(documents: List[Document], **kwargs: Any) → List[str]¶
Run more documents through the embeddings and add to the vectorstore.
Parameters
documents (List[Document]) – Documents to add to the vectorstore.
Parameters
documents (List[Document]) – Documents to add to the vectorstore.
kwargs (Any) – 
Returns
List of IDs of the added texts.
Return type
List[str]
async aadd_texts(texts: Iterable[str], metadatas: Optional[List[dict]] = None, **kwargs: Any) → List[str]¶
Run more texts through the embeddings and add to the vectorstore.
Parameters
texts (Iterable[str]) – Iterable of strings to add to the vectorstore.
metadatas (Optional[List[dict]]) – Optional list of metadatas associated with the texts.
**kwargs (Any) – vectorstore specific parameters.
Returns
List of ids from adding the texts into the vectorstore.
Return type
List[str]
add_documents(documents: List[Document], **kwargs: Any) → List[str]¶
Run more documents through the embeddings and add to the vectorstore.
Parameters
documents (List[Document]) – Documents to add to the vectorstore.
kwargs (Any) – 
Returns
List of IDs of the added texts.
Return type
List[str]
add_texts(texts: Iterable[str], metadatas: Optional[List[dict]] = None, is_complete_overwrite: bool = False, **kwargs: Any) → List[str]¶
Run more texts through the embeddings and add to the vectorstore.
:param texts: Iterable of strings to add to the vectorstore.
:param metadatas: Optional list of metadatas associated with the texts.
:param kwargs: vectorstore specific parameters.
Returns
List of ids from adding the texts into the vectorstore.
Parameters
texts (Iterable[str]) – 
metadatas (Optional[List[dict]]) – 
is_complete_overwrite (bool) – 
kwargs (Any) – 
Return type
List[str]
Parameters
query (str) – Input text.
k (int) – Number of Documents to return. Defaults to 4.
**kwargs (Any) – kwargs to be passed to similarity search. Should include:
score_threshold: Optional, a floating point value between 0 to 1 to
filter the resulting set of retrieved docs
Returns
List of Tuples of (doc, similarity_score)
Return type
List[Tuple[Document, float]]
async asimilarity_search_with_score(*args: Any, **kwargs: Any) → List[Tuple[Document, float]]¶
Run similarity search with distance.
Returns
List of Tuples of (doc, similarity_score)
Parameters
args (Any) – 
kwargs (Any) – 
Return type
List[Tuple[Document, float]]
delete(ids: Optional[List[str]] = None, **kwargs: Any) → Optional[bool]¶
Delete by vector ID or other criteria.
Parameters
ids (Optional[List[str]]) – List of ids to delete.
**kwargs (Any) – Other keyword arguments that subclasses might use.
Returns
True if deletion is successful,
False otherwise, None if not implemented.
Return type
Optional[bool]
classmethod from_components(project_id: str, region: str, gcs_bucket_name: str, index_id: str, endpoint_id: str, private_service_connect_ip_address: Optional[str] = None, credentials_path: Optional[str] = None, embedding: Optional[Embeddings] = None, stream_update: bool = False, **kwargs: Any) → VectorSearchVectorStore¶
Takes the object creation out of the constructor.
:param project_id: The GCP project id.
:param region: The default location making the API calls. It must have
:param the same location as the GCS bucket and must be regional.:
:param the same location as the GCS bucket and must be regional.:
:param gcs_bucket_name: The location where the vectors will be stored in
:param order for the index to be created.:
:param index_id: The id of the created index.
:param endpoint_id: The id of the created endpoint.
:param private_service_connect_ip_address: The IP address of the private
:param service connect instance.:
:param credentials_path: (Optional) The path of the Google credentials on
:param the local file system.:
:param embedding: The Embeddings that will be used for
:param embedding the texts.:
:param stream_update: Whether to update with streaming or batching. VectorSearch
index must be compatible with stream/batch updates.
Parameters
kwargs (Any) – Additional keyword arguments to pass to
VertexAIVectorSearch.__init__().
project_id (str) – 
region (str) – 
gcs_bucket_name (str) – 
index_id (str) – 
endpoint_id (str) – 
private_service_connect_ip_address (Optional[str]) – 
credentials_path (Optional[str]) – 
embedding (Optional[Embeddings]) – 
stream_update (bool) – 
Returns
A configured VertexAIVectorSearch with the texts added to the index.
Return type
VectorSearchVectorStore
classmethod from_documents(documents: List[Document], embedding: Embeddings, **kwargs: Any) → VST¶
Return VectorStore initialized from documents and embeddings.
Parameters
documents (List[Document]) – List of Documents to add to the vectorstore.
embedding (Embeddings) – Embedding function to use.
kwargs (Any) – 
Return type
VST
kwargs (Any) – 
Return type
VST
classmethod from_texts(texts: List[str], embedding: Embeddings, metadatas: Optional[List[dict]] = None, **kwargs: Any) → _BaseVertexAIVectorStore¶
Use from components instead.
Parameters
texts (List[str]) – 
embedding (Embeddings) – 
metadatas (Optional[List[dict]]) – 
kwargs (Any) – 
Return type
_BaseVertexAIVectorStore
max_marginal_relevance_search(query: str, k: int = 4, fetch_k: int = 20, lambda_mult: float = 0.5, **kwargs: Any) → List[Document]¶
Return docs selected using the maximal marginal relevance.
Maximal marginal relevance optimizes for similarity to query AND diversity
among selected documents.
Parameters
query (str) – Text to look up documents similar to.
k (int) – Number of Documents to return. Defaults to 4.
fetch_k (int) – Number of Documents to fetch to pass to MMR algorithm.
lambda_mult (float) – Number between 0 and 1 that determines the degree
of diversity among the results with 0 corresponding
to maximum diversity and 1 to minimum diversity.
Defaults to 0.5.
kwargs (Any) – 
Returns
List of Documents selected by maximal marginal relevance.
Return type
List[Document]
max_marginal_relevance_search_by_vector(embedding: List[float], k: int = 4, fetch_k: int = 20, lambda_mult: float = 0.5, **kwargs: Any) → List[Document]¶
Return docs selected using the maximal marginal relevance.
Maximal marginal relevance optimizes for similarity to query AND diversity
among selected documents.
Parameters
Maximal marginal relevance optimizes for similarity to query AND diversity
among selected documents.
Parameters
embedding (List[float]) – Embedding to look up documents similar to.
k (int) – Number of Documents to return. Defaults to 4.
fetch_k (int) – Number of Documents to fetch to pass to MMR algorithm.
lambda_mult (float) – Number between 0 and 1 that determines the degree
of diversity among the results with 0 corresponding
to maximum diversity and 1 to minimum diversity.
Defaults to 0.5.
kwargs (Any) – 
Returns
List of Documents selected by maximal marginal relevance.
Return type
List[Document]
search(query: str, search_type: str, **kwargs: Any) → List[Document]¶
Return docs most similar to query using specified search type.
Parameters
query (str) – Input text
search_type (str) – Type of search to perform. Can be “similarity”,
“mmr”, or “similarity_score_threshold”.
**kwargs (Any) – Arguments to pass to the search method.
Return type
List[Document]
similarity_search(query: str, k: int = 4, filter: Optional[List[Namespace]] = None, numeric_filter: Optional[List[NumericNamespace]] = None, **kwargs: Any) → List[Document]¶
Return docs most similar to query.
:param query: The string that will be used to search for similar documents.
:param k: The amount of neighbors that will be retrieved.
:param filter: Optional. A list of Namespaces for filtering the matching results.
For example:
[Namespace(“color”, [“red”], []), Namespace(“shape”, [], [“squared”])]
will match datapoints that satisfy “red color” but not include
will match datapoints that satisfy “red color” but not include
datapoints with “squared shape”. Please refer to
https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json
for more detail.
Parameters
numeric_filter (Optional[List[NumericNamespace]]) – Optional. A list of NumericNamespaces for filterning
the matching results. Please refer to
https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json
for more detail.
query (str) – 
k (int) – 
filter (Optional[List[Namespace]]) – 
kwargs (Any) – 
Returns
A list of k matching documents.
Return type
List[Document]
similarity_search_by_vector(embedding: List[float], k: int = 4, **kwargs: Any) → List[Document]¶
Return docs most similar to embedding vector.
Parameters
embedding (List[float]) – Embedding to look up documents similar to.
k (int) – Number of Documents to return. Defaults to 4.
kwargs (Any) – 
Returns
List of Documents most similar to the query vector.
Return type
List[Document]
similarity_search_by_vector_with_score(embedding: List[float], k: int = 4, filter: Optional[List[Namespace]] = None, numeric_filter: Optional[List[NumericNamespace]] = None) → List[Tuple[Document, float]]¶
Return docs most similar to the embedding and their cosine distance.
:param embedding: Embedding to look up documents similar to.
:param k: Number of Documents to return. Defaults to 4.
:param filter: Optional. A list of Namespaces for filtering
the matching results.
For example:
[Namespace(“color”, [“red”], []), Namespace(“shape”, [], [“squared”])]
will match datapoints that satisfy “red color” but not include
datapoints with “squared shape”. Please refer to
https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json
for more detail.
Parameters
numeric_filter (Optional[List[NumericNamespace]]) – Optional. A list of NumericNamespaces for filterning
the matching results. Please refer to
https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json
for more detail.
embedding (List[float]) – 
k (int) – 
filter (Optional[List[Namespace]]) – 
Returns
List of documents most similar to
the query text and cosine distance in float for each.
Lower score represents more similarity.
Return type
List[Tuple[Document, float]]
similarity_search_with_relevance_scores(query: str, k: int = 4, **kwargs: Any) → List[Tuple[Document, float]]¶
Return docs and relevance scores in the range [0, 1].
0 is dissimilar, 1 is most similar.
Parameters
query (str) – Input text.
k (int) – Number of Documents to return. Defaults to 4.
**kwargs (Any) – kwargs to be passed to similarity search. Should include:
score_threshold: Optional, a floating point value between 0 to 1 to
filter the resulting set of retrieved docs
Returns
List of Tuples of (doc, similarity_score)
Return type
List[Tuple[Document, float]]
similarity_search_with_score(query: str, k: int = 4, filter: Optional[List[Namespace]] = None, numeric_filter: Optional[List[NumericNamespace]] = None) → List[Tuple[Document, float]]¶
Return docs most similar to query and their cosine distance from the query.
Return docs most similar to query and their cosine distance from the query.
:param query: String query look up documents similar to.
:param k: Number of Documents to return. Defaults to 4.
:param filter: Optional. A list of Namespaces for filtering
the matching results.
For example:
[Namespace(“color”, [“red”], []), Namespace(“shape”, [], [“squared”])]
will match datapoints that satisfy “red color” but not include
datapoints with “squared shape”. Please refer to
https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json
for more detail.
Parameters
numeric_filter (Optional[List[NumericNamespace]]) – Optional. A list of NumericNamespaces for filterning
the matching results. Please refer to
https://cloud.google.com/vertex-ai/docs/matching-engine/filtering#json
for more detail.
query (str) – 
k (int) – 
filter (Optional[List[Namespace]]) – 
Returns
List of documents most similar to
the query text and cosine distance in float for each.
Lower score represents more similarity.
Return type
List[Tuple[Document, float]]
langchain_core.vectorstores.VectorStoreRetriever¶
class langchain_core.vectorstores.VectorStoreRetriever[source]¶
Bases: BaseRetriever
Base Retriever class for VectorStore.
Create a new model by parsing and validating input data from keyword arguments.
Raises ValidationError if the input data cannot be parsed to form a valid model.
param metadata: Optional[Dict[str, Any]] = None¶
Optional metadata associated with the retriever. Defaults to None
This metadata will be associated with each call to this retriever,
and passed as arguments to the handlers defined in callbacks.
You can use these to eg identify a specific instance of a retriever with its
use case.
param search_kwargs: dict [Optional]¶
Keyword arguments to pass to the search function.
param search_type: str = 'similarity'¶
Type of search to perform. Defaults to “similarity”.
param tags: Optional[List[str]] = None¶
Optional list of tags associated with the retriever. Defaults to None
These tags will be associated with each call to this retriever,
and passed as arguments to the handlers defined in callbacks.
You can use these to eg identify a specific instance of a retriever with its
use case.
param vectorstore: VectorStore [Required]¶
VectorStore to use for retrieval.
async aadd_documents(documents: List[Document], **kwargs: Any) → List[str][source]¶
Add documents to the vectorstore.
Parameters
documents (List[Document]) – Documents to add to the vectorstore.
kwargs (Any) – 
Returns
List of IDs of the added texts.
Return type
List[str]
Returns
List of IDs of the added texts.
Return type
List[str]
async abatch(inputs: List[Input], config: Optional[Union[RunnableConfig, List[RunnableConfig]]] = None, *, return_exceptions: bool = False, **kwargs: Optional[Any]) → List[Output]¶
Default implementation runs ainvoke in parallel using asyncio.gather.
The default implementation of batch works well for IO bound runnables.
Subclasses should override this method if they can batch more efficiently;
e.g., if the underlying runnable uses an API which supports a batch mode.
Parameters
inputs (List[Input]) – 
config (Optional[Union[RunnableConfig, List[RunnableConfig]]]) – 
return_exceptions (bool) – 
kwargs (Optional[Any]) – 
Return type
List[Output]
async abatch_as_completed(inputs: Sequence[Input], config: Optional[Union[RunnableConfig, Sequence[RunnableConfig]]] = None, *, return_exceptions: bool = False, **kwargs: Optional[Any]) → AsyncIterator[Tuple[int, Union[Output, Exception]]]¶
Run ainvoke in parallel on a list of inputs,
yielding results as they complete.
Parameters
inputs (Sequence[Input]) – 
config (Optional[Union[RunnableConfig, Sequence[RunnableConfig]]]) – 
return_exceptions (bool) – 
kwargs (Optional[Any]) – 
Return type
AsyncIterator[Tuple[int, Union[Output, Exception]]]
add_documents(documents: List[Document], **kwargs: Any) → List[str][source]¶
Add documents to the vectorstore.
Parameters
documents (List[Document]) – Documents to add to the vectorstore.
kwargs (Any) – 
Returns
List of IDs of the added texts.
Return type
List[str]
Returns
List of IDs of the added texts.
Return type
List[str]
async aget_relevant_documents(query: str, *, callbacks: Callbacks = None, tags: Optional[List[str]] = None, metadata: Optional[Dict[str, Any]] = None, run_name: Optional[str] = None, **kwargs: Any) → List[Document]¶
[Deprecated] Asynchronously get documents relevant to a query.
Users should favor using .ainvoke or .abatch rather than
aget_relevant_documents directly.
Parameters
query (str) – string to find relevant documents for
callbacks (Callbacks) – Callback manager or list of callbacks
tags (Optional[List[str]]) – Optional list of tags associated with the retriever. Defaults to None
These tags will be associated with each call to this retriever,
and passed as arguments to the handlers defined in callbacks.
metadata (Optional[Dict[str, Any]]) – Optional metadata associated with the retriever. Defaults to None
This metadata will be associated with each call to this retriever,
and passed as arguments to the handlers defined in callbacks.
run_name (Optional[str]) – Optional name for the run.
kwargs (Any) – 
Returns
List of relevant documents
Return type
List[Document]
Notes
Deprecated since version langchain-core==0.1.46: Use ainvoke instead.
async ainvoke(input: str, config: Optional[RunnableConfig] = None, **kwargs: Any) → List[Document]¶
Asynchronously invoke the retriever to get relevant documents.
Main entry point for asynchronous retriever invocations.
Parameters
input (str) – The query string
config (Optional[RunnableConfig]) – Configuration for the retriever
**kwargs (Any) – Additional arguments to pass to the retriever
Returns
List of relevant documents
Return type
List[Document]
Examples:
langchain_google_vertexai.vectorstores.document_storage.DataStoreDocumentStorage¶
class langchain_google_vertexai.vectorstores.document_storage.DataStoreDocumentStorage(datastore_client: datastore.Client, kind: str = 'document_id', text_property_name: str = 'text', metadata_property_name: str = 'metadata')[source]¶
Stores documents in Google Cloud DataStore.
Constructor.
:param bucket: Bucket where the documents will be stored.
:param prefix: Prefix that is prepended to all document names.
Methods
__init__(datastore_client[, kind, ...])
Constructor.
amdelete(keys)
Delete the given keys and their associated values.
amget(keys)
Get the values associated with the given keys.
amset(key_value_pairs)
Set the values for the given keys.
ayield_keys(*[, prefix])
Get an iterator over keys that match the given prefix.
mdelete(keys)
Deletes a sequence of documents by key.
mget(keys)
Gets a batch of documents by id.
mset(key_value_pairs)
Stores a series of documents using each keys
yield_keys(*[, prefix])
Yields the keys of all documents in the storage.
Parameters
datastore_client (datastore.Client) – 
kind (str) – 
text_property_name (str) – 
metadata_property_name (str) – 
__init__(datastore_client: datastore.Client, kind: str = 'document_id', text_property_name: str = 'text', metadata_property_name: str = 'metadata') → None[source]¶
Constructor.
:param bucket: Bucket where the documents will be stored.
:param prefix: Prefix that is prepended to all document names.
Parameters
datastore_client (datastore.Client) – 
kind (str) – 
text_property_name (str) – 
metadata_property_name (str) –