Skip to content

Commit 88a80a0

Browse files
committed
Merge branch 'knn_patience' of github.com:tteofili/elasticsearch into knn_patience
2 parents 2bf80db + a0634d4 commit 88a80a0

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

server/src/main/java/org/elasticsearch/index/mapper/vectors/DenseVectorFieldMapper.java

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2242,9 +2242,11 @@ private Query createKnnBitQuery(
22422242
BitSetProducer parentFilter
22432243
) {
22442244
elementType.checkDimensions(dims, queryVector.length);
2245-
Query knnQuery = PatienceKnnVectorQuery.fromByteQuery(parentFilter != null
2246-
? new ESDiversifyingChildrenByteKnnVectorQuery(name(), queryVector, filter, k, numCands, parentFilter)
2247-
: new ESKnnByteVectorQuery(name(), queryVector, k, numCands, filter));
2245+
Query knnQuery = PatienceKnnVectorQuery.fromByteQuery(
2246+
parentFilter != null
2247+
? new ESDiversifyingChildrenByteKnnVectorQuery(name(), queryVector, filter, k, numCands, parentFilter)
2248+
: new ESKnnByteVectorQuery(name(), queryVector, k, numCands, filter)
2249+
);
22482250
if (similarityThreshold != null) {
22492251
knnQuery = new VectorSimilarityQuery(
22502252
knnQuery,
@@ -2269,9 +2271,11 @@ private Query createKnnByteQuery(
22692271
float squaredMagnitude = VectorUtil.dotProduct(queryVector, queryVector);
22702272
elementType.checkVectorMagnitude(similarity, ElementType.errorByteElementsAppender(queryVector), squaredMagnitude);
22712273
}
2272-
Query knnQuery = PatienceKnnVectorQuery.fromByteQuery(parentFilter != null
2273-
? new ESDiversifyingChildrenByteKnnVectorQuery(name(), queryVector, filter, k, numCands, parentFilter)
2274-
: new ESKnnByteVectorQuery(name(), queryVector, k, numCands, filter));
2274+
Query knnQuery = PatienceKnnVectorQuery.fromByteQuery(
2275+
parentFilter != null
2276+
? new ESDiversifyingChildrenByteKnnVectorQuery(name(), queryVector, filter, k, numCands, parentFilter)
2277+
: new ESKnnByteVectorQuery(name(), queryVector, k, numCands, filter)
2278+
);
22752279
if (similarityThreshold != null) {
22762280
knnQuery = new VectorSimilarityQuery(
22772281
knnQuery,
@@ -2322,9 +2326,11 @@ && isNotUnitVector(squaredMagnitude)) {
23222326
adjustedK = Math.min((int) Math.ceil(k * oversample), OVERSAMPLE_LIMIT);
23232327
numCands = Math.max(adjustedK, numCands);
23242328
}
2325-
Query knnQuery = PatienceKnnVectorQuery.fromFloatQuery(parentFilter != null
2326-
? new ESDiversifyingChildrenFloatKnnVectorQuery(name(), queryVector, filter, adjustedK, numCands, parentFilter)
2327-
: new ESKnnFloatVectorQuery(name(), queryVector, adjustedK, numCands, filter));
2329+
Query knnQuery = PatienceKnnVectorQuery.fromFloatQuery(
2330+
parentFilter != null
2331+
? new ESDiversifyingChildrenFloatKnnVectorQuery(name(), queryVector, filter, adjustedK, numCands, parentFilter)
2332+
: new ESKnnFloatVectorQuery(name(), queryVector, adjustedK, numCands, filter)
2333+
);
23282334
if (rescore) {
23292335
knnQuery = new RescoreKnnVectorQuery(
23302336
name(),

0 commit comments

Comments
 (0)