增强AI能力:Google Cloud在托管数据库中集成向量搜索

Google Cloud 新增对 pgvector 的支持

Google Cloud 最近在 Cloud SQL for PostgreSQL 和 AlloyDB for PostgreSQL 中增加了对 pgvector 扩展的支持。这一扩展为托管数据库带来了向量搜索功能,使开发者能够存储由大型语言模型(LLMs)生成的向量嵌入,并执行相似性搜索。

主要功能与应用

  1. 向量嵌入的存储与搜索

    • 向量嵌入是复杂用户生成内容(如文本、音频和视频)的数值表示,能够方便地存储、操作和索引。
    • 通过嵌入模型生成的向量嵌入,语义相似的内容在向量空间中的位置接近。
    • 开发者可以使用 Vertex AI 的预训练模型生成嵌入,并将其存储在数据库中,简化相似记录的搜索。
  2. 与生成式 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 服务,构建更智能的应用程序。这一功能不仅提升了数据处理效率,还为长期记忆和业务知识管理提供了新的可能性。

阅读 56
0 条评论