概述
这将帮助您开始使用 AmazonKnowledgeBaseRetriever 检索功能。有关所有 AmazonKnowledgeBaseRetriever 功能和配置的详细文档,请前往 API 参考.
Amazon Bedrock 知识库是 Amazon Web Services (AWS) 提供的端到端 RAG 工作流程的完全托管支持。 它提供了完整的摄取工作流程,将您的文档转换为嵌入(向量)并将其存储在专门的向量数据库中。 Amazon Bedrock 知识库支持流行的向量存储数据库,包括 Amazon OpenSearch Serverless 向量引擎、Pinecone、Redis Enterprise Cloud、Amazon Aurora(即将推出)和 MongoDB(即将推出)。
集成详情
| 检索器 | 自托管 | 云服务 | 包 | Python 支持 |
|---|---|---|---|---|
| AmazonKnowledgeBaseRetriever | 🟠 (see details below) | ✅ | @langchain/aws | ✅ |
> AWS 知识库检索器可以在您自己的 AWS 基础设施上进行“自我托管”,但无法在其他云提供商或本地部署。
设置
要使用 AmazonKnowledgeBaseRetriever,您需要拥有 AWS 账户,以便管理您的索引和文档。设置账户后,设置以下环境变量:
process.env.AWS_KNOWLEDGE_BASE_ID=your-knowledge-base-id
process.env.AWS_ACCESS_KEY_ID=your-access-key-id
process.env.AWS_SECRET_ACCESS_KEY=your-secret-access-key
如果想从单个查询获取自动跟踪,您还可以设置您的 LangSmith API 密钥,方法是取消下方注释:
// process.env.LANGSMITH_API_KEY = "";
// process.env.LANGSMITH_TRACING = "true";
安装
此检索器位于 @langchain/aws package:
npm install @langchain/aws @langchain/core
yarn add @langchain/aws @langchain/core
pnpm add @langchain/aws @langchain/core
实例化
现在我们可以实例化检索器:
const retriever = new AmazonKnowledgeBaseRetriever({
topK: 10,
knowledgeBaseId: process.env.AWS_KNOWLEDGE_BASE_ID,
region: "us-east-2",
clientOptions: {
credentials: {
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,
},
},
});
用法
const query = "..."
await retriever.invoke(query);
API 参考
有关所有 AmazonKnowledgeBaseRetriever 功能和配置的详细文档,请前往 API 参考.