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

