Add more ngt_insert_index_as_TYPE methods to C API
lerouxrgd opened this issue · 2 comments
lerouxrgd commented
Hello,
In ngt-rs
I am now trying to enforce index type at compile time, which would look like that: NgtIndex<f32>
, NgtIndex<u8>
or NgtIndex<f16>
.
Therefore, the insert
method would need to be templated to take a Vec<T>
instead of Vec<f32>
. Currently the ngt-rs
wrapper enforces f32
usage (even if NgtObjectType
is something else like u8
or f16
) because under the hood it uses ngt_insert_index_as_float
from the C API.
Would it be possible to have the following methods added to the C API:
- ngt_insert_index_as_uint8(NGTIndex, uint8_t*, uint32_t, NGTError);
- ngt_insert_index_as_float16(NGTIndex, float16*, uint32_t, NGTError);
So that ngt-rs
wrapper could leverage them for better indexes.
masajiro commented
Hello,
I have released V2.0.12 which includes your request. NGTFloat16 in the arguments is just void defined by typedef.