Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

FP32(基线)

fp32 把每个坐标按 32 位 IEEE-754 浮点存储——与输入向量布局一致。它是 VSAG 中唯一完全无损的选项,作为所有其他量化器对比的参考基线。

实现:src/quantization/fp32_quantizer.cpp,参数文件 fp32_quantizer_parameter.cpp

何时使用

  • 重排 / 精确存储。use_reorder: true 时, precise_quantization_type: "fp32" 是默认的精确存储;图上游走使用便宜 的基础量化器,对 top-K 候选再用 fp32 精确重打分。
  • 参考 / 基准真值。base_quantization_type: "fp32" 构建索引能拿 到该索引类型可达的最高召回,是其他量化器对比的标准基线 (docs/docs/en/src/resources/eval.md)。
  • 小规模数据集,内存不是瓶颈时。
  • BruteForce 原始向量取回。 仅当 base_quantization_typefp32 且度量允许时,SUPPORT_GET_RAW_VECTOR_BY_IDS 才会被广播 (src/index/brute_force.cpp)。

内存代价

仅码本身的开销为每向量 4 × dim 字节。当 fp32 作为某个基础量化器之上的 精确存储时,每向量代价为 base 码 + 4 × dim

参数

fp32 没有量化器专属的 JSON 参数。

{
    "dtype": "float32",
    "metric_type": "l2",
    "dim": 128,
    "index_param": {
        "base_quantization_type": "fp32",
        "max_degree": 32,
        "ef_construction": 300
    }
}

训练

不需要。fp32 设置 NEED_TRAIN

度量兼容性

l2ipcosine——全部支持,无特殊处理。

相关页面