4 ms·
Hann: A Fast Approximate Nearest Neighbor Search Library for Go
- nikolayasdf123 2y ago> Fast distance computation using SIMD (AVX) instructions cool to see this. however, really missing benchmarks to compare to Redis, Vertex, Elastic, FAISS
- nikolayasdf123 2y ago> requires C (or C++) compile so this is just FFI into C? hm...
- dolmen 2y agoI see only two C files in the repo: https://github.com/habedi/hann/blob/main/core/simd_distance.c https://github.com/habedi/hann/blob/main/core/simd_distance.... https://github.com/habedi/hann/blob/main/core/simd_ops.c https://github.com/habedi/hann/blob/main/core/simd_ops.c So fixing to make it compile just with the Go toolchain (probably by rewriting in assembly) seems doable. Using avo to produce assembly: https://github.com/mmcloughlin/avo https://github.com/mmcloughlin/avo
- thomasahle 2y agohttps://ann-benchmarks.com/ https://ann-benchmarks.com/
- imurray 2y agoThat nice benchmark shows that multiple implementations of HNSW perform differently (my experience also). It would be helpful therefore if HANN benchmarked its implementation against the others, and tried to get the details the same as the best version.
- oldgregg 2y agoGreat lib... now is there a Go-native way to generate vectors from text?
- redskyluan 2y agoTry ollama? It support several embedding models
- neonsunset 2y agoAnother project that can be written in pure C# is written in Go instead which is struggling to solve the problem :( (and by struggling I mean can’t do it at all and requires either FFI or Goasm)