Sobes.tech
Middle — Senior

Ի՞նչ է HNSWlib և որտեղ է այն օգտագործվում:

sobes.tech AI

Պատասխան AI-ից

HNSWlib բարձր չափանիշների վեկտորային տարածքներում արագ որոնման գրադարան է (Համ aproximատ հարևանների որոնում): Այն իրականացնում է Hierarchical Navigable Small World գրաֆների (HNSW) ալգորիթմը, որը կառուցում է բազմաշերտ գրաֆ՝ արդյունավետ որոնելու համար նման օբյեկտները:

HNSWlib-ի հիմնական կիրառությունները՝

  • Նման պատկերների, ձայնի կամ տեքստերի որոնում, որոնք ներկայացված են վեկտորների տեսքով:
  • Խորհուրդների համակարգեր:
  • Բնական լեզվի մշակում (օրինակ՝ բառերի կամ նախադասությունների embedding-ների միջոցով որոնում):

Օգտագործման օրինակ Python-ում՝

import hnswlib
import numpy as np

# 128 չափի 10000 վեկտորների համար ինդեքս ստեղծել
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-ը գնահատվում է իր բարձր արագության և ճշգրտության համար մեծ տվյալների հավաքածուներում որոնում կատարելիս։