AI知识库 AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


Milvus
发布日期:2024-06-06 21:25:12 浏览次数: 1561

引言

最近,公司自研的RAG系统设计论证接近尾声,要转入开发部署阶段,需要部署先行将一些基础服务先搭建起来。在RAG系统中,向量数据库是绕不开的。其实向量数据库并不是一个新的概念,多年前,在某互联网厂从事推荐系统相关工作时,召回系统已经是相似相关召回,其中用到的就是FAISS向量检索引擎,只不过没有被广泛的知道。随着LLM技术的迅猛发展,语义搜索和检索增强生成(RAG)的火热,向量数据库被广泛熟知。作为实现这些突破性进展的支柱,向量数据库正在引领数据处理的变革,为我们带来前所未有的可能性。本文将揭秘向量数据库,探讨其在RAG系统中的核心驱动力作用。

什么是向量数据库?

向量数据库是一种将数据存储为高维向量的数据库,高维向量是特征或属性的数学表示。每个向量都有一定数量的维度,根据数据的复杂性和粒度,可以从数十到数千不等。向量通常是通过对原始数据(如文本、图像、音频、视频等)应用某种转换或嵌入函数来生成的。嵌入函数可以基于各种方法,如机器学习模型、词嵌入和特征提取算法。

向量数据库的主要优点是,它允许基于数据的向量距离或相似性进行快速和准确的相似性搜索和检索。这意味着,不用使用基于精确匹配或预定义标准查询数据库的传统方法,而是可以使用向量数据库根据语义或上下文含义查找最相似或最相关的数据。

向量数据库的应用场景

向量数据库的应用场景广泛,涵盖了多个领域,包括但不限于:

  • • 语义搜索:通过向量化文本数据,实现基于语义的搜索,提高搜索结果的相关性和准确性。

  • • 图像和视频检索:将图像和视频数据转换为向量,实现基于内容的快速检索,应用于安防监控、媒体管理等领域。

  • • 自然语言处理(NLP):在文本分类、情感分析、机器翻译等任务中,通过向量化处理,提高模型性能。

  • • 推荐系统:通过向量化用户行为数据和商品信息,实现个性化推荐,提高用户体验和转化率。

RAG系统概述

RAG(Retrieval-Augmented Generation),检索增强生成,是一个由Meta AI研究团队开发的大规模自然语言处理模型。RAG将检索和生成结合在一起,能够从大量文本中检索相关信息,并用这些信息来生成答案或进行文本补全。

RAG系统的工作流程如下:

  • • 数据检索:从大规模语料库中检索与查询最相关的信息。

  • • 数据生成:利用检索到的信息,生成上下文相关的回答或文本。

  • • 答案整合:将生成的内容整合为最终的输出,提供给用户。

RAG系统在现代企业中的应用非常广泛,如智能客服、自动化文档生成、实时信息查询等。

向量数据库在RAG系统中的作用

向量数据库在RAG系统中发挥着关键作用,主要体现在以下几个方面:

  • • 数据嵌入和向量化:通过高效的嵌入模型,将原始数据转换为高维向量,为后续的检索和生成提供基础。

  • • 高效向量存储与检索:利用向量数据库的强大存储和检索能力,快速找到与查询最相似的向量,提高检索效率。

  • • 提供语义搜索能力:结合向量相似性计算,实现基于语义的搜索,提升搜索结果的相关性和准确性。

开源向量数据库比较

首先,目前开源领域的向量库产品,实际上要分为两大类,一类其实是嵌入到应用层的向量搜索引擎,其强调搜索功能,其他的事务性功能不支持或者很少。另一类是完整的数据服务,应用层通过API去访问,类似于传统数据库的形式。

如下图所示,左面列出了嵌入式向量库,右面列出了一些数据库类型的向量库,可以看到,大部分数据库形式的向量库,是由传统厂商改造而来的,在之前的数据库产品中加入了向量检索的能力。


相似度度量指标

向量数据库的主要功能是为了检索出与问题相关的库中的知识或内容,那么,衡量相似度的指标,通常有以下几种。

  • • 对于浮点嵌入向量(float embedding),主流向量库提供的相似性度量如下表


  • • 对于二进制类型嵌入向量(binary embedding),主流向量库提供的相似性度量如下表

具体选择什么指标,需要根据业务情况去具体测试,测试召回的准确率。

索引类型

在向量库中,数据是以索引的形式存在的,不同索引有不同的适用场景。

  • • 对于浮点嵌入向量(float embedding),索引类型如下

  • • 对于二进制类型嵌入向量(binary embedding),索引类型如下

Milvus

经过本次调研,我们将会选择Milvus,作为向量数据库,首先,我们需要的是独立的数据服务,嵌入型搜索引擎没有辅助的配套系统,如专业的持久化层,API层,主备等。而且,目前嵌入型搜索引擎都是朝着云端SAAS化去发展,我们需要私有化部署,因此不太合适。Milvus的架构如下所示:

可以看到,Milvus提供了专业的API接入层,数据持久化层,也具备集群部署的能力。在生产环境可靠性有保障。向较于传统数据库加入向量检索能力,Milvus还是做的更加专业。而且,目前最新的版本都可以内置的去支持rerank等高阶功能。


53AI,大模型落地应用首选服务商

定位:开箱即用的大模型落地应用平台

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

年轻人!来一起搞AI吗?

如果你看见AI对商业世界的变革,欢迎来和我们一起探索~

岗位:销售经理

查看详情

岗位:项目经理

查看详情

岗位:产品经理

查看详情

岗位:测试工程师

查看详情

联系我们

售前咨询
186 6662 7370
产品演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询