Class PerFieldKnnVectorsFormat.FieldsReader
- java.lang.Object
-
- org.apache.lucene.codecs.KnnVectorsReader
-
- org.apache.lucene.codecs.perfield.PerFieldKnnVectorsFormat.FieldsReader
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Accountable
- Enclosing class:
- PerFieldKnnVectorsFormat
public static class PerFieldKnnVectorsFormat.FieldsReader extends KnnVectorsReader
VectorReader that can wrap multiple delegate readers, selected by field.
-
-
Field Summary
-
Fields inherited from interface org.apache.lucene.util.Accountable
NULL_ACCOUNTABLE
-
-
Constructor Summary
Constructors Constructor Description FieldsReader(SegmentReadState readState)Create a FieldsReader over a segment, opening VectorReaders for each KnnVectorsFormat specified by the indexed numeric vector fields.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckIntegrity()Checks consistency of this reader.voidclose()KnnVectorsReadergetFieldReader(String field)Return the underlying VectorReader for the given fieldVectorValuesgetVectorValues(String field)Returns theVectorValuesfor the givenfieldlongramBytesUsed()Return the memory usage of this object in bytes.TopDocssearch(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
-
-
-
-
Constructor Detail
-
FieldsReader
public FieldsReader(SegmentReadState readState) throws IOException
Create a FieldsReader over a segment, opening VectorReaders for each KnnVectorsFormat specified by the indexed numeric vector fields.- Parameters:
readState- defines the fields- Throws:
IOException- if one of the delegate readers throws
-
-
Method Detail
-
getFieldReader
public KnnVectorsReader getFieldReader(String field)
Return the underlying VectorReader for the given field- Parameters:
field- the name of a numeric vector field
-
checkIntegrity
public void checkIntegrity() throws IOExceptionDescription copied from class:KnnVectorsReaderChecks 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:
checkIntegrityin classKnnVectorsReader- Throws:
IOException
-
getVectorValues
public VectorValues getVectorValues(String field) throws IOException
Description copied from class:KnnVectorsReaderReturns theVectorValuesfor the givenfield- Specified by:
getVectorValuesin classKnnVectorsReader- Throws:
IOException
-
search
public TopDocs search(String field, float[] target, int k, Bits acceptDocs) throws IOException
Description copied from class:KnnVectorsReaderReturn 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:
searchin classKnnVectorsReader- Parameters:
field- the vector field to searchtarget- the vector-valued queryk- the number of docs to returnacceptDocs-Bitsthat represents the allowed documents to match, ornullif they are all allowed to match.- Returns:
- the k nearest neighbor documents, along with their (searchStrategy-specific) scores.
- Throws:
IOException
-
close
public void close() throws IOException- Throws:
IOException
-
ramBytesUsed
public long ramBytesUsed()
Description copied from interface:AccountableReturn the memory usage of this object in bytes. Negative values are illegal.
-
-