写点什么

增强 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:003439

评论

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

Markdown 几行字符就可以生成思维导图了!

JackTian

markdown 思维导图 markdown语法 markdown编辑器 Markmap

2020南京第十三届智慧工地装备展览会

南京专业智博会

展览会 论坛会 博览会 智博会

用大数据分析了一线城市1000多份岗位招聘需求,告诉你如何科学找工作

程序员柠檬

Python 数据分析

10分钟白嫖我的常用的在线工具网站清单

JavaGuide

设计 在线工具 工具类网站 PDF

游戏夜读 | 记忆里的老游戏

game1night

github看代码效率提高10倍!因为用了sourcegraph这个工具

程序员柠檬

GitHub 程序员 效率工具

原创 面试官:你说对MySQL事务很熟?那我问你10个问题

程序员柠檬

MySQL 数据库

这可能是 Markdown 写微信公众号的一款神器了!

JackTian

效率工具 markdown markdown编辑器 markdownnice 神器

Jupyter最佳实践

pydata

使用 PCA 进行降维可视化,了解特征分布

黄大路

数据挖掘 数据分析 可视化

推荐几款有意思的小众App(05.30)

静陌

产品 App

你真的清楚 Nginx 指令的规则吗?

子杨

nginx 运维

k6新崛起的性能测试工具

风中之心

DevOps 性能 性能测试

2020年亚洲南京大数据产业展览会

南京专业智博会

展览会 论坛会 博览会 智博会

ARTS打卡-01

Geek_yansheng25

ARTS 打卡计划

Wireshark的使用与数据分析(一)

姬翔

原创 | 使用JUnit、AssertJ和Mockito编写单元测试和实践TDD (十二)编写测试-简单测试

编程道与术

Java 编程 TDD 单元测试 JUnit

2020年南京第十三届物联网应用展览会

南京专业智博会

展览会 论坛会 博览会 智博会

2020亚洲智能家居全屋智能展会-南京站

南京专业智博会

展览会 论坛会 博览会 智博会

PageHelper

BitSea

分布式锁🔒是个啥❓ 其实就这么点事

山中兰花草

Java redis 后端 分布式锁 开发

ARTS-week-1

saddamwilson

ARTS 打卡计划

Linux下程序出问题不要慌,资深程序员教你6招搞定!

程序员柠檬

Linux 程序员 后台开发

不忘初心,继续努力

一周思进

ARTS 打卡计划

Java 底层基础笔记(一)硬件

奈何花开

Java Linux 计算机基础

2020年南京第十三届智慧停车展会

南京专业智博会

展览会 博览会 智博会 展览会论坛会

如何优雅地实现泛型类的类型参数化

KAMI

Java 编程 反射 泛型

如何衡量产品需求效果

黄大路

产品经理 产品设计 运营

面试造飞机系列:说下微服务接口设计原则?

程序员柠檬

分布式 微服务 后端 架构设计

2020亚洲南京第十三届人工智能机器人服务展览会

南京专业智博会

展览会 论坛会 博览会 智博会

思维模型 - 概念篇

石云升

学习 高效 思维模型 决策

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