Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

langchain_graph_retriever-0.8.0.tar.gz (33.0 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file langchain_graph_retriever-0.8.0.tar.gz.

File metadata

File hashes

Hashes for langchain_graph_retriever-0.8.0.tar.gz
Algorithm Hash digest
SHA256 cd39b551bc3caf1c4bb83c380eb1d7df4de58a9cb56f700e3cd2b577b280be00
MD5 a838b1e85bffeec80f5c777f79dfc4ea
BLAKE2b-256 b5a397c2096e1554f721e1dd62d4867cc4104184e1926684e7961a4373365d48

See more details on using hashes here.

File details

Details for the file langchain_graph_retriever-0.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for langchain_graph_retriever-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c359f03e8f8af33e15f24137b4f7a165add613b7eba4eb8cda9878891381fd71
MD5 7e0634715bd0dd3739985f1db5bb3956
BLAKE2b-256 5cb9347f2bb6d50f7733c7b78b84ce872c3cc4b64bbfa479bc7f367a80b48957

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page