Batch encode: encode all vectors into contiguous binary representation. Returns `ceil(dim/8) * N` bytes.
(vectors: &[&[f32]], dim: usize)
| 29 | /// |
| 30 | /// Returns `ceil(dim/8) * N` bytes. |
| 31 | pub fn encode_batch(vectors: &[&[f32]], dim: usize) -> Vec<u8> { |
| 32 | let bytes_per = dim.div_ceil(8); |
| 33 | let mut out = Vec::with_capacity(bytes_per * vectors.len()); |
| 34 | for v in vectors { |
| 35 | out.extend(encode(v)); |
| 36 | } |
| 37 | out |
| 38 | } |
| 39 | |
| 40 | /// Hamming distance between two binary-encoded vectors. |
| 41 | /// |