You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[DOC-12715] Document New Search Request Params for Search Fine-Tuning (#291)
* [quickfix]: quickfix: strange font problem on diagram (#274)
Seems to have been caused by extra space in the label.
* [DOC-12610]: Document `nprobe` tweaking
* [DOC=12610]: Moved fine-tuning menu entry.
[DOC=12610]: Moved the stem declaration; wasn't working in the old position.
* [DOC=12610]:
Moved and reworded the sections for clarity.
Adding link to search-index-params.adoc
* [DOC-12715] Add documentation to the JSON search request example and topics around the new added memory-efficient setting and the params object for probe and centroid tuning
* [DOC-12715] Adding on to Ray's documentation to provide a link to Search Request Params.
* [DOC-12715] Comments from peer review
---------
Co-authored-by: Ray Offiah <[email protected]>
Co-authored-by: Ray Offiah <[email protected]>
Copy file name to clipboardExpand all lines: modules/search/pages/search-request-params.adoc
+40Lines changed: 40 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -173,6 +173,12 @@ The Search Service returns the `k` closest vectors to the vector given in `vecto
173
173
174
174
NOTE: The <<size-limit,size or limit property>> overrides any value set in `k`.
175
175
176
+
|params |Object |No a|
177
+
178
+
Enter additional parameters to control how the Search Service compares vectors when running a Vector Search request.
179
+
180
+
For more information about the `params` object, see <<knn-params,>>.
181
+
176
182
|field |String |Yes a|
177
183
178
184
The name of the field that contains the vector data you want to search.
@@ -199,6 +205,40 @@ For more information about the dimension value, see the xref:search-index-params
199
205
200
206
|====
201
207
208
+
[#knn-params]
209
+
=== Knn params Object
210
+
211
+
Use the `params` object inside a `knn` object to fine tune the probes and centroids the Search Services uses and searches while running a Vector Search request.
212
+
213
+
The `params` object can contain the following properties:
214
+
215
+
[cols="1,1,1,4"]
216
+
|====
217
+
|Property |Type |Required? |Description
218
+
219
+
|ivf_nprobe_pct |Number (percentage) |No a|
220
+
221
+
Set the `ivf_nprobe_pct` value to control the percentage of probes, or the percentage of clusters, that the Search Service searches during a single Vector Search query.
222
+
223
+
The Search Service automatically calculates a default `nprobe` percentage based on the vectors in a given partition of your Vector Search index.
224
+
For more information about this calculation, see xref:vector-search:fine-tune-vector-search.adoc[].
225
+
226
+
If you set the value of `ivf_nprobe_pct` higher than this default calculated value, the Search Service will search a higher percentage of clusters in your processed vectors.
227
+
This can increase your accuracy and recall for Vector Search, but requires more compute time for each query.
228
+
229
+
In the example, the Search Service searches only `1%` of the total available clusters.
230
+
231
+
|ivf_max_codes_pct |Number (percentage out of 100) |No a|
232
+
233
+
Set the `ivf_max_codes_pct` value to control the maximum number of centroids that the Search Service accesses during a single Vector Search query.
234
+
235
+
By default, this value is always 100%.
236
+
237
+
If you reduce your `ivf_max_codes_pct` value, the Search Service accesses fewer centroids, which reduces your Vector Search accuracy and recall, but gives faster compute times for your search.
238
+
239
+
In the example, the Search Service searches only `0.2%` of the available centroids in your vector data.
Copy file name to clipboardExpand all lines: modules/search/partials/vector-search-field-descriptions.adoc
+6-1Lines changed: 6 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
// tag::optimized_for[]
2
-
For a `vector` child field, choose whether the Search Service should prioritize recallor latency when returning similar vectors in search results:
2
+
For a `vector` child field, choose whether the Search Service should prioritize recall, latency, or memory efficiency when returning similar vectors in search results:
3
3
4
4
* *recall*: The Search Service prioritizes returning the most accurate result.
5
5
This may increase resource usage for Search queries.
@@ -12,6 +12,11 @@ This may reduce the accuracy of results.
12
12
+
13
13
The Search Service uses half the `nprobe` value calculated for *recall* priority.
14
14
15
+
* *memory-efficient*: The Search Service prioritizes reducing memory usage and optimizes search operations for less resources.
16
+
This may reduce both accuracy (recall) and latency.
17
+
+
18
+
The Search Service uses either an inverted file index with scalar quantization, or a directly mapped index with exact vector comparisons, depending on the number of vectors in your data.
19
+
15
20
For more information about Vector Search indexes, see xref:vector-search:vector-search.adoc[] or xref:vector-search:create-vector-search-index-ui.adoc[].
0 commit comments