推理 + Serverless + 混合搜索,向量数据库发展的新标杆
原创 放飞 | 2025-01-22 21:37
【数据猿导读】 大型语言模型(LLM)将向量数据库从晦涩难懂的搜索技术,转变为AI成功的必备产品。在ChatGPT之前,只有少数“原生”的向量数据库,如Pinecone、Milvus、Zilliz等。
大型语言模型(LLM)将向量数据库从晦涩难懂的搜索技术,转变为AI成功的必备产品。在ChatGPT之前,只有少数“原生”的向量数据库,如Pinecone、Milvus、Zilliz等。
由于大模型中检索增强生成(RAG)依赖于检索最相关的数据,因此向量索引成为数据库技术的核心焦点。主流数据库开始支持向量索引。对于多模态的NoSQL和关系数据库,添加向量数据类型是轻而易举的事。几乎在一夜之间,许多现有的数据库供应商Oracle、Elastic、DataStax、Couchbase、MongoDB、Teradata、AWS等能够存储、索引和处理向量数据了。
无疑向量数据库市场的竞争日益加剧。当遍地都是向量数据库时,在企业为AI大模型选择向量数据库时,却面临很多棘手的问题,如性能不能满足要求,吞吐量太小,延迟太大;没缺少Serverless(无服务器)版本,向量数据库的配置和管理太难等。
在向量数据库发展上,目前很多企业有不少创新举措,给市场带了别具一格的功能和超一流的性能。
向量数据库也有了“推理”能力
使用过AI大模型的用户对其推理功能应该不陌生。推理就是指模型能够根据输入的信息,运用已有的知识和逻辑,进行分析、推断、预测和决策等思维活动,从而生成有意义的输出结果,就如同人类通过推理来解决问题和得出结论一样。
而云原生向量数据库企业Pinecone在则2024年底,将推理功能集成到其向量数据库中,引起了行业的广泛关注。
构建AI应用通常涉及使用多种工具和模型进行推理、检索和数据库管理。为了帮助企业释放非结构化数据的潜在价值,Pinecone扩展了其知识平台Pinecone Knowledge Platform,通过将领先的稀疏嵌入和重新排序模型等集成到其安全、完全托管的平台中,以简化推理过程,所有这些都可以通过新的数据库终端节点访问。
Pinecone集成推理图
Pinecone新的集成推理功能与数据库完全托管在一起,不需要AI或领域专业知识,可以更轻松地在同一个Pinecone环境中获得高质量的结果。
在工作流程中使用重新排序,提高了准确性,减少token浪费,以降低成本。Pinecone引入了用于搜索结果重新排序的模型,如Cohere Rerank 3.5,以及Pinecone的专有模型pinecone-rerank-v0,结合了稀疏向量和密集向量,在将它们从最相关到最不相关重新排序之前,使用每个查询文档计算相关性分数,可确保仅将最相关的文档作为上下文传递给LLM。
测试结果显示,新的重新排名模型pinecone-rerank-v0将搜索准确率提高了60%,与BEIR(评估信息检索模型零样本学习能力的基准)基准测试中的行业领先模型相比,平均提高了9%。
而Cohere的重新排名模型cohere-rerank-v3.5在Pinecone的基础设施上完全托管,平衡了各种企业搜索应用程序的性能和延迟。平台集成的一种流行的开源多语言重新排名模型bge-reranker-v2-m3,可以用于平衡延迟和性能。
虽然集成推理可以帮助加速用户的AI开发,但Pinecone还支持来自任何嵌入模型或模型提供商的高达20k维的密集嵌入。
密集嵌入和检索在理解非结构化数据的含义和语义方面表现出色,使用户能够按照自己的思维方式进行搜索(如语义搜索)。但是,当查询搜索某些实体或专有名词(如关键字或词法搜索)时,单独的密集检索可能会导致次优结果。通过支持稀疏和密集嵌入和检索,用户可以获得高召回率和相关性的优势。
Pinecone开发了专有的稀疏向量嵌入模型pinecone-sparse-english-v0,用于处理词汇搜索和稀疏向量索引,这种优化使得在处理大规模稀疏数据时,能够更高效地进行检索,提升了整体性能。
使用稀疏嵌入模型pinecone-sparse-english-v0提高了基于关键字的查询的性能,与TREC(国际性评测活动)上的BM25(一种用于信息检索和文本挖掘的算法)相比,NDCG@10(评估推荐系统或搜索算法的性能,特别是在排序质量方面的指标)提高了44%,平均提高了23%。
多语言密集嵌入模型(multilingual-e5-large)则平衡了延迟和质量,适用于杂乱的数据,并且适用于预期返回中等长度文本段落的短查询。
另外,Pinecone采用了级联搜索方法,结合密集和稀疏向量搜索的结果,并通过重新排序进行优化。这种方法不仅提高了搜索结果的准确性,还使得关键字搜索和语义搜索能够更好地协同工作。
另外在引入推理功能的同时,Pinecone还加强了安全功能,包括基于角色的访问控制(RBAC)、客户管理的加密密钥、审计日志以及AWS PrivateLink私有端点的普遍可用性,确保了数据的安全性和隐私保护。
在向量数据库中集成推理功能,至少有以下好处:
简化了集成。Pinecone集成推理功能提供了一站式的解决方案,从数据存储到推理都可以在一个平台上完成。例如,一个小型的机器学习团队在开发一个文本分类应用时,只需要专注于Pinecone平台上的数据准备和推理算法的调整,而不用花费精力在系统集成上。
提高了效率。Pinecone集成推理功能后,可以在向量数据库环境中直接进行推理操作。例如,在自然语言处理场景中,当用户输入一个查询语句时,它能够快速地基于存储的向量数据进行推理,实时返回最相关的答案,而不需要将数据传输到外部的推理引擎,从而减少了数据传输和处理的延迟,提高了推理的响应速度。
减少系统开销,消除与跨网络通信相关的安全风险。传统的方式可能需要在多个不同的系统之间进行数据交互和协调,以完成存储和推理的任务。集成推理功能后,减少了系统之间的协调成本,将存储和推理紧密结合在一个平台上,节省了资源开销,使整个流程更加高效。
Serverless,延伸到了向量数据库
传统上,企业在自主管理的服务器上部署数据库系统,并且必须确保服务器配置在数据库需求增加或者减少时得到更新和良好维护。
相比之下,无服务器数据库(Serverless数据库)在完全托管的云基础架构上运行,其底层数据库服务器和IT基础设施由第三方云提供商进行管理,并保证随着工作负载的变化而弹性扩展。客户可以获得无服务器体验,包括节省成本、高弹性、零基础设施管理、增强的安全性、运营敏捷性和提高运营效率等。
常用的无服务器数据库可以是关系数据库或NoSQL数据库。这些数据库提供固有的可用性、容错能力和可靠性,用户只需为实际的数据库使用付费。服务等级协议(SLA)管理性能能力,然用户放心地专注于数据收集和分析,而不是数据库基础设施。
2024向量数据库将无服务器化作为一个主流发展方面,出现不少新产品。Databricks Vector Search就是一个无缝集成在Data Intelligence Platform中的无服务器向量数据库。
与其他数据库不同,Databricks Vector Search支持从源到索引的自动数据同步,从而消除了复杂且昂贵的维护,同时利用了组织已经构建的相同安全和数据治理工具。凭借其无服务器设计,Databricks Vector Search可以轻松扩展,以支持每秒数十亿次嵌入和数千次实时查询。在多达100万个OpenAI嵌入数据集上,它的性能比其他领先的向量数据库快5倍。
Databricks Vector Search通过在引入、修改或删除新数据时自动更新相应的向量索引来实时同步源数据。在后台,Databricks会执行嵌入向量的生成和管理,并自动管理故障、处理重试、优化吞吐量,并执行自动批量大小调整和自动缩放,而无需任何干预。
云原生数据库的代表在云中扩展的两个方向:一是提供无服务器向量数据库;另一个是与尽可能多的云服务商合作,例如Pinecone先后的在AWS、Google Cloud和 Microsoft Azure上将其向量数据库作为无服务器产品提供。
作为Pinecone Serverless托管云服务商,AWS数据显示自推以来,Pinecone Serverless已赢得了包括Notion、CS Disco、Gong和其他100多家公司。AWS认为,多租户计算层按需为数千名用户提供强大而高效的检索,实现了开发人员无需预置、管理甚至考虑基础设施的无服务器体验,以及基于使用量的计费,使公司只需为他们使用的内容付费。
Pinecone无服务器架构的主要优势包括:
提高弹性。Serverless架构简化了水平扩展,因为用户无需进行容量规划即可弹性扩展以满足需求。
节省成本。通过采用Pinecone无服务器,与传统的向量数据库架构相比,像Gong这样的客户将成本降低了10倍或更多。
提升运营效率。Pinecone无服务器消除了预置、部署、更新、监控或以其他方式管理服务器的需要,因为这些任务由Pinecone处理。
为了使Pinecone成为开发人员最爱的易用性,Pinecone Serverless正在推出与GenAI技术堆栈中其他一流解决方案的集成,包括Anthropic、Anyscale、Cohere、Confluent、Langchain、Pulumi、Vercel等。
Hybrid Search为向量数据库设定了新方向
AI模型的快速发展,不管是Meta的Llama-3、OpenAI的GPT-4、Google的Gemini和Databricks的DBRX,还是百度的文心一言、阿里巴巴的通义千问、腾讯混元、华为盘古、科大讯飞的星火认知等,正在引领智能的新时代。有远见的企业正在投资为AI应用构建的强大检索系统。
混合搜索涉及将向量搜索和文本搜索以及元数据筛选合并到单个查询中。通过混合搜索为下一代搜索和AI应用程序铺平了道路。用户现在可以利用混合搜索来组合向量、文本、地理空间和结构化搜索,以检索和排名最相关的结果。
搜索和分析数据库供应商Rockset在2024年年中推出其Rockset Hybrid Search版本,被认为是为向量数据库设定了新方向。通过此版本,Rockset为下一代搜索和AI应用铺平了道路。用户现在可以利用混合搜索来组合向量、文本、地理空间和结构化搜索,以检索和排名最相关的结果。
构建搜索和AI应用的工程师需要不断整合新的信号、模型、索引和排名算法,以提高相关性。Rockset使用户能够在不影响实时搜索应用的情况下重新索引向量。用户可以灵活地为任何类型的数据编制索引,并使用SQL应用排名和评分。这种灵活性使客户能够更快地构建和迭代搜索和AI应用,以推动最相关的体验。
Rockset混合搜索新功能的好处有:包括BM25和倒数秩融合(RRF)在内的排名算法,用于构建混合搜索应用程序;用于检索增强生成(RAG)应用的多租户设计;新的搜索设计,使用压缩位图和覆盖索引,以实现更快的大规模性能。
数据库企业SingleStore随后在Snowflake Data Cloud上将混合向量和全文搜索功能作为Snowflake原生应用推出。通过利用Snowflake Data Cloud,SingleStore与Snowflake一起帮助组织存储和查询向量数据以及其他类型的数据,从而简化复杂工作。客户将能够使用RAG在存储在SingleStore中的向量嵌入上构建企业生成式AI应用程序。
传统上,实施混合搜索的组织被迫维护两个独立的系统——一个用于语义搜索,另一个用于关键字搜索——导致重复的基础设施、复杂的集成和增加的运营成本。开源向量数据库Milvus在2024年年底在其2.5版本中,通过一种创新的方法 ——Sparse-BM25技术,将这两种功能统一在一个高性能平台中,处理查询的速度比传统解决方案快30倍,标志着各种规模的组织都可以使用复杂的AI驱动的搜索的重大进步。
与开源向量数据库不同,星环科技在其自主研发的企业级向量数据库Transwarp Scope,支持混合搜索,能够高效处理多种数据类型,提供强大的数据检索和分析能力。
未来所有搜索都将是混合搜索。相似性搜索在域感知方面存在局限性,需要将向量搜索结果与文本搜索、地理空间搜索和结构化搜索相结合,以提供必要的上下文。对混合搜索的支持需要专为快速检索而设计的一流索引技术,这是不同企业技术创新的核心点。
其实,混合查询是一种在搜索过程中同时结合语义搜索(Semantic search)和关键词搜索(keyword search)的方法。在这种查询中,搜索引擎会同时考虑文本的语义信息以及关键词的匹配程度,以提供更相关的搜索结果。
具体来说,在混合查询中,语义搜索通常使用文本的语义信息来计算相似度,例如使用文本嵌入向量(Dense embeddings)来表示文本的语义信息。这种方法可以捕获文本之间的语义相似度,即使查询文本与文档之间没有直接的关键词匹配,也能够找到相关的结果。但是,对于领域外的查询(Out-of-domain queries),语义搜索的结果可能不够准确或不够相关。
为了提高搜索结果的相关性,混合查询还结合了关键词搜索的结果。关键词搜索通常根据关键词的匹配程度来进行检索,如使用词频-逆文档频率(TF-IDF)等方法。这种方法可以捕获文本中关键词的匹配程度,即使文本之间的语义相似度较低,但如果它们包含相同的关键词,则可能被认为是相关的。
通过在查询过程中同时使用语义搜索和关键词搜索,混合查询可以更全面地考虑文本的相关性,从而提供更相关的搜索结果。这种方法特别适用于处理领域外查询或文本之间语义相似度较低的情况,可以改善搜索结果的质量和相关性。
向量数据库从开发转移到生产,性能必须跟得上
随着人工智能技术的快速发展,向量数据库在处理大规模非结构化数据方面的重要性日益凸显。市场对向量数据库的性能要求不断提高,主要表现在延迟、吞吐量、向量嵌入数量等关键指标上。
对于向量数据库,延迟衡量的是从发起查询到收到查询结果所需的时间。低延迟意味着系统能够更快地返回查询结果,从而提高用户体验。目前在关键性应用如客户推荐系统中,向量数据库很多以亚秒级延迟运行查询,运行时间从1秒到500毫秒不等。
吞吐量则衡量数据库在单位时间内处理查询的能力,高吞吐量意味着系统能够在相同时间内处理更多的查询,从而提高整体性能。向量数据库通常每秒提供50到100个查询。目前有越来越多的在线服务应用场景,希望每秒有1万个查询,一些超级流行的应用拥有数亿用户,可能希望每秒1万个到3万个,甚至更多。
在向量嵌入数量上,早期一些简单的应用场景下可能只需要处理数千个向量嵌入。在LLM部署中,可以使用向量数据库来存储LLM训练产生的向量嵌入。通过存储代表LLM广泛训练的潜在数十亿个向量嵌入,向量数据库执行最重要的相似性搜索,找到用户的提示(他或她提出的问题)和特定向量嵌入之间的最佳匹配。
随着公司将GenAI应用程序从开发转移到生产,其向量数据库的规模正在增加。一年前,许多向量数据库可能有100万个向量嵌入。但现在,向量数据库存储1亿到数10亿个向量的情况变得越来越普遍。
在性能方面,向量数据库企业已经展开竞赛。Zilliz最近更新了其向量数据,将吞吐量和延迟提高了10倍,延迟降低到越来的1/10,更新三种新的搜索算法将搜索准确率从70%提高到95%。Zilliz向量数据库目前最大支持1000亿个向量。另外,新的AutoIndexer,无需手动配置数据库即可在每个数据集上实现最佳性能。
Zilliz新向量数据库可以与Nvidia GPU搭配使用时,向量数据库还可以在GPU和CPU的混合上运行,据说是第一次。
通过添加新的搜索算法,Zilliz Cloud客户将能够更多地利用所有这些高维数据。Zilliz Cloud现在支持四种搜索——密集向量搜索、稀疏向量搜索、标量搜索和多向量搜索,将搜索结果的准确性提升到另一个层次,从大约70%到80%的准确率提高到95%甚至更高。
开源的向量数据库Weaviate性能也在不断改进,可以将ML模型中的数据对象和向量嵌入无缝扩展到数十亿个数据对象。Weaviate可以在短短几毫秒内从数百万个对象中快速搜索最近的邻居。从原型到大规模生产,Weaviate强调可扩展性、复制和安全性。除了快速向量搜索外,Weaviate还提供推荐、摘要和神经搜索框架集成。
2024年2月底,百度智能云推出了一款专用的向量数据库VectorDB 1.0。相比同类开源产品,VDB 1.0的QPS在不同线程下平均时延最低,性能提升40~60%。
早在2023年,移动云便联合中国信通院发布了国内首个向量数据库技术标准。同年11月,移动云向量数据库服务通过“向量数据库基础能力”测试。目前,移动云向量数据库服务可支持高达百亿级的向量检索规模,将延迟控制在2秒内,同时极致响应时间低至毫秒级,实现用户写入即可查询的便捷操作,显著优化用户检索体验。
性能优化方面,移动云提供HNSW(高召回率)与LSH(低延迟)等多种向量索引算法,满足AI业务多场景性能检索需求,助力业务方在多维信息复合搜索中灵活决策。
随着我们进入AI时代,向量数据库在加速参与和增长发展方面变得越来越重要。向量数据库通过提供个性化服务和提高数据管理效率来增强客户交互,从而降低运营成本。不过AI应用的激增将为大型企业释放关键商机,进一步需要能够快速扩展和云可移植性的现代分布式SQL数据库。随着分布式SQL和向量数据库融合,有可能催化数据库行业的下一次变革性转变。
来源:数据猿