Class Lucene90HnswVectorsReader
- java.lang.Object
-
- org.apache.lucene.codecs.KnnVectorsReader
-
- org.apache.lucene.codecs.lucene90.Lucene90HnswVectorsReader
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Accountable
public final class Lucene90HnswVectorsReader extends KnnVectorsReader
Reads vectors from the index segments along with index data structures supporting KNN search.- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
-
Field Summary
-
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
checkIntegrity()
Checks consistency of this reader.void
close()
KnnGraphValues
getGraphValues(String field)
VectorValues
getVectorValues(String field)
Returns theVectorValues
for the givenfield
long
ramBytesUsed()
Return the memory usage of this object in bytes.TopDocs
search(String field, float[] target, int k, Bits acceptDocs)
Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function.-
Methods inherited from class org.apache.lucene.codecs.KnnVectorsReader
getMergeInstance
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.util.Accountable
getChildResources
-
-
-
-
Method Detail
-
ramBytesUsed
public long ramBytesUsed()
Description copied from interface:Accountable
Return the memory usage of this object in bytes. Negative values are illegal.
-
checkIntegrity
public void checkIntegrity() throws IOException
Description copied from class:KnnVectorsReader
Checks consistency of this reader.Note that this may be costly in terms of I/O, e.g. may involve computing a checksum value against large data files.
- Specified by:
checkIntegrity
in classKnnVectorsReader
- Throws:
IOException
-
getVectorValues
public VectorValues getVectorValues(String field) throws IOException
Description copied from class:KnnVectorsReader
Returns theVectorValues
for the givenfield
- Specified by:
getVectorValues
in classKnnVectorsReader
- Throws:
IOException
-
search
public TopDocs search(String field, float[] target, int k, Bits acceptDocs) throws IOException
Description copied from class:KnnVectorsReader
Return the k nearest neighbor documents as determined by comparison of their vector values for this field, to the given vector, by the field's similarity function. The score of each document is derived from the vector similarity in a way that ensures scores are positive and that a larger score corresponds to a higher ranking.The search is allowed to be approximate, meaning the results are not guaranteed to be the true k closest neighbors. For large values of k (for example when k is close to the total number of documents), the search may also retrieve fewer than k documents.
- Specified by:
search
in classKnnVectorsReader
- Parameters:
field
- the vector field to searchtarget
- the vector-valued queryk
- the number of docs to returnacceptDocs
-Bits
that represents the allowed documents to match, ornull
if they are all allowed to match.- Returns:
- the k nearest neighbor documents, along with their (searchStrategy-specific) scores.
- Throws:
IOException
-
getGraphValues
public KnnGraphValues getGraphValues(String field) throws IOException
- Throws:
IOException
-
close
public void close() throws IOException
- Throws:
IOException
-
-