增强AI功能:Google Cloud 在托管数据库中集成了矢量搜索
2023年07月10日 由 Susan 发表
990161
0
最近,Google Cloud为Cloud SQL for PostgreSQL和AlloyDB for PostgreSQL增加了对pgvector的支持。这个扩展为托管数据库带来了向量搜索操作,允许开发人员存储由大型语言模型(LLM)生成的向量嵌入,并执行相似性搜索。
现在,Cloud SQL和AlloyDB可以与Vertex AI上的生成式人工智能服务配对使用,帮助创建具有应用程序和用户状态意识的人工智能应用程序。Google的高级产品经理Sandhya Ghai和产品经理Bala Narasimhan解释说:
"向量嵌入是一种数值表示,通常用于将复杂的用户生成内容(如文本、音频和视频)转换为易于存储、操作和索引的形式。这些表示是由嵌入模型生成的,如果两个内容在语义上相似,它们的嵌入会在嵌入向量空间中彼此接近。然后,向量嵌入被索引并用于根据相似性高效地过滤数据。"
举个例子,开发人员可以使用Vertex AI在文本和图像方面的预训练模型来生成嵌入,然后将其存储和索引到数据库中,从而简化了相似记录的搜索过程。
可以使用CREATE EXTENSION命令在现有数据库中安装pgvector扩展:
来源: https://cloud.google.com/blog/products/databases/using-pgvector-llms-and-langchain-with-google-cloud-databases
这个新功能还可以帮助开发人员利用预训练的大型语言模型(Large Language Models,LLMs),正如Ghai和Narasimhan所解释的:
LLM的一个需要注意的问题是它们没有状态概念。嵌入允许您在数据库中存储大量上下文,例如文档或长期的聊天历史,并对其进行筛选以找到最相关的信息。然后,您可以将最相关的聊天历史或文档馈送给模型,以模拟长期记忆和业务特定的知识。
Google Cloud发布了一个Colab笔记本和一个视频,使用pgvector、开源框架LangChain和LLM构建基于人工智能的应用程序。Google的高级软件工程师Saket Saurabh在介绍如何向示例Python应用程序添加生成式AI功能时写道:
pgvector扩展还引入了新的运算符,用于在向量上执行相似性匹配,可以找到语义上相似的向量。其中两个运算符是: ‘<->’: 返回两个向量之间的欧几里德距离。 ‘<=>’: 返回两个向量之间的余弦距离。
在过去几个月中,Google Cloud并不是唯一一个针对向量数据库的云提供商,Amazon RDS for PostgreSQL支持pgvector扩展,微软也展示了Azure Data Explorer (ADX)如何用作向量数据库,并讨论了几个连接器与向量数据库的连接。
来源:https://www.infoq.com/news/2023/07/gcp-databases-vector-search/