一个在GitHub上标星超2万的数据库,究竟是什么来头?
原来,这正是最近大火的向量数据库之一、首个在这一赛道开源产品Milvus。
自大模型爆火以来,它的关注度也一路飙升,官方显示,目前Milvus已经拥有超过1000+企业用户。
而就是这么一个GitHub上最流行的向量数据库,背后公司Zilliz已经完成了1.13亿美元融资。
Zilliz专注于研发面向AI应用的向量数据库系统,旗下有Milvus、Zilliz Cloud等产品,目的是为开发者提供易用性强、性价比高的向量数据库服务。
这两天,Zilliz Cloud发布2.0重磅更新,更是带起一波业界对向量数据库的讨论热潮。
大模型技术进展日新月异,向量数据库在风口浪尖上也起起伏伏,不少人说它是给AI提供长期记忆的必备基建,也有人认为提高大模型上下文长度才是未来方向。
这不,还有谷歌工程师专门为此摆摊舌战群儒。
众说纷纭之下,情况究竟如何?不如来听听向量数据库一线从业者怎么说。
我们联系到了Zilliz创始人兼CEO星爵,希望和他聊一聊向量数据库对于这一轮AI浪潮的意义,以及它背后变革的方式。
星爵认为,大模型的出现给AI带来了新的计算范式CVP Stack,向量数据库是不可或缺的关键:
其中,“C”代表大模型(ChatGPT)负责向量计算;“V”代表向量数据库(vector database),负责向量存储;“P”代表Prompt工程,负责向量交互。
不仅如此,他还系统解答了在大模型发展过程中,向量数据库具体起到的作用,以及作为向量数据库头部公司的Zilliz,又要如何应对这一轮AI变革浪潮。
在不更改原意的基础上,量子位对与星爵的交流内容进行了整理,希望能为大家带来一些思考与启发。
提问:最近向量数据库很火,能不能先简单科普一下?
星爵:向量数据库是一种为了高效存储和索引AI模型产生的向量嵌入(embedding)数据而专门设计的数据库。
在传统的关系型数据库中,数据通常以表格的形式存储,而在向量数据库中,数据以向量的形式存储。向量(embedding)是一组数值,可以表示一个点在多维空间中的位置。向量数据库非常擅长处理大量的高维embedding数据,这种数据在机器学习和深度学习应用中很常见。
提问:在最近半年里,向量数据库被广泛应用于大模型领域。向量数据库在大模型领域具体有哪些应用?
星爵:诸如GPT、Bard、Claude和LLaMA这样的大模型可以产生海量向量嵌入数据来表达复杂的语义关系,但模型本身的存储空间有限,无法持久保存这些数据。
向量数据库就像一块外置的记忆块,可以长期存储这些数据,供模型随时调用。向量数据库在LLM领域的应用主要可以分为以下几类:
1、管理私有数据和知识库
开发者可以方便高效地将自己的领域数据集或者私有数据集转换成向量格式,让大模型直接操作,而无需将这些数据暴露给模型训练方,有效保护了数据隐私和产权。
2、为大模型提供实时数据更新。
通过向量数据库可以为大模型提供实时的数据更新,解决大模型“胡言乱语”的问题,而无需频繁重训模型。这比直接fine-tune模型的成本低很多。
3、实现大模型的个性化和增强。
开发者可以在向量数据库中添加上下文和自己的数据来扩展大模型的感知能力,实现个性化应用。
4、提供智能体的记忆。
智能体是大模型的一个新兴应用场景,用于构建具有独立智能的虚拟人物、虚拟代理甚至人形机器人。向量数据库不仅可以帮助智能体记忆其感知的历史数据和上下文,帮其做出智能决策,还能使其根据长期记忆来实现自我演进。
5、保存大模型的处理结果。
向量数据库可以持久保存大模型处理过的数据,进行离线分析和挖掘。而不像大模型那样,用过即弃。比如说,开源项目GPTCache可以将大模型的查询结果缓存至向量数据库,避免重复计算,提高查询效率,这有点像CDN和Redis对网站数据的作用。
6、构建更复杂的AI系统。
在很多场景下,我们需要将多个大模型和向量数据库串联,实现更强大的功能。其中,多个大模型甚至是多模态模型共同负责处理语义,向量数据库负责数据流转。
对于大模型应用开发者来说,向量数据库是一个非常重要的基础设施,可以在最大限度发挥大模型威力的同时保护数据隐私,实现更丰富的功能。LLM和向量数据库共同推动AIGC的发展,二者缺一不可。
提问:我们了解到,Zilliz Cloud在两周前于硅谷发布了全面的产品更新和升级。这次产品升级背后的动机是什么?
星爵:我们的出发点是all-in大模型应用开发。
在过去的几年里,我们的开源产品Milvus和商业产品Zilliz Cloud被广泛应用于计算机视觉、NLP、推荐系统、搜索引擎、自动驾驶和生物制药等领域。在过去的半年里,向量数据库经历了它的iPhone时刻,数百万LLM应用开发者涌入,LLM应用开发成为了向量数据库的杀手级应用场景。众多的LLM应用开发者给我们带来了大量新兴的需求,我们决定拥抱这些变化,为LLM应用开发提供更全面、更便利的支撑。
提问:能不能具体介绍下Zilliz Cloud做了哪些更新和升级?
星爵:首先,引入了对RESTful API的全面支持。我们看到新进的LLM开发者大多具有丰厚的Web应用和移动应用开发背景,他们熟悉基于RESTful API将多个服务的能力串起来打造强大的应用。有了RESTful API,开发者可以便捷地将「LLM+向量数据库+提示词」三者连接起来,打造LLM应用程序。我们将这种新开发范式称为CVP Stack,能极大提高开发效率。举个例子说,明道云的一位工程师使用RESTful API一天就完成了Zilliz Cloud和对方平台的整合。
其次,提供了动态schema。此前向量数据库采用静态schema的方式,需要开发者在建表时根据业务定义数据的schema,这对于大型企业的成熟业务而言是一种常见的处理方式。然而,当下AIGC应用多处于早期快速迭代阶段,面向业务效果,需要频繁调整向量数据库内的字段,对于这类需求,反复重建schema结构以及频繁的数据重导入会严重影响产品的迭代速度。为此我们引入了动态schema,支持用户根据开发需要动态灵活地进行数据处理。
再者,新增了JSON数据类型的支持。JSON是目前最流行且最灵活的数据表示方式之一,被广泛地应用于应用程序开发中。我们将MongoDB的基础能力搬进了向量数据库,用户在Zilliz Cloud上可以将JSON与embedding这两种超强能力相结合,实现基于JSON与embedding向量的混合数据表示和处理。
另外,我们还引入了Partition Key,支持基于Partition Key的高效数据过滤;增加了组织和角色的概念,支持基于Role-Based Access Control(RBAC)的多粒度访问控制;增加了全面的LLM生态支持,深度整合了OpenAI、Claude、Cohere、LLaMA、Bard、Dolly、LangChain、LlamaIndex和Semantic Kernel等热门项目。
提问:我们看到Zilliz Cloud之前只提供专有集群一种产品,此次新增了Serverless和云上私有部署两种产品。这背后的原因是什么?
星爵:Zilliz Cloud面向不同阶段的用户提供多种用户计划。
基于Serverless的入门计划
为每位用户提供一个免费的Serverless实例,开箱即用,可支持百万条数据规模的向量检索,适合个人开发者和小型开发团队使用。
专有集群产品
面向大型开发团队和企业,专注高性能、高可用、高可扩展性、智能运维和优化、数据安全以及敏捷技术支持等企业级特性,并提供性能型、容量型、经济型三类实例类型,满足企业不同维度的业务需求。
自托管计划
允许用户在其虚拟私有云(VPC)上部署我们的向量数据库服务,提供完全控制,它是注重隐私、数据安全和合规的大型企业的理想选择。
通过提供不同形态的产品,我们希望满足LLM开发者在不同发展阶段的需要,让每一个开发者、每一个开发团队、每一个企业都能方便地使用向量数据库服务,加速实现AI数据基础软件的普及化。
提问:今年以来,多家向量数据库初创公司获得了大额融资,一些大厂也纷纷把向量数据库的研发列入日程。你怎么看待日益升温的竞争?
星爵:竞争意味着市场确认和机会。竞争的加剧说明向量数据库的价值得到了市场的广泛认可,其市场机会和潜力得以证实。与此同时,激烈的竞争也在一定程度上推动了技术的进步,这对消费者和整个行业而言都大有裨益,是一件实打实的好事。
当然,这种竞争环境迫使公司更加关注客户的需求。这意味着我们必须密切关注市场趋势,并适应这些变化,以提供客户真正需要的解决方案。我们必须不断创新和优化我们的产品和服务。这对LLM开发者和整个行业来说都是有益的。我相信在一个健康的生态系统中,有多个玩家是至关重要的。这为开发者和客户提供了选择,也为行业设置了标准。
在Zilliz,我们作为向量数据库行业的先行者和开拓者,尤其欢迎这种竞争。我们将继续致力于推动向量数据库技术的发展,并与其他参与者一起,为用户提供最先进的工具和服务。
提问:刚才你提到了行业标准,在关系型数据库领域有TPC-C和TPC-H这样的benchmark,向量数据库领域有类似的benchmark么?
星爵:目前还没有标准的benchmark,这给开发者和企业在向量数据库产品对比和选择时造成了很多的疑惑和困难。
为此,我们近期开放了一套开源的向量数据库评测工具Vector DB Bench(https://github.com/zilliztech/VectorDBBench)。
该工具包含一套标准化数据集,结合多个典型场景,覆盖数据插入与索引构建、向量查询、混合查询、数据容量等多个能力维度,同时支持用户自定义的数据集与测试场景。
我们欢迎开发者们参与到这个开源benchmark的开发和迭代中来,希望Vector DB Bench能发展成为像ClickBench这样的行业标准。
提问:你认为向量数据库赛道未来竞争的核心是什么?
星爵:向量数据库作为一款数据库产品,“更大更快更便宜”是未来发展的核心趋势。更大是指能处理更大的数据量,这意味着支持百亿条数据甚至更高的可扩展性;更快是指更高的性能,包括毫秒级的响应时间和高达数万的QPS;更便宜是指更少的资源消耗更高的性价比,在相同资源消耗的情况下提供更强大的性能。
我们的Zilliz Cloud基于Milvus开源项目,这是全球现在唯一一款真正分布式的向量数据库系统,能提供数百亿条向量数据的毫秒级查询。得益于Milvus的云原生架构,Zilliz Cloud高效地实现了多租户能力,在相同的实例配置下,性能远超其他竞品。举个例子说,在基于VectorDBBench的评测中,Zilliz Cloud性能是Pinecone的两倍以上,综合性价比超过Pinecone三倍以上。
提问:Zilliz Cloud现在已经支持了AWS和GCP,有没有计划支持国内云平台?
星爵:我们计划在今年7月上旬推出国内的云服务产品,首期预计会支持阿里云、百度云、腾讯云和金山云,并将逐步覆盖国内更多的云厂商。Zilliz Cloud国内云产品定价相比海外产品将会有较大幅度的下调,致力于为国内用户提供最高性价比的全托管向量数据库服务。
Zilliz Cloud:
https://zilliz.com/cloud
Milvus:
https://milvus.io
https://github.com/milvus-io/milvus
VectorDBBench:
https://github.com/zilliztech/VectorDBBench
GPTcache:
https://github.com/zilliztech/GPTCache
“