一文带您了解向量数据库

向量数据库在构建基于大语言模型的行业智能应用中扮演着重要角色 。大模型虽然能回答一般性问题,但在垂直领域服务中,其知识深度、准确度和时效性有限 。为了解决这一问题,企业可以利用向量数据库结合大模型和自有知识资产,构建垂直领域的智能服务 。向量数据库存储和处理向量数据,提供高效的相似度搜索和检索功能 。通过向量嵌入,将企业知识库文档和数据转化为向量表示,并与大模型进行交互,实现专有、私域的垂直的行业智能化应用 。
基于大语言模型构建行业智能应用为什么需要向量数据库?在2023年这个春天,最受瞩目的科技产品无疑是ChatGPT 。ChatGPT的问世重新点燃了曾经静寂已久的人工智能领域,为AI注入了新的活力 。大语言模型(LLM)展示了生成式AI能够达到与人类语言高度相似的表达能力,使得AI不再遥不可及,而是已经进入了人们的工作和生活中 。众多从业者都急切地投身于这个改变时代的机遇,生成式AI已经成为资本和企业不可忽视的下一代技术关键,同时也对底层基础设施的提出了更高的要求 。
大模型能够回答较为普世的问题,但是若要服务于垂直专业领域,会存在知识深度、知识准确度和时效性不足的问题,比如:医疗或法律行业智能服务要求知识深度和准确度比较高,那么企业构建垂直领域智能服务?目前有两种模式:

  • 基于大模型的Fine Tune方式构建垂直领域的智能服务,需要较大的综合投入成本和较低的更新频率,适用性不是很高,并适用于所有行业或企业 。
  • 通过构建企业自有的知识资产,结合大模型和向量数据库来搭建垂直领域的深度服务,本质是使用知识库进行提示工程(Prompt Engineering) 。以法律行业为例,基于垂直类目的法律条文和判例,企业可以构建垂直领域的法律科技服务 。如法律科技公司https://www.harvey.ai/,正在构建“律师的副驾驶”(Copilot for lawyers)以提高法律文件的起草、修改和研究服务 。
将企业知识库文档和数据通过向量特征提取(embedding)然后存储到向量数据库(vector database),应用LLM大语言模型与向量化的知识库检索和比对知识,构建智能服务 。比如:应用大语言模型和向量数据库(知识库)可以让企业应用级Chatbot(聊天机器人)的回答更具专业性和时效性,构建企业专属Chatbot 。
为啥是向量(vector)?向量(vector)是在大语言模型、知识库交互、计算过程中的重要指标 。它可以将文本和知识表示为数学向量,实现文本相似度计算、知识库检索和推理等功能 。向量(vector)为语义理解和应用提供了一种方便有效的表示方法 。
“ vector 是模型之根,是大模型与知识库交互之桥 。向量嵌入(vector embeddings)是一种AI原生的数据表示方式,适用于各种基于AI的工具和算法 。它可以表示非结构化的数据或知识,如文本、图像、音频和视频等 。

一文带您了解向量数据库

文章插图
图:LLM进化之树
什么是vector embeddings罗伊·凯恩斯(Roy Keynes)的定义是:“嵌入(vector embeddings)是学习的转换,使数据更有用” 。神经网络深度学习将文本转化为一个包含其实际含义的向量空间 。这更有用,因为它可以找到同义词,以及单词之间的句法和语义关系 。最为经典的例子:Queen=King-Man+Woman

一文带您了解向量数据库

文章插图
图:词向量示意图
向量数据库作用是什么向量数据库的主要作用是存储和处理向量数据,并提供高效的向量检索功能 。最核心是相似度搜索,通过计算一个向量与其他所有向量之间的距离来找到最相似的向量(最相似的知识或内容) 。这是基本索引(flat indexes)的朴素原理,在大型向量数据库中,这可能需要很长时间 。
【一文带您了解向量数据库】为了提高搜索性能,可以尝试仅计算一部分向量的距离 。这种方法称为近似最近邻(Approximate nearest neighbors:ANN),它提高了速度,但牺牲了结果的质量 。一些常用的ANN索引包括局部敏感哈希(Locally Sensitive Hashing:LSH)、分层可导航小世界(Hierarchical Navigable Small Worlds:HNSW)或倒排文件索引(Inverted File Index:IVF)等 。

一文带您了解向量数据库

文章插图


推荐阅读