使用 PebbloRetrievalQA 实现身份识别的 RAG
PebbloRetrievalQA 是一个具有身份和语义强制执行的检索链,用于查询向量数据库进行问答。
本笔记介绍了如何使用身份和语义强制执行(拒绝主题/实体)来检索文档。有关 Pebblo 及其 SafeRetriever 功能的更多详细信息,请访问 Pebblo 文档
步骤:
- 加载文档: 我们将把具有授权和语义元数据的文档加载到内存中的 Qdrant 向量存储中。此向量存储将用作 PebbloRetrievalQA 中的检索器。
注意: 建议在摄取端使用 PebbloSafeLoader 作为加载具有身份验证和语义元数据的文档的对应组件。
PebbloSafeLoader可确保文档的安全高效加载,同时保持元数据的完整性。
- 测试强制执行机制: 我们将分别测试身份和语义强制执行。对于每种用例,我们将定义一个特定的“提问”函数,其中包含所需的上下文(auth_context 和 semantic_context),然后提出我们的问题。
设置
依赖项
在本教程中,我们将使用 OpenAI LLM、OpenAI embeddings 和 Qdrant 向量存储。
%pip install --upgrade --quiet langchain langchain_core langchain-community langchain-openai qdrant_client