Sobes.tech
Middle — Senior

HNSWlib чист ва дар куҷо истифода мешавад?

sobes.tech AI

Ҷавоб аз AI

HNSWlib китобхонаест барои ҷустуҷӯи зудтарини ҳамсоягони наздиктарин (Approximate Nearest Neighbor Search) дар фазоҳои вектории баландDimensional. Алгоритми Hierarchical Navigable Small World графҳоро (HNSW) амалӣ мекунад, ки графи бисёрқатламро барои ҷустуҷӯи самараноки объектҳои монанд месозад.

Барномаҳои асосии HNSWlib:

  • Ҷустуҷӯи тасвирҳо, овозҳо ё матнҳои монанд, ки ҳамчун векторҳо пешниҳод шудаанд.
  • Sistemaҳои тавсия.
  • Коркарди забони табиӣ (масалан, ҷустуҷӯ тавассути embedding-ҳои калимаву ибораҳо).

Маслиҳат барои истифода дар Python:

import hnswlib
import numpy as np

# Эҷоди индекс барои 10000 вектор бо андозаи 128
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 барои суръати баланд ва дақиқии он дар ҷустуҷӯ дар маҷмӯъҳои маълумотҳои калон қадр карда мешавад.