Middle — Senior
HNSWlib эмне жана ал кайда колдонулат?
sobes.tech AI
AIден жооп
HNSWlib — бул жогорку өлчөмдүү вектордук кеңейтүүлөрдө жакынкы көршүлөрдү тез табуу үчүн китепкана (Жакынкы көршүнү болжолдуу издөө). Ал Hierarchical Navigable Small World графтарынын (HNSW) алгоритмин ишке ашырып, натыйжалуу окшош объекттерди издөөгө көпкатламдуу граф түзөт.
HNSWlibдин негизги колдонмолору:
- Векторлор түрүндө берилген окшош сүрөттөрдү, үндөрдү же тексттерди издөө.
- Текшерүү системелери.
- Табигый тил иштетүү (мисалы, сөздөрдүн же сүйлөмдөрдүн embeddings аркылуу издөө).
Pythonдо колдонуу мисалы:
import hnswlib
import numpy as np
# 128 өлчөмдүү 10 000 вектор үчүн индекс түзүү
p = hnswlib.Index(space='l2', dim=128)
p.init_index(max_elements=10000, ef_construction=200, M=16)
# Маалыматтарды кошуу
data = np.float32(np.random.random((10000, 128)))
p.add_items(data)
# Жаңы вектор үчүн 5 жакын көршүнү издөө
query = np.float32(np.random.random(128))
labels, distances = p.knn_query(query, k=5)
print(labels, distances)
HNSWlib жогорку ылдамдык жана тактык үчүн бааланат, чоң маалымат топтомдорунда издөө жүргүзүүдө.