Categories

# Hora 0.1.1, an blazingly fast AI Similarity search algorithm library

 โ Hora is an approximate nearest neighbor search algorithm (wiki) library. We implement all code in Rust๐ฆ for reliability, high level abstraction and high speeds comparable to C++. Hora, ใใปใใin Japanese, sounds like [hลlษ], and means Wow, You see!or Look at that!. The name is inspired by a famous Japanese song ใๅฐใใชๆใฎใใใ . homepage: https://horasearch.com/ Python library: https://github.com/hora-search/horapy Javascript library: https://github.com/hora-search/hora-wasm you can easily install horapy: ```pip install -U horapy ``` here is our online demo (you can find it on our homepage) ๐ฉ Face-Match [online demo] (have a try!) ๐ท Dream wine comments search [online demo] (have a try!) Hora is blazingly fast, benchmark (compare with Faiss and Annoy) usage is also very simple: ```import numpy as np from horapy import HNSWIndex dimension = 50 n = 1000 # init index instance index = HNSWIndex(dimension, "usize") samples = np.float32(np.random.rand(n, dimension)) for i in range(0, len(samples)): # add node index.add(np.float32(samples[i]), i) index.build("euclidean") # build index target = np.random.randint(0, n) # 410 in Hora ANNIndex (dimension: 50, dtype: usize, max_item: 1000000, n_neigh: 32, n_neigh0: 64, ef_build: 20, ef_search: 500, has_deletion: False) # has neighbors: [410, 736, 65, 36, 631, 83, 111, 254, 990, 161] print("{} in {} nhas neighbors: {}".format( target, index, index.search(samples[target], 10))) # search ``` we are pretty glad to have you participate, any contributions are welcome, including the documentation and tests. We use GitHub issues for tracking suggestions and bugs, you can do the Pull Requests, Issue on the github, and we will review it as soon as possible. submitted by /u/aljun_invictus[visit reddit] [comments]