GPU提速40倍!AI搜索突飞猛进,跨境电商速度战!
人工智能驱动的搜索对高性能索引、低延迟检索以及无缝扩展性提出了极高的要求。英伟达(NVIDIA)的cuVS,为开发者和数据科学家带来了GPU加速的向量搜索和聚类能力,从而能够更快地构建索引,进行实时更新,并为检索增强生成(RAG)、推荐系统、探索性数据分析和异常检测等应用提供高效的大规模搜索。
最新的cuVS版本引入了优化的索引算法,扩展了语言支持,并与Meta FAISS、谷歌云(Google Cloud)的AlloyDB和Vertex AI,以及Milvus、Apache Lucene、Elasticsearch、OpenSearch、Weaviate、Kinetica等英伟达合作伙伴进行了更深入的集成。无论是在现有向量数据库中增强搜索功能,还是构建定制的人工智能驱动检索系统,cuVS都能提供所需的速度、灵活性和易集成性,从而将性能提升到新的水平。
以下将介绍cuVS的最新特性,以及它们如何大规模地释放人工智能驱动的搜索能力,同时还会提供新的基准测试。
在GPU上更快地构建索引
英伟达cuVS团队一直致力于提供应用最广泛的索引算法。现在,DiskANN,特别是其基于图的算法Vamana,可以在GPU上构建,与CPU相比,速度提升了40倍以上。英伟达正与微软合作,将超大规模的DiskANN/Vamana算法引入GPU,以解决重要的客户使用案例。新媒网跨境了解到,这种合作将进一步推动GPU在向量搜索领域的应用。
为了让所有人都能使用加速向量搜索,英伟达还在与谷歌云和甲骨文(Oracle)等超大规模事务数据库合作。谷歌云的AlloyDB正致力于为HNSW带来最先进的索引构建性能,与CPU上的pgvector相比,速度提升了9倍。甲骨文已在Oracle Database 23ai的AI Vector Search中对cuVS集成进行了原型设计,以帮助加速HNSW索引的构建,并实现了5倍的端到端速度提升。
Weaviate最近集成了cuVS,以优化GPU上的向量搜索。初步测试表明,通过在GPU上使用GPU原生向量索引方法CAGRA,这种集成将索引构建时间缩短了8倍。这为快速的HNSW驱动搜索提供了无缝的CPU部署。
英伟达一直在与SearchScale密切合作,将cuVS集成到Apache Lucene中。Apache Lucene是一个广泛使用的开源软件库,用于全文搜索,集成cuVS后,可以使GPU上的索引构建速度提高40倍。与Lucene一同而来的还有Apache Solr,与CPU相比,端到端索引构建速度提升了6倍。
英伟达cuVS团队期待着OpenSearch 3.0的发布,它将使用cuVS进行GPU加速的索引构建,并将展示高达9.4倍的索引构建速度提升。为了完善Lucene的故事,一个Elasticsearch插件将把cuVS的功能带到整个生态系统中。
存储合作伙伴也纷纷加入,DDN通过使用CAGRA,将Milvus中的AI工作负载加速了22倍的索引构建速度。cuVS和NeMo retriever多模态PDF提取管道正在集成到DDN Infinia中,以处理PB级数据,从而创建一个端到端的、一键式高性能RAG管道。
CPU和GPU的互操作性
在许多RAG工作流程中,LLM推理的延迟会超过向量数据库查询的延迟。然而,在这种工作流程中,数据量正在迅速增加,导致索引构建时间延长,成本增加。在这种规模下,理想的解决方案是使用GPU进行索引构建,使用CPU进行索引搜索。
cuVS提供在GPU和CPU之间可互操作的索引,使AI系统能够使用现有的CPU基础设施进行搜索,同时利用现代GPU基础设施进行索引构建。索引互操作性为AI应用提供了更快的索引构建时间,并可能降低成本,同时保留了在CPU驱动的向量数据库上进行向量搜索的能力。
图1. 使用NVIDIA cuVS构建的索引可以在GPU或CPU搜索基础设施上使用
这种CPU和GPU之间的索引互操作性是cuVS最受欢迎的功能之一。虽然该库主要针对GPU加速功能,但一种趋势正在出现,即在GPU上构建索引,并将其转换为兼容的格式,以便在CPU上使用算法进行搜索。
例如,cuVS可以在GPU上更快地构建CAGRA图,并将其转换为适当的HNSW图,以便在CPU上进行搜索。cuVS为在GPU上构建流行的DiskANN/Vamana索引,并转换为与其CPU对应版本兼容的格式以进行搜索,提供了类似的支持。
为了实现更直接和全面的CPU和GPU互操作性,建议通过Meta FAISS库利用cuVS索引。FAISS率先在GPU上实现了向量搜索,现在该库正在使用cuVS将CPU上的索引构建速度提高12倍,同时将其经典的GPU索引加速8倍或更多。FAISS最近发布了启用了cuVS支持的新的Python软件包。
降低精度、量化和改进的语言支持
cuVS最近添加了Rust、Go和Java API,使加速向量搜索的可用性更加广泛。这些新的API也可以从GitHub上提供的相同代码库构建。该团队将继续改进这些API,添加更多的索引类型和高级功能,如聚类和预处理。
二值量化和标量量化是常见的预处理技术,分别可以将向量的占用空间缩小4倍和32倍(从32位浮点类型)。cuVS支持这两种量化技术,与CPU相比,分别实现了4倍和20倍的性能提升。
在专用向量数据库方面,Milvus是最早采用cuVS的数据库之一。他们将继续通过新功能(如新的CAGRA功能,可以直接在二值量化向量上构建图)来改进对GPU的支持。
加速高吞吐量搜索
cuVS现在提供了一流的动态批处理API,可以将GPU上高容量在线搜索的延迟最多提高10倍。借助新的CAGRA持久搜索功能,高容量在线搜索吞吐量(如交易和广告服务管道)可以提高8倍或更多,同时保持较低的单次延迟。微软广告公司正在探索将cuVS CAGRA搜索算法集成到其系统中。
由于对原生GPU加速的基于图的CAGRA算法的预过滤功能进行了改进,即使大多数向量(例如99%)已从搜索结果中排除,它现在也能实现高召回率。
除了作为CAGRA算法中的核心计算之外,kNN图还广泛用于数据挖掘。它们是用于降低维度和用于数据分析的聚类技术中的核心构建块。cuVS中nn-descent最近邻算法的最新更新使kNN图能够以核外方式构建。这意味着你的数据集只需要限制在系统中的RAM内存量中。它支持大规模的迭代式近实时探索性数据分析工作流程,这对于CPU来说是难以处理的。
你可以使用RAPIDS cuML中的UMAP算法亲自体验这些加速,Adoreboard和Studentpulse等公司都在积极使用该算法。主题建模是流形学习和聚类技术的常见用途,BERTopic库使大规模工作流程在GPU上易于处理。单细胞基因组分析是另一个领域,rapids-singlecell利用cuVS和cuML来实现突破性的性能。新媒网跨境认为,这些技术的进步将进一步推动人工智能在各个领域的应用。
开始使用NVIDIA cuVS
英伟达cuVS不断重新定义GPU加速的向量搜索,提供的创新优化了性能,降低了成本,并简化了AI应用开发。凭借新功能、扩展的语言支持以及在AI生态系统中的更深入集成,cuVS使组织能够以前所未有的方式扩展其搜索和检索工作负载。首先使用rapidsai / cuvs GitHub库,包括端到端示例和自动调整指南。你还可以使用cuVS Bench来基准测试和比较GPU和CPU环境中的ANN搜索实现。
cuVS旨在用作独立库,或通过FAISS、Milvus、Weaviate、Lucene、Kinetica等集成使用。
请继续关注未来的发展,英伟达将继续推动AI驱动搜索的前沿。
新媒网(公号: 新媒网跨境发布),是一个专业的跨境电商、游戏、支付、贸易和广告社区平台,为百万跨境人传递最新的海外淘金精准资讯情报。

评论(0)