2023 年:人工智能之年
2023 年是人工智能 (AI) 的关键转折点。大型语言模型 (LLM)已成为焦点,因其出色的自然语言处理能力而获得广泛认可。这种普及的激增大大扩展了机器学习应用的可能性,使开发人员能够构建更智能、更具交互性的应用程序。
在这场革命中,矢量数据库已成为一个关键组成部分,充当 LLM 的长期记忆。检索增强生成 (RAG)模型、智能代理和多模态检索应用程序的兴起证明了矢量数据库在提高多模态数据检索效率、减少 LLM 中的幻觉和补充领域知识方面的巨大潜力。
LLM 的发展也催化了嵌入技术的重大进步。根据HuggingFace 上的Massive Text Embedding Benchmark (MTEB) 排行榜,UAE、VoyageAI、CohereV3 和 Bge 等领先的嵌入模型均于 2023 年发布。
这些进步增强了 Milvus 等各种向量搜索技术的向量检索效率,为 AI 应用提供了更精确、更高效的数据处理能力。
然而,随着向量数据库的日益普及,关于专门解决方案必要性的争论也随之而来。数十家初创公司已进入向量数据库领域。许多传统的关系型数据库和 NoSQL 数据库已开始将向量视为重要的数据类型,许多公司声称能够在任何情况下替代专门的向量数据库。
当我们进入 2024 年时,这是一个反思整个矢量数据库行业的明智时机,特别关注 Milvus — 该领域的杰出产品。
2023 年:数字不会说谎
Milvus于 2019 年首次推出,率先提出了向量数据库的概念,并始终保持着高可靠性、可扩展性、搜索质量和性能的声誉。2023 年,Milvus 取得了令人瞩目的成绩,经历了重大转变,这主要得益于 LLM 的快速发展和 AIGC 应用的蓬勃发展。以下是一些最能代表 Milvus 在 2023 年进步的关键数据。
滚动升级期间实现零停机
对于矢量数据库的新手来说,他们主要关注的是功能而不是操作维护。许多应用程序开发人员对矢量数据库稳定性的关注度也低于事务数据库,因为他们的应用程序通常处于探索的早期阶段。然而,如果您打算在生产环境中部署 AIGC 应用程序并获得最佳用户体验,稳定性就变得不可或缺。
Milvus 的独特之处在于,它不仅注重功能性,还注重运行稳定性。我们从 2.2.3 版本开始为 Milvus 添加了滚动升级功能。经过不断完善,此功能可以确保升级期间零停机时间,而不会中断业务流程。
生产环境中的性能提升 3 倍
提升向量搜索性能应该是向量数据库的首要目标。许多向量搜索解决方案选择基于HNSW算法来快速推向市场;不幸的是,这导致它们在实际生产环境中面临重大挑战,尤其是在高度过滤的搜索(超过 90%)和频繁的数据删除的情况下。Milvus 从一开始就考虑性能,并且在开发的任何阶段(尤其是在生产环境中)都擅长优化性能,实现了搜索性能的三倍提升,尤其是在过滤搜索和流式插入/搜索情况下。
为了进一步帮助矢量数据库社区,我们去年推出了开源基准测试工具VectorDBBench。该工具对于在不同条件下对矢量数据库进行早期评估至关重要。与传统评估方法不同,VectorDBBench 使用真实数据(包括超大数据集或与实际嵌入模型数据非常相似的数据集)来评估数据库,为用户提供更有见地的信息,以便做出明智的决策。
Beir 数据集的召回率提高了 5%
尽管密集嵌入在向量搜索中已被证明是有效的,但在搜索名称、对象、缩写和短查询上下文时,它们必须迎头赶上。针对它们的局限性,Milvus 引入了一种混合查询方法,该方法将密集嵌入与稀疏嵌入相结合,以提高搜索结果的质量。我们的测试证实,这种混合解决方案与重排模型的协同作用已使 Beir 数据集的召回率大幅提高了 5%。
除了提高搜索质量之外,Milvus 还推出了针对稀疏嵌入量身定制的基于图的检索解决方案,其性能超越了 WAND 等传统搜索算法。
在 2023 年 NeurIPS BigANN 竞赛中,Zilliz 的天才工程师 Zihao Wang 展示了Pyanns,这是一种搜索算法,与稀疏嵌入搜索赛道中的其他参赛作品相比具有显著优势。这一突破性解决方案是我们用于生产环境的稀疏嵌入搜索算法的前身。
大型数据集上节省 10 倍内存
检索增强生成(RAG) 是 2023 年矢量数据库最受欢迎的用例。然而,RAG 应用程序的矢量数据量增加给这些应用程序带来了存储挑战。当转换后的矢量量超过原始文档块的量时,这种挑战尤其严重,可能会增加内存使用成本。例如,将文档分成块后,从 500 个标记块(约 1kb)转换而来的 1536 维 float32 矢量(约 3kb)的大小大于 500 个标记块。
Milvus 是第一个支持基于磁盘的索引的开源矢量数据库,可显著节省 5 倍的内存。到 2023 年底,Milvus 2.3.4 ,能够使用内存映射文件 ( MMap )将标量和矢量数据/索引加载到磁盘上。与传统的内存索引相比,这一进步可将内存使用量减少 10 倍以上。
20 个 Milvus 版本
2023 年,Milvus 经历了一段具有重要里程碑意义的变革之旅。
例如,Milvus 2.2.9 引入了动态模式,标志着从优先考虑性能到增强可用性的重大转变。在此基础上,Milvus 2.3引入了 Upsert、范围搜索、余弦指标等关键功能,所有这些都是由用户社区的特定需求和反馈驱动的。
单个 Custer 中有 1,000,000 个租户
实现多租户对于开发 RAG 系统、AI 代理和其他 LLM 应用程序至关重要,可以满足用户对数据隔离的日益增长的需求。对于 B2C 企业来说,租户数量可能会激增至数百万,这使得对用户数据进行物理隔离变得不切实际(例如,不太可能有人会在关系数据库中创建数百万个表)。Milvus 引入了分区键功能,允许基于分区键进行高效的逻辑隔离和数据过滤,这在大规模情况下非常方便。
相反,习惯于处理数以万计租户的 B2B 企业受益于涉及物理资源隔离的更细致入微的策略。最新的 Milvus 2.3.4 带来了增强的内存管理、协程处理和 CPU 优化,使得在单个集群中创建数以万计的表变得更加容易。这一增强功能还满足了 B2B 业务的需求,提高了效率和控制力。
10,000,000 次 Docker 镜像拉取
2023 年即将结束之际,Milvus 的Docker pull 下载量达到了 1000 万次,这是一个令人印象深刻的里程碑。这一成就标志着开发者社区对 Milvus 的兴趣日益浓厚,并强调了其在矢量数据库领域日益重要的意义。
作为全球首个云原生矢量数据库,Milvus 与 Kubernetes 及更广泛的容器生态系统无缝集成。展望未来,我们不禁会思考,不断发展的矢量数据库领域的下一个焦点会是 Serverless 服务的兴起吗?
单个集合中有 100 亿个实体
虽然可扩展性目前可能不是 AI 现象中的焦点,但它无疑发挥着关键作用,远非仅仅是一个配角。Milvus 矢量数据库可以无缝扩展,轻松容纳数十亿个矢量数据。例如,看看我们的一位 LLM 客户。Milvus 毫不费力地帮助这位客户存储、处理和检索了惊人的 100 亿个数据点。但是,在处理如此大量的数据时,如何平衡成本和性能?请放心,Mivus 有各种功能可以帮助您应对这一挑战并提升您的体验。
超越数字:对矢量数据库的新见解
除了数字里程碑之外,2023 年还为我们带来了宝贵的见解。我们深入研究了矢量数据库领域的复杂性,超越了单纯的统计数据,掌握了矢量搜索技术的细微差别和不断发展的动态。
LLM 应用程序仍处于早期阶段。
回顾移动互联网繁荣的早期,许多开发人员创建了手电筒或天气预报等简单应用,这些应用最终被集成到智能手机操作系统中。去年,大多数 AI Native 应用(如在 GitHub 上迅速获得 10 万颗星的 AutoGPT)并未提供实用价值,而只是代表了有意义的实验。对于矢量数据库应用来说,当前的用例可能只是 AI Native 转型的第一波浪潮,我热切期待更多杀手级用例的出现。
矢量数据库正走向多样化。
与数据库演变为 OLTP、OLAP 和 NoSQL 等类别类似,矢量数据库显示出明显的多样化趋势。与传统的在线服务重点不同,离线分析已获得显著的关注。这种转变的另一个显著例子是 GPTCache 的引入,这是一个于 2023 年发布的开源语义缓存。它通过存储和检索语言模型生成的响应来提高基于 GPT 的应用程序的效率和速度。
我们希望并很高兴在来年看到矢量数据库更加多样化的应用和系统设计。
矢量运算变得越来越复杂。
虽然支持近似最近邻 (ANN)搜索是矢量数据库的一个决定性特征,但它并不是唯一的。人们普遍认为,仅保留最近邻搜索就足以将数据库归类为矢量或 AI 原生数据库,这过于简化了矢量操作的复杂性。除了混合标量过滤和矢量搜索的基本功能外,为 AI 原生应用量身定制的数据库还应支持更复杂的语义功能,如 NN 过滤、KNN 连接和集群查询。
弹性可扩展性对于AI原生应用来说至关重要。
人工智能应用的指数级增长,例如 ChatGPT 在两个月内积累了超过 1 亿月活跃用户,超越了之前的任何商业轨迹。一旦企业在增长方面取得进展,从 100 万到 10 亿的数据点迅速扩展就变得至关重要。人工智能应用程序开发人员受益于 LLM 提供商设置的按需付费服务模式,从而大幅降低运营成本。同样,存储符合此定价模式的数据对开发人员来说也是有利的,使他们能够将更多注意力集中在核心业务上。
与语言模型 (LLM) 和其他各种技术系统不同,矢量数据库以有状态的方式运行,需要持久的数据存储才能发挥其功能。因此,在选择矢量数据库时,必须优先考虑弹性和可扩展性。这种优先考虑确保与不断发展的 AI 应用程序的动态需求保持一致,强调对不断变化的工作负载进行无缝适应的必要性。
利用矢量数据库中的机器学习可以产生非凡的成果。
2023 年,我们对 AI4DB(数据库人工智能)项目的大量投资取得了显著的成功。作为我们努力的一部分,我们为完全托管的 Milvus 解决方案Zilliz Cloud引入了两项关键功能:1)AutoIndex,一种植根于机器学习的自动参数调整索引,以及 2)基于数据聚类的数据分区策略。这两项创新在显著提升 Zilliz Cloud 的搜索性能方面发挥了关键作用。
开源与闭源
目前,OpenAI 的 GPT 系列和 Claude 等闭源 LLM 占据领先地位,由于缺乏可比的计算和数据资源,开源社区处于不利地位。
然而,在矢量数据库中,开源最终将成为用户的首选。选择开源有很多好处,包括更多样化的用例、更快的迭代和培育更强大的生态系统。此外,数据库系统非常复杂,无法承受 LLM 经常带来的不透明性。用户必须彻底了解数据库,然后才能选择最合理的使用方法。此外,开源的透明度使用户能够拥有根据自己的需求定制数据库的自由和控制权。
结语——一个新的开始!
2023 年还见证了许多 AI 初创公司的成立和第一轮融资。看到这些开发人员的创新令人兴奋,这让我想起了当初我从事 VectorDB 开发的原因。2024 年将是所有这些创新应用程序获得真正吸引力的一年,不仅吸引资金,还吸引真正的付费客户。客户收入将为这些开发人员带来不同的要求,因为构建一个完全可扩展且几乎没有停机时间的解决方案至关重要。
让我们在 2024 年创造非凡之事!
RA/SD 衍生者AI训练营。发布者:chris,转载请注明出处:https://www.shxcj.com/archives/4044