写点什么

增强 AI 能力:谷歌云在托管数据库中集成向量搜索

作者:Renato Losio

  • 2023-07-15
    北京
  • 本文字数:1127 字

    阅读完需:约 4 分钟

增强AI能力:谷歌云在托管数据库中集成向量搜索

谷歌云最近在 Cloud SQL for PostgreSQL 和 AlloyDB for PostgreSQL 中增加了对 pgvector 的支持。这个扩展为托管数据库带来了向量搜索操作,允许开发人员存储大型语言模型(LLM)生成的向量嵌入并执行相似性搜索。


Cloud SQL 和 AlloyDB 现在可以与 Vertex AI 上的生成性 AI 服务配对,帮助创建能够感知应用程序和用户状态的 AI 应用程序。谷歌高级产品经理 Sandhya Ghai 和产品经理 Bala Narasimhan 解释说:


向量嵌入是一种数值表示,通常用于将复杂的用户生成内容(如文本、音频和视频)转换为易于存储、操作和索引的形式。这些表示由嵌入模型生成,如果两个内容在语义上相似,它们各自的嵌入就会在嵌入向量空间中彼此相邻。然后,向量嵌入会被索引,被用于基于相似性进行有效的数据过滤。


例如,开发人员可以使用 Vertex AI 的预训练模型在文本和图像之间生成嵌入,并将它们存储并索引到数据库中,简化查找相似记录的过程。


用户现在可以使用 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
复制代码


来源:https://cloud.google.com/blog/products/databases/using-pgvector-llms-and-langchain-with-google-cloud-databases


正如 Ghai 和 Narasimhan 所解释的那样,这一新功能还可以帮助开发人员利用预训练的 LLM:


我们需要了解的是,LLM 没有状态的概念……嵌入允许你将大型上下文(如文档或历史聊天记录)存储在数据库中,并过滤它们,以便查找最相关的信息。然后,你可以将最相关的聊天历史记录或文档片段输入模型来模拟长期记忆和业务特定知识。


谷歌云发布了一个 Colab Notebook 和一个视频,用 pgvector、开源框架 LangChain 和 LLM 构建 AI 驱动的应用程序。谷歌高级软件工程师 Saket Saurabh 演示了如何在示例 Python 应用程序中添加生成式 AI 功能,他写道:


pgvector 扩展还引入了用于对向量执行相似性匹配的新运算符,你可以用它查找语义上相似的向量。这样的运算符有两个:

‘<->’:返回两个向量之间的欧几里得距离……

‘<=>’:返回两个向量之间的余弦距离


在过去的几个月中,谷歌云并不是唯一一个瞄准向量数据库的云供应商,Amazon RDS for PostgreSQL 也支持 pgvector 扩展,微软还展示了如何将 Azure Data Explorer(ADX)作为向量数据库,并讨论了几种连接到向量数据库的连接器。


原文链接:


https://www.infoq.com/news/2023/07/gcp-databases-vector-search/

2023-07-15 08:003017

评论

发布
暂无评论
发现更多内容

JVM-技术专题-管程技术分析

洛神灬殇

JVM 管程

性能优化-技术专题-并发编程

洛神灬殇

Java 多线程

Serverless初探

雪雷

Serverless Lambda 无服务器云函数

Elasticsearch安装

北漂码农有话说

探测mysqldump详细过程

Simon

MySQL

微服务注册发现配置中心-consul

雪雷

Consul 服务注册与发现 配置中心

一文带你检查Kubernetes应用是否为最佳实践

雪雷

k8s k8s最佳实践

记一次混合监控的反思

雪雷

监控 zabbix redis监控 监控宝

Docker+Jenkins+Gitlab+Django应用部署实践

雪雷

DevOps jenkins CI/CD

MySQL线程状态详解

Simon

MySQL 线程状态

Guacamole实战

雪雷

guacamole 远程登录 堡垒机

RabbitMQ实践

雪雷

RabbitMQ 消息队列

JVM-技术专题-GCViewer调优GC

洛神灬殇

JVM

Ceph集群部署

雪雷

分布式存储 Ceph rdb pvc

Gitlab Pipeline+Supervisor 实战Python项目CI/CD

雪雷

gitlab jenkins CI/CD Supervisor

同态加密

soolaugust

学习 加密 同态加密

Jenkins 详解

雪雷

jenkins

Linux自定义快捷工具

雪雷

Linux Shell tools scripts

Apache常用配置指北

亻尔可真木奉

Apache 代理 跨域

Golang领域模型-开篇

奔奔奔跑

微服务 后端 领域驱动设计 架构设计 Go 语言

lower_case_table_names参数详解

Simon

MySQL

微服务API网关-Kong详解

雪雷

kong api 网关

业务容器化改造

雪雷

Docker 容器 微服务 服务化改造

Jenkins部署Python项目实战

雪雷

Python jenkins CI/CD

Flink高可用性设置-4

小知识点

scala 大数据 flink 流计算

Docker Web管理工具

雪雷

Docker shipyard dockerui

记一次混合云API发布的反思

雪雷

iptables API api发布

Linux系统检查脚本

雪雷

Shell 系统检测

API统一管理平台-YApi

雪雷

YAPI API接口管理

SonarQube集成gitlab/jenkins

雪雷

jenkins sonar gitlab ci 代码扫描

Python利用sphinx构建个人博客

雪雷

sphinx Blog

增强AI能力:谷歌云在托管数据库中集成向量搜索_AI 工程化_InfoQ精选文章