Tony20100/langchain_full huggingface dataset:
langchain_google_vertexai.vectorstores.document_storage.GCSDocumentStorage¶
class langchain_google_vertexai.vectorstores.document_storage.GCSDocumentStorage(bucket: Bucket, prefix: Optional[str] = 'documents')[source]¶
Stores documents in Google Cloud Storage.
For each pair id, document_text the name of the blob will be {prefix}/{id} stored
in plain text format.
Constructor.
:param bucket: Bucket where the documents will be stored.
:param prefix: Prefix that is prepended to all document names.
Methods
__init__(bucket[, prefix])
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 batch of documents by id.
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 present in the storage.
Parameters
bucket (storage.Bucket) – 
prefix (Optional[str]) – 
__init__(bucket: Bucket, prefix: Optional[str] = 'documents') → None[source]¶
Constructor.
:param bucket: Bucket where the documents will be stored.
:param prefix: Prefix that is prepended to all document names.
Parameters
bucket (Bucket) – 
prefix (Optional[str]) – 
Return type
None
async amdelete(keys: Sequence[K]) → None¶
Delete the given keys and their associated values.
Parameters
keys (Sequence[K]) – A sequence of keys to delete.
Return type
None
keys (Sequence[K]) – A sequence of keys to delete.
Return type
None
async amget(keys: Sequence[K]) → List[Optional[V]]¶
Get the values associated with the given keys.
Parameters
keys (Sequence[K]) – A sequence of keys.
Returns
A sequence of optional values associated with the keys.
If a key is not found, the corresponding value will be None.
Return type
List[Optional[V]]
async amset(key_value_pairs: Sequence[Tuple[K, V]]) → None¶
Set the values for the given keys.
Parameters
key_value_pairs (Sequence[Tuple[K, V]]) – A sequence of key-value pairs.
Return type
None
async ayield_keys(*, prefix: Optional[str] = None) → Union[AsyncIterator[K], AsyncIterator[str]]¶
Get an iterator over keys that match the given prefix.
Parameters
prefix (str) – The prefix to match.
Returns
An iterator over keys that match the given prefix.
This method is allowed to return an iterator over either K or str
depending on what makes more sense for the given store.
Return type
Iterator[K | str]
mdelete(keys: Sequence[str]) → None[source]¶
Deletes a batch of documents by id.
Parameters
keys (Sequence[str]) – List of ids for the text.
Return type
None
mget(keys: Sequence[str]) → List[Optional[Document]][source]¶
Gets a batch of documents by id.
The default implementation only loops get_by_id.
Subclasses that have faster ways to retrieve data by batch should implement
this method.
:param ids: List of ids for the text.
Returns
List of documents. If the key id is not found for any id record returns aNone instead.
Parameters
keys (Sequence[str]) – 
Return type
Parameters
keys (Sequence[str]) – 
Return type
List[Optional[Document]]
mset(key_value_pairs: Sequence[Tuple[str, Document]]) → None[source]¶
Stores a series of documents using each keys
Parameters
key_value_pairs (Sequence[Tuple[K, V]]) – A sequence of key-value pairs.
Return type
None
yield_keys(*, prefix: Optional[str] = None) → Iterator[str][source]¶
Yields the keys present in the storage.
Parameters
prefix (Optional[str]) – Ignored. Uses the prefix provided in the constructor.
Return type
Iterator[str]
langchain_community.vectorstores.redis.schema.read_schema¶
langchain_community.vectorstores.redis.schema.read_schema(index_schema: Optional[Union[Dict[str, List[Any]], str, PathLike]]) → Dict[str, Any][source]¶
Read in the index schema from a dict or yaml file.
Check if it is a dict and return RedisModel otherwise, check if it’s a path and
read in the file assuming it’s a yaml file and return a RedisModel
Parameters
index_schema (Optional[Union[Dict[str, List[Any]], str, PathLike]]) – 
Return type
Dict[str, Any]
langchain_community.vectorstores.sklearn.BaseSerializer¶
class langchain_community.vectorstores.sklearn.BaseSerializer(persist_path: str)[source]¶
Base class for serializing data.
Methods
__init__(persist_path)
extension()
The file extension suggested by this serializer (without dot).
load()
Loads the data from the persist_path
save(data)
Saves the data to the persist_path
Parameters
persist_path (str) – 
__init__(persist_path: str) → None[source]¶
Parameters
persist_path (str) – 
Return type
None
abstract classmethod extension() → str[source]¶
The file extension suggested by this serializer (without dot).
Return type
str
abstract load() → Any[source]¶
Loads the data from the persist_path
Return type
Any
abstract save(data: Any) → None[source]¶
Saves the data to the persist_path
Parameters
data (Any) – 
Return type
None
langchain_community.vectorstores.duckdb.DuckDB¶
class langchain_community.vectorstores.duckdb.DuckDB(*, connection: Optional[Any] = None, embedding: Embeddings, vector_key: str = 'embedding', id_key: str = 'id', text_key: str = 'text', table_name: str = 'embeddings')[source]¶
DuckDB vector store.
This class provides a vector store interface for adding texts and performing
similarity searches using DuckDB.
For more information about DuckDB, see: https://duckdb.org/
This integration requires the duckdb Python package.
You can install it with pip install duckdb.
Security Notice: The default DuckDB configuration is not secure.
By default, DuckDB can interact with files across the entire file system,
which includes abilities to read, write, and list files and directories.
It can also access some python variables present in the global namespace.
When using this DuckDB vectorstore, we suggest that you initialize the
DuckDB connection with a secure configuration.
For example, you can set enable_external_access to false in the connection
configuration to disable external access to the DuckDB connection.
You can view the DuckDB configuration options here:
https://duckdb.org/docs/configuration/overview.html
Please review other relevant security considerations in the DuckDB
documentation. (e.g., “autoinstall_known_extensions”: “false”,
“autoload_known_extensions”: “false”)
See https://python.langchain.com/docs/security for more information.
Parameters
connection (Optional[Any]) – Optional DuckDB connection
embedding (Embeddings) – The embedding function or model to use for generating embeddings.
vector_key (str) – The column name for storing vectors. Defaults to embedding.
id_key (str) – The column name for storing unique identifiers. Defaults to id.
id_key (str) – The column name for storing unique identifiers. Defaults to id.
text_key (str) – The column name for storing text. Defaults to text.
table_name (str) – The name of the table to use for storing embeddings. Defaults to
embeddings.
Example
import duckdb
conn = duckdb.connect(database=':memory:',
    config={
        # Sample configuration to restrict some DuckDB capabilities
        # List is not exhaustive. Please review DuckDB documentation.
            "enable_external_access": "false",
            "autoinstall_known_extensions": "false",
            "autoload_known_extensions": "false"
        }
)
embedding_function = ... # Define or import your embedding function here
vector_store = DuckDB(conn, embedding_function)
vector_store.add_texts(['text1', 'text2'])
result = vector_store.similarity_search('text1')
Initialize with DuckDB connection and setup for vector storage.
Attributes
embeddings
Returns the embedding object used by the vector store.
Methods
__init__(*[, connection, vector_key, ...])
Initialize with DuckDB connection and setup for vector storage.
aadd_documents(documents, **kwargs)
Run more documents through the embeddings and add to the vectorstore.
aadd_texts(texts[, metadatas])
Run more texts through the embeddings and add to the vectorstore.
add_documents(documents, **kwargs)
Run more documents through the embeddings and add to the vectorstore.
add_texts(texts[, metadatas])
Turn texts into embedding and add it to the database using Pandas DataFrame
adelete([ids])
Delete by vector ID or other criteria.
afrom_documents(documents, embedding, **kwargs)
Return VectorStore initialized from documents and embeddings.
Return VectorStore initialized from documents and embeddings.
afrom_texts(texts, embedding[, metadatas])
Return VectorStore initialized from texts and embeddings.
amax_marginal_relevance_search(query[, k, ...])
Return docs selected using the maximal marginal relevance.
amax_marginal_relevance_search_by_vector(...)
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_documents(documents, embedding, **kwargs)
Return VectorStore initialized from documents and embeddings.
from_texts(texts, embedding[, metadatas])
Creates an instance of DuckDB and populates it with texts and
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])
Performs a similarity search for a given query string.
similarity_search_by_vector(embedding[, k])
Return docs most similar to embedding vector.
Return docs most similar to embedding vector.
similarity_search_with_relevance_scores(query)
Return docs and relevance scores in the range [0, 1].
similarity_search_with_score(*args, **kwargs)
Run similarity search with distance.
__init__(*, connection: Optional[Any] = None, embedding: Embeddings, vector_key: str = 'embedding', id_key: str = 'id', text_key: str = 'text', table_name: str = 'embeddings')[source]¶
Initialize with DuckDB connection and setup for vector storage.
Parameters
connection (Optional[Any]) – 
embedding (Embeddings) – 
vector_key (str) – 
id_key (str) – 
text_key (str) – 
table_name (str) – 
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.
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]¶
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, **kwargs: Any) → List[str][source]¶
Turn texts into embedding and add it to the database using Pandas DataFrame
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) – Additional parameters including optional ‘ids’ to associate
with the texts.
Returns
List of ids of the added texts.
Return type
List[str]
async adelete(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]
async classmethod afrom_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
async classmethod afrom_texts(texts: List[str], embedding: Embeddings, metadatas: Optional[List[dict]] = None, **kwargs: Any) → VST¶
Return VectorStore initialized from texts and embeddings.
Parameters
texts (List[str]) – Texts to add to the vectorstore.
metadatas (Optional[List[dict]]) – Optional list of metadatas associated with the texts.
embedding (Embeddings) – Embedding function to use.
kwargs (Any) – 
Return type
VST
async amax_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]
async amax_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.
Return docs selected using the maximal marginal relevance.
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]
as_retriever(**kwargs: Any) → VectorStoreRetriever¶
Return VectorStoreRetriever initialized from this VectorStore.
Parameters
search_type (Optional[str]) – Defines the type of search that
the Retriever should perform.
Can be “similarity” (default), “mmr”, or
“similarity_score_threshold”.
search_kwargs (Optional[Dict]) – Keyword arguments to pass to the
search function. Can include things like:
k: Amount of documents to return (Default: 4)
score_threshold: Minimum relevance threshold
for similarity_score_threshold
fetch_k: Amount of documents to pass to MMR algorithm (Default: 20)
lambda_mult: Diversity of results returned by MMR;
1 for minimum diversity and 0 for maximum. (Default: 0.5)
filter: Filter by document metadata
kwargs (Any) – 
Returns
Retriever class for VectorStore.
Return type
VectorStoreRetriever
Examples:
# Retrieve more documents with higher diversity
# Useful if your dataset has many similar documents
docsearch.as_retriever(
# Useful if your dataset has many similar documents
docsearch.as_retriever(
    search_type="mmr",
    search_kwargs={'k': 6, 'lambda_mult': 0.25}
)
# Fetch more documents for the MMR algorithm to consider
# But only return the top 5
docsearch.as_retriever(
    search_type="mmr",
    search_kwargs={'k': 5, 'fetch_k': 50}
)
# Only retrieve documents that have a relevance score
# Above a certain threshold
docsearch.as_retriever(
    search_type="similarity_score_threshold",
    search_kwargs={'score_threshold': 0.8}
)
# Only get the single most similar document from the dataset
docsearch.as_retriever(search_kwargs={'k': 1})
# Use a filter to only retrieve documents from a specific paper
docsearch.as_retriever(
    search_kwargs={'filter': {'paper_title':'GPT-4 Technical Report'}}
)
async asearch(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]
async asimilarity_search(query: str, k: int = 4, **kwargs: Any) → List[Document]¶
Return docs most similar to query.
Parameters
query (str) – Input text.
k (int) – Number of Documents to return. Defaults to 4.
kwargs (Any) – 
Returns
kwargs (Any) – 
Returns
List of Documents most similar to the query.
Return type
List[Document]
async asimilarity_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]
async asimilarity_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]]
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.
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_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
classmethod from_texts(texts: List[str], embedding: Embeddings, metadatas: Optional[List[dict]] = None, **kwargs: Any) → DuckDB[source]¶
Creates an instance of DuckDB and populates it with texts andtheir embeddings.
Parameters
texts (List[str]) – List of strings to add to the vector store.
embedding (Embeddings) – The embedding function or model to use for generating embeddings.
metadatas (Optional[List[dict]]) – Optional list of metadata dictionaries associated with the texts.
**kwargs (Any) – Additional keyword arguments including:
- connection: DuckDB connection. If not provided, a new connection will
be created.
vector_key: The column name for storing vectors. Default “vector”.
id_key: The column name for storing unique identifiers. Default “id”.
text_key: The column name for storing text. Defaults to “text”.
table_name: The name of the table to use for storing embeddings.Defaults to “embeddings”.
Returns
An instance of DuckDB with the provided texts and their embeddings added.
Return type
DuckDB
Return type
DuckDB
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
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
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, **kwargs: Any) → List[Document][source]¶
Performs a similarity search for a given query string.
Parameters
query (str) – The query string to search for.
k (int) – The number of similar texts to return.
kwargs (Any) – 
Returns
A list of Documents most similar to the query.
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_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
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(*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]]
Examples using DuckDB¶
DuckDB