|
@@ -5,7 +5,7 @@
|
|
|
* 2.0.
|
|
|
*/
|
|
|
|
|
|
-package org.elasticsearch.xpack.ml.queries;
|
|
|
+package org.elasticsearch.xpack.core.ml.search;
|
|
|
|
|
|
import org.apache.lucene.document.Document;
|
|
|
import org.apache.lucene.document.FeatureField;
|
|
@@ -40,9 +40,6 @@ import org.elasticsearch.xpack.core.ml.action.CoordinatedInferenceAction;
|
|
|
import org.elasticsearch.xpack.core.ml.action.InferModelAction;
|
|
|
import org.elasticsearch.xpack.core.ml.inference.TrainedModelPrefixStrings;
|
|
|
import org.elasticsearch.xpack.core.ml.inference.results.TextExpansionResults;
|
|
|
-import org.elasticsearch.xpack.core.ml.search.TokenPruningConfig;
|
|
|
-import org.elasticsearch.xpack.core.ml.search.WeightedToken;
|
|
|
-import org.elasticsearch.xpack.ml.MachineLearning;
|
|
|
|
|
|
import java.io.IOException;
|
|
|
import java.lang.reflect.Method;
|
|
@@ -50,7 +47,7 @@ import java.util.ArrayList;
|
|
|
import java.util.Collection;
|
|
|
import java.util.List;
|
|
|
|
|
|
-import static org.elasticsearch.xpack.ml.queries.SparseVectorQueryBuilder.QUERY_VECTOR_FIELD;
|
|
|
+import static org.elasticsearch.xpack.core.ml.search.SparseVectorQueryBuilder.QUERY_VECTOR_FIELD;
|
|
|
import static org.hamcrest.CoreMatchers.instanceOf;
|
|
|
import static org.hamcrest.Matchers.either;
|
|
|
import static org.hamcrest.Matchers.hasSize;
|
|
@@ -102,7 +99,7 @@ public class SparseVectorQueryBuilderTests extends AbstractQueryTestCase<SparseV
|
|
|
|
|
|
@Override
|
|
|
protected Collection<Class<? extends Plugin>> getPlugins() {
|
|
|
- return List.of(MachineLearning.class, MapperExtrasPlugin.class, XPackClientPlugin.class);
|
|
|
+ return List.of(MapperExtrasPlugin.class, XPackClientPlugin.class);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -156,8 +153,10 @@ public class SparseVectorQueryBuilderTests extends AbstractQueryTestCase<SparseV
|
|
|
|
|
|
@Override
|
|
|
protected void doAssertLuceneQuery(SparseVectorQueryBuilder queryBuilder, Query query, SearchExecutionContext context) {
|
|
|
- assertThat(query, instanceOf(BooleanQuery.class));
|
|
|
- BooleanQuery booleanQuery = (BooleanQuery) query;
|
|
|
+ assertThat(query, instanceOf(SparseVectorQueryWrapper.class));
|
|
|
+ var sparseQuery = (SparseVectorQueryWrapper) query;
|
|
|
+ assertThat(sparseQuery.getTermsQuery(), instanceOf(BooleanQuery.class));
|
|
|
+ BooleanQuery booleanQuery = (BooleanQuery) sparseQuery.getTermsQuery();
|
|
|
assertEquals(booleanQuery.getMinimumNumberShouldMatch(), 1);
|
|
|
assertThat(booleanQuery.clauses(), hasSize(NUM_TOKENS));
|
|
|
|
|
@@ -233,11 +232,13 @@ public class SparseVectorQueryBuilderTests extends AbstractQueryTestCase<SparseV
|
|
|
|
|
|
private void testDoToQuery(SparseVectorQueryBuilder queryBuilder, SearchExecutionContext context) throws IOException {
|
|
|
Query query = queryBuilder.doToQuery(context);
|
|
|
+ assertTrue(query instanceof SparseVectorQueryWrapper);
|
|
|
+ var sparseQuery = (SparseVectorQueryWrapper) query;
|
|
|
if (queryBuilder.shouldPruneTokens()) {
|
|
|
// It's possible that all documents were pruned for aggressive pruning configurations
|
|
|
- assertTrue(query instanceof BooleanQuery || query instanceof MatchNoDocsQuery);
|
|
|
+ assertTrue(sparseQuery.getTermsQuery() instanceof BooleanQuery || sparseQuery.getTermsQuery() instanceof MatchNoDocsQuery);
|
|
|
} else {
|
|
|
- assertTrue(query instanceof BooleanQuery);
|
|
|
+ assertTrue(sparseQuery.getTermsQuery() instanceof BooleanQuery);
|
|
|
}
|
|
|
}
|
|
|
|