这波优化挺实在,内存省了大半还提速,像给老车换上新引擎。平时跑推荐系统,数据量一大就卡顿,现在用HnswLvq这种方案,查得快占得少,落地起来也省心
这波优化挺实在,内存省了大半还提速,像给老车换上新引擎。平时跑推荐系统,数据量一大就卡顿,现在用HnswLvq这种方案,查得快占得少,落地起来也省心

问AI全文概述
Infinity v0.6.0通过三大改进(HnswLvq、HnswRabitq和LSG)显著提升了HNSW索引的性能。这些改进不仅大幅减少了内存占用,还提高了查询效率,适用于不同精度需求的场景。
HNSW索引的基础介绍
原始HNSW是一种高效的图索引算法,由原始向量数据和跳表与邻接表构成的图结构组成。它在RAG和LLM Memory中广泛应用,但存在内存占用大和精度瓶颈的问题。
方案一:HnswLvq
HnswLvq通过LVQ量化器将32位浮点数压缩为8位整数,减少内存占用至四分之一,并保持较高的查询性能。该方案适合大多数场景,推荐作为主力索引使用。
方案二:HnswRabitq
HnswRabitq采用二进制标量量化方法,进一步降低内存占用,但在某些数据集上可能导致精度损失。该方案适合对量化误差不敏感的数据集,能显著降低内存开销并保持较好的查询性能。
方案三:LSG构图策略
LSG通过局部缩放图策略优化HNSW索引,在不同精度要求下均表现出优异的查询性能。该策略可与量化方法结合使用,提升图索引的质量,但会增加一定的构建时间。
索引性能评估
通过sift、gist和msmarco等数据集测试,HnswRabitqLsg在大多数情况下表现出最佳综合性能,实现了90%的内存节省和5倍的查询性能提升。
