在当今数据驱动的世界中,非结构化数据指数级增长是一个需要关注的现象。生成式人工智能(GenAI)和大语言模型(LLM)的兴起为这种数据爆炸增添了更多动力,将我们的注意力吸引到一项突破性技术:向量数据库。
将非结构化信息转换为向量已司空见惯,并用于大型语言模型(LLM)、图像识别、自然语言处理、推荐引擎和其他机器学习用例。
作为人工智能时代的重要基础设施,向量数据库是存储、索引和搜索非结构化数据的强大工具。
一些人曾大言不惭地说,向量数据库即将过时!而发展迅猛的向量数据库就是最好的回答!
那么向量数据库2024的看点有哪些呢?






1.减少LLM幻觉的秘诀依然在向量数据库


近年来,大型语言模型在进行复杂、多步推理方面取得了很多进展。然而,即使是当前最先进的模型仍然会产生逻辑错误,这通常被称为幻觉(hallucinations),而减少幻觉是构建对齐的通用人工智能(AGI)的关键一步。
虽然顶级人工智能智囊团尝试了各种方法来减少LLM中的幻觉,但现实情况是由于幻觉的架构,幻觉是语言模型中不可避免的一部分,并加剧了人们对其产生可信错误信息的能力的担忧。。
虽然没有办法从内部直接限制LLM,但可能有一个架构解决方案来解决这个根深蒂固的问题。在人工智能浪潮中爆发的向量数据库,可能就是阻止LLM产生幻觉的秘密武器。
事实证明,向量数据库在减少LLM幻觉上效果不错,如亚马逊云科技与Neo4j 联手解决LLM幻觉并改进GenAI。
向量数据库丰富了语言模型的训练过程,并增强了其生成事实准确和上下文适当的响应能力。通过利用向量数据库中的知识,LLM可以显著降低幻觉的风险,并提高人工智能生成内容的可靠性。
通过使用向量数据库,LLM可以查询人类编写内容的索引,以帮助它备份其语句。在这种情况下,LLM不会从自己的训练数据中生成答案,而是会查询数据库中的信息,从而提供比容易产生幻觉的文本生成更好的解决方案。虽然这种方法确实需要过滤器,以便模型不会被“混淆”,但它仍然是比原始文本生成更好的方法。
另外,更新的向量数据库进展也在帮助LLM减轻幻觉。例如使用一种称为Vector SQL的技术,一家名为MyScale的公司创建了一种架构,LLM可以查询向量数据库,而不是尝试自己生成用户查询的答案。虽然这种方法将LLM降级为更大的数据恢复机制的一部分,但它被证明可以减少幻觉并使LLM适合广泛使用。
向量数据库的下一步是通过SQL代码实现自动化。通过利用LLM的代码生成功能,可以让它们为用户的自然语言查询编写SQL查询。然后,可以将其传递给向量SQL引擎,该引擎在两种数据库类型之间进行转换。然后将知识传回LLM,LLM将数据重新打包为人类可读的格式并将其呈现给用户。
虽然这种特定方法无疑是一种让LLM访问人类可读数据的新方法,但当今许多顶级聊天机器人已经使用类似的方法来访问数据。虽然这些模型还没有完全摆脱幻觉,但结构合理的解决方案在降低幻觉发生率方面发挥了重要作用。






2.向量数据库与其他向量搜索技术并存


除了向量数据库之外,还有各种技术可用于向量搜索。2017年,Meta开源了FAISS,大大降低了与向量搜索相关的成本和障碍。随后,随着Elasticsearch和 Redis等许多传统搜索产品的进入以及 GPT等LLM的广泛使用,向量数据库的趋势开始腾飞。
所有这些向量搜索产品之间有什么异同?可以大致分为以下几种类型:
向量搜索库。这些是没有基本数据库功能如插入、删除、更新、查询、数据持久性和可伸缩性等的算法集合。FAISS就是一个主要的例子。
轻量级向量数据库。它们建立在向量搜索库之上,使其在部署中轻量级,但可扩展性和性能较差。LanceDB 和 Chroma 优先考虑轻量级部署
向量搜索插件。这些是依赖于传统数据库的向量搜索附加组件。它们的体系结构适用于传统工作负载,可能会对其性能和可伸缩性产生负面影响。Elasticsearch 和 Pgvector 是主要的例子。
专门构建的向量数据库。这些数据库专为向量搜索而构建,与其他向量搜索技术相比具有显著优势。如专用向量数据库提供分布式计算和存储、容灾、数据持久化等功能。星环科技自研的分布式向量数据库Transwarp Hippo就属于这类。


3.向量数据库用例会不断扩大


如今,将非结构化信息转换为向量已司空见惯,并用于大型语言模型(LLM)、图像识别、自然语言处理、推荐引擎和其他机器学习用例。
向量数据库和向量搜索是开发人员用来将非结构化信息转换为向量的两个主要平台,现在通常被称为嵌入。一旦信息被编码为嵌入,它就可以更轻松、更快速地存储、搜索和比较大型数据集的信息,并且具有显著的可扩展性。
想象一下,您正在为数码相机构建搜索功能。数码相机具有数十种属性,包括尺寸、品牌、价格、镜头类型、传感器类型、图像分辨率和其他功能。假如一个数码相机搜索引擎有50个属性,那么就可以搜索2500多台相机。实现搜索和比较的方法有很多种,但一种方法是将每个属性转换为嵌入中的一个或多个数据点。对属性进行向量化后,向量距离公式可以计算产品相似性和搜索。
向量数据库有助于解决针对具有许多属性和用例的复杂信息源支持各种搜索选项的问题。LLM凸显了向量数据库的多功能性,现在开发人员正在将它们应用于语言和其他信息丰富的领域。
在我们穿越向量数据库世界的开创性旅程中,人们普遍低估了它们的真正潜力。向量数据库的真正宝藏在于它们能够深入研究庞大的非结构化数据池并释放其价值。重要的是要认识到,它们的作用不仅限于LLM的内存存储,而且它们具有许多人仍在觉醒的变革能力。
随着越来越多的应用采用机器学习和人工智能来支持语音助手、聊天机器人、异常检测、推荐和个性化引擎,向量搜索获得了快速发展,所有这些都基于向量嵌入的核心。通过将实时搜索和分析功能扩展到向量搜索,开发人员可以实时索引和更新元数据和向量嵌入,这是为相似性搜索、推荐引擎、生成式人工智能问答和聊天机器人提供动力的重要组成部分。






4.中国自研向量数据库迅速发展


随着生成式AI大模型开发量和使用量的增长,向量数据库的应用有望快速增长。东北证券预测,到2030年,全球向量数据库市场规模有望达到500亿美元,国内向量数据库市场规模有望超600亿元人民币。
与美国不同,中国向量数据库发展的主力是自研,而不是开源产品。国内自研向量数据库主力包括2023年推出产品的星环科技分布式向量数据库Hippo、腾讯云Tencent Cloud VectorDB、南大通用向量数据库GBase Cloud Vector DB、华为云 GaussDB 向量数据库等。
国外的向量数据库既有Pinecone、FAISS 和 Mivus,也有Chroma、LanceDB、Marqo、Qdrant、Vespa 和 Weaviate。
支持向量搜索功能的数据库和引擎包括 Cassandra、Coveo、Elasticsearch、OpenSearch、PostgreSQL、Redis、Rockset 和 Zilliz。
在将信息转换为嵌入和构建向量搜索、相似性比较和问答功能时,开发人员有多种技术选择。
我们既有进入市场的专用向量数据库,也有许多传统的通用数据库获得向量扩展。开发人员面临的一个选择是接受这些新数据库,会提供更多的功能和性能,或者继续使用带有扩展的通用数据库。
但是国内通常用于搜索引擎、聊天机器人和自然语言处理的应用,最好选择国内自研的向量数据库,避免更多的卡脖子。






5.学会评价向量数据库


选择向量数据库,最好学会科学地评估向量数据库。专家认为,可扩展性、功能和性能是前三个最关键的指标。
可扩展性。可扩展性对于确定向量数据库是否能够有效地处理呈指数级增长的数据至关重要。在评估可伸缩性时,必须考虑水平与垂直可伸缩性、负载均衡和多重复制。
不同的向量数据库迎合不同类型的用户,因此它们的可伸缩性策略不同。例如,Milvus专注于数据量快速增长的场景,采用存储计算分离的水平扩展架构。Pinecone、Qdrant专为数据量和扩展需求更适中的用户而设计。LanceDB、Chroma优先考虑轻量级部署,而不是可扩展性。
第二,功能性。向量数据库的功能分为两大类:面向数据库的特征和面向向量的特征。
面向向量的特征。向量数据库使许多用例受益,如检索增强生成 (RAG)、推荐系统以及使用各种索引的语义相似性搜索。因此,支持多种索引类型的能力是评估向量数据库的关键因素。
目前,大多数向量数据库都支持 HNSW(分层可导航小世界)索引,有些还支持 IVF(倒排文件)索引。这些索引适用于内存中操作,最适合资源丰富的环境。但是,对于硬件资源有限的情况,一些向量数据库会选择基于mmap的解决方案。虽然更容易实现,但基于mmap 的解决方案是以牺牲性能为代价的。
面向数据库的功能。许多对传统数据库有益的功能也适用于向量数据库,如变更数据捕获 (CDC)、多租户支持、资源组和基于角色的访问控制(RBAC)。
第三,性能。与传统数据库不同,向量数据库进行近似搜索,意味着检索到的前k个结果不能保证100%的准确性。因此,除了QPS和时延等传统指标外,“召回率”是向量数据库量化检索准确率的另一个重要性能指标。
两个公认的开源基准测试工具来评估不同的指标。ANN-Benchmark用于评估各种向量索引算法在一系列真实数据集上的性能,允许根据许多预先计算的数据集中的任何一个绘制各种算法每秒测试召回/查询的结果。它在x轴上绘制召回率与y轴上的QPS,说明每种算法在不同检索精度水平下的性能。
VectorDBBench是专为 Milvus和Weaviate等开源向量数据库以及Zilliz Cloud和Pinecone等完全托管的服务而设计。由于许多完全托管的向量搜索服务不会公开其参数以供用户调优,因此VectorDBBench会分别显示QPS和召回率。
使用矢量数据库和搜索会带来一些常见的生成式 AI 风险,如数据质量、建模问题等。新问题包括幻觉和虚构。解决幻觉和虚构的一些方法包括改进训练数据和访问实时信息。严格来说,从安全决策的角度来看,虚构比幻觉的风险更高,因为LLM会产生合理的反应。
从 LLM 中获得良好的结果需要拥有良好的、精心策划的和受管控的数据,无论数据存储在何处。同时嵌入是要解决的最重要的问题,创建包含最重要信息并支持灵活搜索的嵌入是一门科学。
在LLM的背景下,向量数据库提供长期存储来减轻AI幻觉,以确保模型的知识保持连贯性和扎实性,从而最大限度地降低不准确响应的风险。
参考资料:
·https://www.infoworld.com/article/3711281/how-to-evaluate-a-vector-database.html
·https://www.infoworld.com/article/3709912/vector-databases-in-llms-and-search.html
·https://analyticsindiamag.com/the-secret-to-reducing-llm-hallucinations-lies-in-the-database/
·https://mp.weixin.qq.com/s/lnhwJ6EC5a-YBojxX5a-xA




END






