图RAG
本指南提供了对Graph RAG的介绍。有关所有支持的功能和配置的详细文档,请参阅 Graph RAG项目页面。
概览
来自 langchain-graph-retriever 包的 GraphRetriever 提供了一个 LangChain
检索器,它将向量上的非结构化相似性搜索与元数据属性的结构化遍历相结合。这使得基于图的检索能够作用于现有的向量存储。
集成详情
| 检索器 | 源 | PyPi 包 | 最新 | 项目页面 |
|---|---|---|---|---|
| GraphRetriever | github.com/datastax/graph-rag | langchain-graph-retriever | Graph RAG |
优势
-
基于现有元数据的链接: 使用现有的元数据字段,无需额外处理。从现有的向量存储中检索更多内容!
-
按需更改链接: 可以动态指定边,从而根据问题遍历不同的关系。
-
可插拔的遍历策略: 使用内置的遍历策略,如Eager或MMR,或定义自定义逻辑来选择要探索的节点。
-
广泛的兼容性: 适集成支持多种矢量存储,并且可以轻松添加对其他存储的支持。
设置
安装
此检索器位于 langchain-graph-retriever 包中。
pip install -qU langchain-graph-retriever
实例化
以下示例将展示如何在一些关于动物的示例文档中执行图遍历。
先决条件
查看详情
pip install -qU langchain-openai
import getpass
import os
if not os.environ.get("OPENAI_API_KEY"):
os.environ["OPENAI_API_KEY"] = getpass.getpass("Enter API key for OpenAI: ")
from langchain_openai import OpenAIEmbeddings
embeddings = OpenAIEmbeddings(model="text-embedding-3-large")