async annoy
1.0.0
async-annoy索引的工作。它的構建是為了讓您從不擔心並發訪問的複雜性中閱讀或寫入煩惱索引。無論您是在查詢最近的鄰居還是構建索引,都可以輕鬆,安全的操作。
pip install async-annoy確保安裝煩惱並安裝了numpy,因為它們需要運行庫。
最適合響應Web請求來獲取最近的鄰居的理想選擇。
from async_annoy import AsyncAnnoy
async with AsyncAnnoy ( "my_index" ). reader () as reader :
neighbours = await reader . get_neighbours_for ( vector = my_vector , n = 5 )
print ( neighbours )作者將等待所有讀者完成並從頭開始索引。煩惱庫不支持索引更新,而只能重建。
from async_annoy import AsyncAnnoy
async with AsyncAnnoy ( "my_index" ). writer () as writer :
await writer . add_item ( index = 1 , vector = my_vector )
# The index is automatically built and saved when done. async-annoy的初始設置依賴於環境變量來配置煩惱索引參數,從而確保無縫啟動。儘管這些違約提供便利,但您可能需要自定義設置以滿足您的應用程序的特定要求。保持所有讀者和作家與相同索引相互作用的參數一致性至關重要。
async-annoy使用以下環境變量進行初始配置:
ASYNC_ANNOY_DIMENSIONS :存儲在索引中的向量的維度。ASYNC_ANNOY_METRIC :用於比較索引中向量的距離度量(例如“ Angular”,“ Euclidean”)。儘管async-annoy與環境變量配置自身,但您可以在代碼中直接覆蓋這些默認值。創建新的AnnoyReader或AnnoyWriter時,只需將所需的維度和指標作為參數傳遞:
from async_annoy import AsyncAnnoy
# Override default parameters when initializing
index_manager = AsyncAnnoy ( "my_index" , dimensions = 128 , metric = "euclidean" )目前,異步Annoy在Alpha。它已經準備好進行測試,我們渴望您的反饋以使其變得更好。這是一個初始版本,因此我們仍在努力添加更多功能並闡明體驗。