Class FloatVectorValues

java.lang.Object
org.apache.lucene.index.KnnVectorValues
org.apache.lucene.index.FloatVectorValues
Direct Known Subclasses:
OffHeapFloatVectorValues

public abstract class FloatVectorValues extends KnnVectorValues
This class provides access to per-document floating point vector values indexed as KnnFloatVectorField.
WARNING: This API is experimental and might change in incompatible ways in the next release.
  • Constructor Details

    • FloatVectorValues

      protected FloatVectorValues()
      Sole constructor
  • Method Details

    • vectorValue

      public abstract float[] vectorValue(int ord) throws IOException
      Return the vector value for the given vector ordinal which must be in [0, size() - 1], otherwise IndexOutOfBoundsException is thrown. The returned array may be shared across calls.
      Returns:
      the vector value
      Throws:
      IOException
    • copy

      public abstract FloatVectorValues copy() throws IOException
      Description copied from class: KnnVectorValues
      Creates a new copy of this KnnVectorValues. This is helpful when you need to access different values at once, to avoid overwriting the underlying vector returned.
      Specified by:
      copy in class KnnVectorValues
      Throws:
      IOException
    • checkField

      public static void checkField(LeafReader in, String field)
      Checks the Vector Encoding of a field
      Throws:
      IllegalStateException - if field has vectors, but using a different encoding
      WARNING: This API is experimental and might change in incompatible ways in the next release.
      NOTE: This API is for internal purposes only and might change in incompatible ways in the next release.
    • scorer

      public VectorScorer scorer(float[] target) throws IOException
      Return a VectorScorer for the given query vector and the current FloatVectorValues.
      Parameters:
      target - the query vector
      Returns:
      a VectorScorer instance or null
      Throws:
      IOException
    • getEncoding

      public VectorEncoding getEncoding()
      Description copied from class: KnnVectorValues
      The vector encoding of these values.
      Specified by:
      getEncoding in class KnnVectorValues
    • fromFloats

      public static FloatVectorValues fromFloats(List<float[]> vectors, int dim)
      Creates a FloatVectorValues from a list of float arrays.
      Parameters:
      vectors - the list of float arrays
      dim - the dimension of the vectors
      Returns:
      a FloatVectorValues instance