|
9 | 9 |
|
10 | 10 | package org.elasticsearch.search.nested; |
11 | 11 |
|
12 | | -import org.apache.lucene.search.join.ScoreMode; |
13 | 12 | import org.elasticsearch.action.get.GetResponse; |
14 | 13 | import org.elasticsearch.cluster.health.ClusterHealthStatus; |
15 | 14 | import org.elasticsearch.common.settings.Settings; |
16 | 15 | import org.elasticsearch.index.query.InnerHitBuilder; |
17 | | -import org.elasticsearch.index.query.QueryBuilders; |
18 | 16 | import org.elasticsearch.search.vectors.KnnSearchBuilder; |
19 | | -import org.elasticsearch.search.vectors.KnnVectorQueryBuilder; |
20 | 17 | import org.elasticsearch.test.ESIntegTestCase; |
21 | 18 |
|
22 | 19 | import java.util.List; |
@@ -78,106 +75,4 @@ public void testSimpleNested() throws Exception { |
78 | 75 | ); |
79 | 76 | } |
80 | 77 |
|
81 | | - public void testSimpleIVFNested() throws Exception { |
82 | | - assertAcked( |
83 | | - prepareCreate("test").setMapping( |
84 | | - jsonBuilder().startObject() |
85 | | - .startObject("properties") |
86 | | - .startObject("name") |
87 | | - .field("type", "keyword") |
88 | | - .endObject() |
89 | | - .startObject("nested") |
90 | | - .field("type", "nested") |
91 | | - .startObject("properties") |
92 | | - .startObject("paragraph_id") |
93 | | - .field("type", "keyword") |
94 | | - .endObject() |
95 | | - .startObject("vector") |
96 | | - .field("type", "dense_vector") |
97 | | - .field("index", true) |
98 | | - .field("dims", 5) |
99 | | - .field("similarity", "l2_norm") |
100 | | - .startObject("index_options") |
101 | | - .field("type", "bbq_ivf") |
102 | | - .endObject() |
103 | | - .endObject() |
104 | | - .endObject() |
105 | | - .endObject() |
106 | | - .endObject() |
107 | | - .endObject() |
108 | | - ).setSettings(Settings.builder().put(indexSettings()).put("index.number_of_shards", 1)) |
109 | | - ); |
110 | | - ensureGreen(); |
111 | | - |
112 | | - prepareIndex("test").setId("1") |
113 | | - .setSource( |
114 | | - jsonBuilder().startObject() |
115 | | - .field("name", "cow.jpg") |
116 | | - .startArray("nested") |
117 | | - .startObject() |
118 | | - .field("paragraph_id", "0") |
119 | | - .field("vector", new float[] { 230, 300.33f, -34.8988f, 15.555f, -200 }) |
120 | | - .endObject() |
121 | | - .startObject() |
122 | | - .field("paragraph_id", "1") |
123 | | - .field("vector", new float[] { 240, 300, -3, 1, -20 }) |
124 | | - .endObject() |
125 | | - .endArray() |
126 | | - .endObject() |
127 | | - ) |
128 | | - .get(); |
129 | | - prepareIndex("test").setId("2") |
130 | | - .setSource( |
131 | | - jsonBuilder().startObject() |
132 | | - .field("name", "moose.jpg") |
133 | | - .startArray("nested") |
134 | | - .startObject() |
135 | | - .field("paragraph_id", "0") |
136 | | - .field("vector", new float[] { -0.5f, 100, -13, 14.8f, -156 }) |
137 | | - .endObject() |
138 | | - .startObject() |
139 | | - .field("paragraph_id", "1") |
140 | | - .field("vector", new float[] { 0, 100, 0, 14.8f, -156 }) |
141 | | - .endObject() |
142 | | - .startObject() |
143 | | - .field("paragraph_id", "2") |
144 | | - .field("vector", new float[] { 0, 1, 0, 1.8f, -15 }) |
145 | | - .endObject() |
146 | | - .endArray() |
147 | | - .endObject() |
148 | | - ) |
149 | | - .get(); |
150 | | - prepareIndex("test").setId("3") |
151 | | - .setSource( |
152 | | - jsonBuilder().startObject() |
153 | | - .field("name", "rabbit.jpg") |
154 | | - .startArray("nested") |
155 | | - .startObject() |
156 | | - .field("paragraph_id", "0") |
157 | | - .field("vector", new float[] { 0.5f, 111.3f, -13f, 14.8f, -156f }) |
158 | | - .endObject() |
159 | | - .endArray() |
160 | | - .endObject() |
161 | | - ) |
162 | | - .get(); |
163 | | - client().admin().indices().prepareForceMerge("test").setMaxNumSegments(1).get(); |
164 | | - refresh(); |
165 | | - |
166 | | - waitForRelocation(ClusterHealthStatus.GREEN); |
167 | | - |
168 | | - assertResponse( |
169 | | - prepareSearch("test").setQuery( |
170 | | - QueryBuilders.nestedQuery( |
171 | | - "nested", |
172 | | - new KnnVectorQueryBuilder("nested.vector", new float[] { -0.5f, 90, -10, 14.8f, -156 }, null, 3, null, null), |
173 | | - ScoreMode.Max |
174 | | - ) |
175 | | - ).setAllowPartialSearchResults(false), |
176 | | - response -> { |
177 | | - assertThat(response.getHits().getHits().length, greaterThan(0)); |
178 | | - assertThat(response.getHits().getHits()[0].getId(), equalTo("2")); |
179 | | - } |
180 | | - ); |
181 | | - } |
182 | | - |
183 | 78 | } |
0 commit comments