QGraph(Quantized Graph)配置

本文介绍QGraph算法Build参数与Search参数配置。

QGraph索引Build参数

参数名

类型

默认值

说明

proxima.hnsw.builder.max_neighbor_count

uint32

100

指定图中节点最大邻居数。该值越大,代表图的连通性越好,相应的构图成本和索引size也会增加。

proxima.hnsw.builder.efconstruction

uint32

500

指控制图构建过程中近邻扫描区域大小,该值越大,离线构图质量越好,索引构建越慢。建议初始从400配置

proxima.hnsw.builder.thread_count

uint32

0

构建时开启线程数量,设置为0时为cpu核数

proxima.qgraph.builder.quantizer_class

string

量化器,可以选择Int4QuantizerConverter,Int8QuantizerConverter,EntropyInt16Quantizer。一般整数位数越小,索引越小,性能越高,召回率越低,其中int16量化由于底层cpu指令集的问题,性能和召回率和未量化时几乎相同。

QGraph索引Search参数

参数名

类型

默认值

说明

proxima.hnsw.searcher.ef

uint32

500

用于控制在线检索时考察的子图范围大小。该值越大,召回越高,性能越差,建议取值[100,1000]。

proxima.hnsw.searcher.max_scan_ratio

float

用于控制在线检索时扫描点的比例,该值越大召回越高,性能越差。

proxima.hnsw.searcher.brute_force_threshold

uint32

用于控制在线检索时最少扫描的点的个数,如果该数值大于单分片的文档个数,查询退化为暴力检索。