LangChain retriever for traversing document graphs on top of vector-based similarity search.
Project description
LangChain Graph Retriever
LangChain Graph Retriever is a Python library that supports traversing a document graph on top of vector-based similarity search. It works seamlessly with LangChain's retriever framework and supports various graph traversal strategies for efficient document discovery.
Features
- Vector Search: Perform similarity searches using vector embeddings.
- Graph Traversal: Apply traversal strategies such as breadth-first (Eager) or Maximal Marginal Relevance (MMR) to explore document relationships.
- Customizable Strategies: Easily extend and configure traversal strategies to meet your specific use case.
- Multiple Adapters: Support for various vector stores, including AstraDB, Cassandra, Chroma, OpenSearch, and in-memory storage.
- Synchronous and Asynchronous Retrieval: Supports both sync and async workflows for flexibility in different applications.
Installation
Install the library via pip:
pip install langchain-graph-retriever
Getting Started
Here is an example of how to use LangChain Graph Retriever:
from langchain_graph_retriever import GraphRetriever
from langchain_core.vectorstores import Chroma
# Initialize the vector store (Chroma in this example)
vector_store = Chroma(embedding_function=your_embedding_function)
# Create the Graph Retriever
retriever = GraphRetriever(
store=vector_store,
# Define edges based on document metadata
edges=[("keywords", "keywords")],
)
# Perform a retrieval
documents = retriever.retrieve("What is the capital of France?")
# Print the results
for doc in documents:
print(doc.page_content)
License
This project is licensed under the Apache 2 License. See the LICENSE file for more details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file langchain_graph_retriever-0.6.1.tar.gz
.
File metadata
- Download URL: langchain_graph_retriever-0.6.1.tar.gz
- Upload date:
- Size: 33.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.6.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47df4e51dae2334b6676934a070c00adc652e8556e9972f5fb1ff82e921b2e5e |
|
MD5 | 58ab84892c3d37856a7db9c4546c4335 |
|
BLAKE2b-256 | c3a6b2f3bfa5478d7305fad53a01fcc1263962b7164f16175d3a32442754b94a |
File details
Details for the file langchain_graph_retriever-0.6.1-py3-none-any.whl
.
File metadata
- Download URL: langchain_graph_retriever-0.6.1-py3-none-any.whl
- Upload date:
- Size: 34.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.6.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47859c5a86fc39a47e12770b368ce59b8f855000fb6437b9384c7a4f866a391e |
|
MD5 | 5c7b2de4f39c9c02321fa7d8739817da |
|
BLAKE2b-256 | f433f523b80d42acda5349044ccda6145915da19d68e13a456feeaf0e8aa6906 |