Class Lucene90HnswGraphBuilder

java.lang.Object
org.apache.lucene.backward_codecs.lucene90.Lucene90HnswGraphBuilder

public final class Lucene90HnswGraphBuilder extends Object
Builder for HNSW graph. See Lucene90OnHeapHnswGraph for a gloss on the algorithm and the meaning of the hyperparameters.

This class is preserved here only for tests.

  • Field Details

  • Constructor Details

    • Lucene90HnswGraphBuilder

      public Lucene90HnswGraphBuilder(RandomAccessVectorValues.Floats vectors, VectorSimilarityFunction similarityFunction, int maxConn, int beamWidth, long seed) throws IOException
      Reads all the vectors from vector values, builds a graph connecting them by their dense ordinals, using the given hyperparameter settings, and returns the resulting graph.
      Parameters:
      vectors - the vectors whose relations are represented by the graph - must provide a different view over those vectors than the one used to add via addGraphNode.
      maxConn - the number of connections to make when adding a new graph node; roughly speaking the graph fanout.
      beamWidth - the size of the beam search to use when finding nearest neighbors.
      seed - the seed for a random number generator used during graph construction. Provide this to ensure repeatable construction.
      Throws:
      IOException
  • Method Details