Skip to content

Commit f73a858

Browse files
Address Review Comments
Signed-off-by: Naveen Tatikonda <navtat@amazon.com>
1 parent a9255f8 commit f73a858

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

_search-plugins/knn/knn-index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ Lucene HNSW implementation ignores `ef_search` and dynamically sets it to the v
116116
### Supported faiss encoders
117117

118118
You can use encoders to reduce the memory footprint of a k-NN index at the expense of search accuracy. faiss has
119-
several encoder types, but the plugin currently only supports *flat*, *pq* and *SQfp16* encoding.
119+
several encoder types, but the plugin currently only supports *flat*, *pq*, and *SQfp16* encoding.
120120

121121
The following example method definition specifies the `hnsw` method and a `pq` encoder:
122122

@@ -144,7 +144,7 @@ Encoder name | Requires training | Description
144144
:--- | :--- | :---
145145
`flat` | false | Encode vectors as floating point arrays. This encoding does not reduce memory footprint.
146146
`pq` | true | An abbreviation for _product quantization_, it is a lossy compression technique that uses clustering to encode a vector into a fixed size of bytes, with the goal of minimizing the drop in k-NN search accuracy. At a high level, vectors are broken up into `m` subvectors, and then each subvector is represented by a `code_size` code obtained from a code book produced during training. For more information about product quantization, see [this blog post](https://medium.com/dotstar/understanding-faiss-part-2-79d90b1e5388).
147-
`SQfp16` | false | Starting with k-NN plugin version 2.12, SQfp16 encoder can be used to quantize 32 bit floating point vectors into 16 bit floats using the Faiss inbuilt ScalarQuantizer in order to reduce the memory footprint with a minimal loss of precision. Besides memory optimization, the overall performance has been improved with the SIMD optimization (using `AVX2` on `x86` architecture and using `NEON` on `ARM` architecture).
147+
`SQfp16` | false | Starting with k-NN plugin version 2.12, you can use the SQfp16 encoder to quantize 32-bit floating-point vectors into 16-bit floats using the Faiss built-in ScalarQuantizer in order to reduce the memory footprint with a minimal loss of precision. Besides optimizing memory use, SQfp16 improves the overall performance with the SIMD optimization (using `AVX2` on `x86` architecture and using `NEON` on `ARM` architecture).
148148

149149
For `SQfp16` encoder, the SIMD optimization is supported only on Linux and Mac OS. But, the encoder can be still used on Windows OS with a reduced performance (but with same memory optimization). In order to enable the SIMD support, the vector dimension must be a multiple of **8**.
150150
{: .important}

0 commit comments

Comments
 (0)