Approximate Retrieval

Approximate Retrieval Algorithms

Algorithm (API Reference)

Application Scenario

Operators to Be Generated

Example

AscendIndexIVFSP

  • Feature type: FP32
  • Feature dimension: 64, 128, 256, 512, or 768
  • Distance type: L2
  • Calculation precision: medium
  • Device memory usage: low (compressed features)
  • Application scenario: approximate retrieval in a large-scale database (hundreds of millions of records) with high performance requirements and tolerance to precision loss
  • It is supported only by the Atlas inference product.
  • IVFSP service operator
  • IVFSP AICPU operator
  • IVFSP training operator (used only for codebook training)

For details, see IVFSP.

Link

AscendIndexIVFSQ

  • Feature type: FP32
  • Feature dimension: 64, 128, 256, 384, or 512
  • Distance type: L2 or IP
  • Calculation precision: medium
  • Device memory usage: low (quantized to int8)
  • Application scenario: IVFSQ used as a performance-precision regulator in scenarios with high requirements on performance and tolerance to precision loss
  • IVFSQ8
  • AICPU
  • FlatAT (The FlatAT operator needs to be generated only when useKmeansPP is set to true.)

Link

AscendIndexIVFSQT

  • Feature type: FP32
  • Feature dimension: 256
  • Distance type: IP
  • Calculation precision: medium
  • Device memory usage: low (quantization and dimension reduction)
  • Application scenario: AscendIndexIVFSQT is an IVFSQ algorithm for three-level retrieval and contains a dimension reduction algorithm. It is applicable to approximate retrieval in a large-scale database (hundreds of millions of records) with high performance requirements and tolerance to precision loss.

Link

AscendIndexBinaryFlat

  • Feature type: uint8 binarization features
  • Feature dimension: 256, 512, or 1024
  • Distance type: Hamming and IP
  • Calculation precision: high
  • Device memory usage: low
  • Application scenario: The AscendIndexBinaryFlat class inherits from the Faiss IndexBinary class and is used for binarized feature retrieval. It is used in scenarios requiring low memory usage and high performance.
  • It is supported only by the Atlas inference product.

Link

AscendIndexVStar

  • Feature type: FP32
  • Feature dimension: 128, 256, 512, or 1024
  • Distance type: L2
  • Calculation precision: medium
  • Device memory usage: low (compressed features)
  • Application scenario: approximate retrieval in a large-scale database (tens of millions of records) with high performance requirements and tolerance to precision loss
  • It is supported only by the Atlas inference product.
  • VStar service operator
  • VStar AICPU Operator
  • VStar training operator (used only for codebook training)

    For details, see VSTAR.

Link

AscendIndexGreat

  • Feature type: FP32
  • Feature dimension: 128, 256, 512, or 1024
  • Distance type: L2
  • Calculation precision: medium
  • Device memory usage: low (compressed features)
  • Application scenario: approximate retrieval in a large-scale database (tens of millions of records) with high performance requirements and tolerance to precision loss
  • It is supported only by the Atlas inference product.

(An operator needs to be generated only when mode is set to AKMode.)

  • VStar service operator
  • VStar AICPU Operator
  • VStar training operator (used only for codebook training)

For details, see VSTAR.

Link

AscendIndexIVFFlat

  • Feature type: FP32
  • Feature dimension: 128
  • Distance type: IP
  • Calculation precision: medium
  • Device memory usage: low (compressed features)
  • Application scenario: approximate retrieval in a large-scale database (hundreds of millions of records) with high performance requirements and tolerance to precision loss
  • It is supported by the Atlas A2 inference products and Atlas A3 inference products.

Link