AlloyDB 是一种完全托管的关系型数据库服务,提供高性能、无缝集成和卓越的可扩展性。AlloyDB 与 PostgreSQL 100% 兼容。利用 AlloyDB 的 LangChain 集成,扩展您的数据库应用程序以构建 AI 驱动的体验。本笔记本介绍了如何使用
AlloyDB for PostgreSQL 和 AlloyDBVectorStore 类存储向量嵌入。 在 GitHub 上了解有关此包的更多信息。 开始之前
要运行此 notebook,您需要执行以下操作🦜🔗 库安装
安装集成库langchain-google-alloydb-pg 和嵌入服务库 langchain-google-vertexai。
🔐 身份验证
以登录到此 notebook 的 IAM 用户身份向 Google Cloud 进行身份验证,以访问您的 Google Cloud 项目。- 如果您正在使用 Colab 运行此 notebook,请使用下面的单元格并继续。
- 如果您正在使用 Vertex AI Workbench,请查看此处的设置说明。
☁ 设置您的 Google Cloud 项目
设置您的 Google Cloud 项目,以便您可以在此 notebook 中利用 Google Cloud 资源。 如果您不知道您的项目 ID,请尝试以下操作:- 运行
gcloud config list。 - 运行
gcloud projects list。 - 查看支持页面:查找项目 ID。
基本用法
设置 AlloyDB 数据库值
在AlloyDB 实例页面中找到您的数据库值。AlloyDBEngine 连接池
将 AlloyDB 建立为向量存储库所需的其中一个参数是AlloyDBEngine 对象。AlloyDBEngine 配置了一个到 AlloyDB 数据库的连接池,实现了从您的应用程序成功连接并遵循行业最佳实践。 要使用 AlloyDBEngine.from_instance() 创建 AlloyDBEngine,您只需提供 5 项内容:project_id:AlloyDB 实例所在的 Google Cloud 项目 ID。region:AlloyDB 实例所在的区域。cluster:AlloyDB 集群的名称。instance:AlloyDB 实例的名称。database:要连接的 AlloyDB 实例上的数据库名称。
AlloyDBEngine.from_instance() 提供可选的 user 和 password 参数即可:user:用于内置数据库身份验证和登录的数据库用户password:用于内置数据库身份验证和登录的数据库密码。
初始化表
AlloyDBVectorStore 类需要一个数据库表。AlloyDBEngine 引擎有一个辅助方法 init_vectorstore_table(),可用于为您创建具有正确架构的表。
创建嵌入类实例
您可以使用任何 LangChain 嵌入模型。您可能需要启用 Vertex AI API 才能使用VertexAIEmbeddings。我们建议为生产环境设置嵌入模型的版本,了解更多关于文本嵌入模型的信息。
初始化默认 AlloyDBVectorStore
添加文本
删除文本
搜索文档
按向量搜索文档
添加索引
通过应用向量索引来加速向量搜索查询。了解更多关于向量索引的信息。重新索引
删除索引
创建自定义向量存储
向量存储库可以利用关系数据来过滤相似性搜索。 创建具有自定义元数据列的表。使用元数据过滤器搜索文档
以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。