Class Lucene102HnswBinaryQuantizedVectorsFormat

java.lang.Object
org.apache.lucene.codecs.KnnVectorsFormat
org.apache.lucene.codecs.lucene102.Lucene102HnswBinaryQuantizedVectorsFormat
All Implemented Interfaces:
NamedSPILoader.NamedSPI

public class Lucene102HnswBinaryQuantizedVectorsFormat extends KnnVectorsFormat
A vectors format that uses HNSW graph to store and search for vectors. But vectors are binary quantized using Lucene102BinaryQuantizedVectorsFormat before being stored in the graph.
  • Field Details

  • Constructor Details

    • Lucene102HnswBinaryQuantizedVectorsFormat

      public Lucene102HnswBinaryQuantizedVectorsFormat()
      Constructs a format using default graph construction parameters
    • Lucene102HnswBinaryQuantizedVectorsFormat

      public Lucene102HnswBinaryQuantizedVectorsFormat(int maxConn, int beamWidth)
      Constructs a format using the given graph construction parameters.
      Parameters:
      maxConn - the maximum number of connections to a node in the HNSW graph
      beamWidth - the size of the queue maintained during graph construction.
    • Lucene102HnswBinaryQuantizedVectorsFormat

      public Lucene102HnswBinaryQuantizedVectorsFormat(int maxConn, int beamWidth, int numMergeWorkers, ExecutorService mergeExec)
      Constructs a format using the given graph construction parameters and scalar quantization.
      Parameters:
      maxConn - the maximum number of connections to a node in the HNSW graph
      beamWidth - the size of the queue maintained during graph construction.
      numMergeWorkers - number of workers (threads) that will be used when doing merge. If larger than 1, a non-null ExecutorService must be passed as mergeExec
      mergeExec - the ExecutorService that will be used by ALL vector writers that are generated by this format to do the merge
  • Method Details