Class OffHeapQuantizedByteVectorValues.DenseOffHeapVectorValues
java.lang.Object
org.apache.lucene.search.DocIdSetIterator
org.apache.lucene.util.quantization.QuantizedByteVectorValues
org.apache.lucene.codecs.lucene99.OffHeapQuantizedByteVectorValues
org.apache.lucene.codecs.lucene99.OffHeapQuantizedByteVectorValues.DenseOffHeapVectorValues
- All Implemented Interfaces:
RandomAccessVectorValues,RandomAccessVectorValues.Bytes,RandomAccessQuantizedByteVectorValues
- Enclosing class:
OffHeapQuantizedByteVectorValues
public static class OffHeapQuantizedByteVectorValues.DenseOffHeapVectorValues
extends OffHeapQuantizedByteVectorValues
Dense vector values that are stored off-heap. This is the most common case when every doc has a
vector.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.lucene.codecs.lucene99.OffHeapQuantizedByteVectorValues
OffHeapQuantizedByteVectorValues.DenseOffHeapVectorValuesNested classes/interfaces inherited from interface org.apache.lucene.util.hnsw.RandomAccessVectorValues
RandomAccessVectorValues.Bytes, RandomAccessVectorValues.Floats -
Field Summary
Fields inherited from class org.apache.lucene.codecs.lucene99.OffHeapQuantizedByteVectorValues
binaryValue, byteBuffer, byteSize, compress, dimension, lastOrd, numBytes, scalarQuantizer, scoreCorrectionConstant, similarityFunction, size, slice, vectorsScorerFields inherited from class org.apache.lucene.search.DocIdSetIterator
NO_MORE_DOCS -
Constructor Summary
ConstructorsConstructorDescriptionDenseOffHeapVectorValues(int dimension, int size, ScalarQuantizer scalarQuantizer, boolean compress, VectorSimilarityFunction similarityFunction, FlatVectorsScorer vectorsScorer, IndexInput slice) -
Method Summary
Modifier and TypeMethodDescriptionintadvance(int target) Advances to the first beyond the current whose document number is greater than or equal to target, and returns the document number itself.copy()Creates a new copy of thisRandomAccessVectorValues.intdocID()Returns the following:-1ifDocIdSetIterator.nextDoc()orDocIdSetIterator.advance(int)were not called yet.getAcceptOrds(Bits acceptDocs) Returns theBitsrepresenting live documents.intnextDoc()Advances to the next document in the set and returns the doc it is currently on, orDocIdSetIterator.NO_MORE_DOCSif there are no more docs in the set.
NOTE: after the iterator has exhausted you should not call this method, as it may result in unpredicted behavior.scorer(float[] target) Return aVectorScorerfor the given query vector.byte[]Methods inherited from class org.apache.lucene.codecs.lucene99.OffHeapQuantizedByteVectorValues
dimension, getScalarQuantizer, getScoreCorrectionConstant, getScoreCorrectionConstant, getSlice, getVectorByteLength, load, size, vectorValueMethods inherited from class org.apache.lucene.util.quantization.QuantizedByteVectorValues
costMethods inherited from class org.apache.lucene.search.DocIdSetIterator
all, empty, range, slowAdvanceMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.lucene.util.hnsw.RandomAccessVectorValues
ordToDoc
-
Constructor Details
-
DenseOffHeapVectorValues
public DenseOffHeapVectorValues(int dimension, int size, ScalarQuantizer scalarQuantizer, boolean compress, VectorSimilarityFunction similarityFunction, FlatVectorsScorer vectorsScorer, IndexInput slice)
-
-
Method Details
-
vectorValue
- Specified by:
vectorValuein classQuantizedByteVectorValues- Throws:
IOException
-
docID
public int docID()Description copied from class:DocIdSetIteratorReturns the following:-1ifDocIdSetIterator.nextDoc()orDocIdSetIterator.advance(int)were not called yet.DocIdSetIterator.NO_MORE_DOCSif the iterator has exhausted.- Otherwise it should return the doc ID it is currently on.
- Specified by:
docIDin classDocIdSetIterator
-
nextDoc
Description copied from class:DocIdSetIteratorAdvances to the next document in the set and returns the doc it is currently on, orDocIdSetIterator.NO_MORE_DOCSif there are no more docs in the set.
NOTE: after the iterator has exhausted you should not call this method, as it may result in unpredicted behavior.- Specified by:
nextDocin classDocIdSetIterator- Throws:
IOException
-
advance
Description copied from class:DocIdSetIteratorAdvances to the first beyond the current whose document number is greater than or equal to target, and returns the document number itself. Exhausts the iterator and returnsDocIdSetIterator.NO_MORE_DOCSif target is greater than the highest document number in the set.The behavior of this method is undefined when called with
target ≤ current, or after the iterator has exhausted. Both cases may result in unpredicted behavior.When
target > currentit behaves as if written:int advance(int target) { int doc; while ((doc = nextDoc()) < target) { } return doc; }Some implementations are considerably more efficient than that.NOTE: this method may be called with
DocIdSetIterator.NO_MORE_DOCSfor efficiency by some Scorers. If your implementation cannot efficiently determine that it should exhaust, it is recommended that you check for that value in each call to this method.- Specified by:
advancein classDocIdSetIterator- Throws:
IOException
-
copy
Description copied from interface:RandomAccessVectorValuesCreates a new copy of thisRandomAccessVectorValues. This is helpful when you need to access different values at once, to avoid overwriting the underlying vector returned.- Throws:
IOException
-
getAcceptOrds
Description copied from interface:RandomAccessVectorValuesReturns theBitsrepresenting live documents. By default, this is an identity function.- Parameters:
acceptDocs- the accept docs- Returns:
- the accept docs
-
scorer
Description copied from class:QuantizedByteVectorValuesReturn aVectorScorerfor the given query vector.- Specified by:
scorerin classQuantizedByteVectorValues- Parameters:
target- the query vector- Returns:
- a
VectorScorerinstance or null - Throws:
IOException
-