召回场景
场景架构

向量检索算法KScaNN
KScaNN是基于倒排索引,结合鲲鹏架构深度优化索引布局、算法流程和计算流程,充分挖掘芯片潜力形成的向量检索算法。基于开源ScaNN算法鲲鹏提供5类优化:查询感知优化、PQ距离算法优化、重排算法优化、使用高效的编译器内建指令&neon指令、系统优化(包括线程数调优、预取调优、Batch Size调优等)。KScaNN实现对接Milvus向量数据库使用。
向量检索算法KBest
KBest是一种基于NSG(Navigating Spreading-out Graph)的高性能近邻搜索算法,用于多维向量近似最近邻搜索。在NSG算法的基础上,KBest进一步优化了近邻搜索的性能和精度。KBest搜索前通过预取参数优化得到当前图结构的最优预取参数,搜索过程中利用图索引预存的入口点快速逼近query,获取query的近邻,同时使用SIMD指令集加速距离计算,搜索结束时进行全/半精度重排以提高排序精度,返回K近邻。相较于开源ANNS算法,KBest可以取得可观的性能提升。KBest算法搜索原理如图2所示。KBest实现对接Milvus向量数据库使用。
基于鲲鹏提供5类优化:高性能上层算法、集成多种量化器,可根据实际场景选择使用、使用SIMD指令集优化各平台上的使用性能、搜索结束时进行全/半精度重排以提高排序精度、搜索前通过预取参数优化得到当前图结构的最优预取参数。
向量检索加速组件KVecturbo
KVecturbo是鲲鹏自研的向量检索加速组件,可对接openGauss向量数据库使用。KVecturbo通过将高维向量量化压缩,快速获取query的近邻,同时使用SIMD指令集加速距离计算,用于多维向量最近邻搜索。
基于鲲鹏提供3类优化:采用鲲鹏亲和的向量化指令、路径压缩、低比特量化。
向量检索检索算子库KRL
KRL(Kunpeng Retrieval Library )检索算子库是基于鲲鹏平台优化的用于加速向量检索的算子库,KRL可通过替换算子的形式对faiss原生的HNSW、PQFS、IVFPQ和IVFPQFS等算法进行加速。
基于鲲鹏提供优化:向量化指令加速,调整内存排布以提升缓存命中,低精度量化+高精度重排等技术。
KNewPfordelta库
KNewPfordelta (Kunpeng New PForDelta )鲲鹏New PForDelta算法,是鲲鹏构建的高效的召回倒排解压缩算法。通过向量指令等方法优化了倒排解压缩的性能。
基于鲲鹏提供优化:采用鲲鹏硬件的向量化指令等技术。
