Google Cloud 新增对 pgvector 的支持
Google Cloud 最近在 Cloud SQL for PostgreSQL 和 AlloyDB for PostgreSQL 中增加了对 pgvector 扩展的支持。这一扩展为托管数据库带来了向量搜索功能,使开发者能够存储由大型语言模型(LLMs)生成的向量嵌入,并执行相似性搜索。
主要功能与应用
向量嵌入的存储与搜索:
- 向量嵌入是复杂用户生成内容(如文本、音频和视频)的数值表示,能够方便地存储、操作和索引。
- 通过嵌入模型生成的向量嵌入,语义相似的内容在向量空间中的位置接近。
- 开发者可以使用 Vertex AI 的预训练模型生成嵌入,并将其存储在数据库中,简化相似记录的搜索。
与生成式 AI 服务的集成:
- Cloud SQL 和 AlloyDB 现在可以与 Vertex AI 上的生成式 AI 服务配对,帮助创建基于 AI 的应用程序。
- 嵌入允许存储大上下文(如文档或长期聊天记录),并通过过滤找到最相关的信息,模拟长期记忆和业务特定知识。
技术实现
pgvector 扩展的安装与使用:
- 使用
CREATE EXTENSION命令在现有数据库中安装 pgvector 扩展。 创建表并插入向量数据,示例如下:
postgres=> CREATE EXTENSION IF NOT EXISTS vector; CREATE EXTENSION postgres=> CREATE TABLE embeddings( id INTEGER, embedding vector(3) ); CREATE TABLE postgres=> INSERT INTO embeddings VALUES (1, '[1, 0, -1]'), (2, '[1, 1, 1]'), (3, '[1, 1, 50]'); INSERT 0 3
- 使用
相似性匹配操作符:
<->:返回两个向量之间的欧几里得距离。<=>:返回两个向量之间的余弦距离。
开发资源与案例
- Google Cloud 发布了一个 Colab 笔记本和视频,展示如何使用 pgvector、开源框架 LangChain 和 LLMs 构建 AI 驱动的应用程序。
- 示例展示了如何在 Python 应用程序中添加生成式 AI 功能。
行业动态
- Google Cloud 并非唯一关注向量数据库的云服务提供商。亚马逊 RDS for PostgreSQL 也支持 pgvector 扩展,微软展示了如何使用 Azure Data Explorer (ADX) 作为向量数据库,并讨论了多种与向量数据库的连接器。
总结
Google Cloud 通过增加对 pgvector 的支持,进一步强化了其数据库服务在 AI 应用中的能力。开发者可以更方便地存储和搜索向量嵌入,结合生成式 AI 服务,构建更智能的应用程序。这一功能不仅提升了数据处理效率,还为长期记忆和业务知识管理提供了新的可能性。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。