AscendIndexIVFSQT

API Definition

AscendIndexIVFSQT(int dimIn, int dimOut, int nlist, faiss::ScalarQuantizer::QuantizerType qtype = ScalarQuantizer::QuantizerType::QT_8bit, faiss::MetricType metric = MetricType::METRIC_INNER_PRODUCT, AscendIndexIVFSQTConfig config = AscendIndexIVFSQTConfig())

Function

Constructor of AscendIndexIVFSQT, which is used to generate AscendIndexIVFSQT. The NPU resources are set based on the value configured in config.

Input

int dimIn: dimensions of a group of original feature vectors managed by AscendIndexIVFSQT.

int dimOut: dimensions of a group of dimension-reduced feature vectors managed by AscendIndexIVFSQT.

int nlist: number of cluster centroids, which corresponds to coarse_centroid_num in the operator generation script.

faiss::ScalarQuantizer::QuantizerType qtype: quantizer type of AscendIndexIVFSQT.

faiss::MetricType metric: distance measurement type used by AscendIndex when it retrieves feature vector similarity.

AscendIndexIVFSQTConfig config: resource configuration on the NPU.

Output

N/A

Return Value

N/A

Restrictions

  • dimIn ∈ {256}
  • dimOut ∈ {64}
  • nlist ∈ {1024, 2048, 4096, 8192, 16384, 32768}
  • qtype = ScalarQuantizer::QuantizerType::QT_8bit (Currently, only ScalarQuantizer::QuantizerType::QT_8bit is supported.)
  • metric = faiss::MetricType::METRIC_INNER_PRODUCT (Currently, only faiss::MetricType::METRIC_INNER_PRODUCT is supported.)