
Panduan HNSW untuk Vector Search AI 2026: Menyeimbangkan Recall dan Latensi di Skala Produksi
24/3/2026
Keyword: HNSW, vector search, approximate nearest neighbor, ANN, recall, latency, graph index, AI search, semantic search, embedding, Faiss, hnswlib, index tuning, efSearch, efConstruction, M parameter, search quality
Apa itu HNSW dan kenapa banyak dipakai di vector search?
Hierarchical Navigable Small World (HNSW) adalah struktur indeks berbasis graf untuk approximate nearest neighbor (ANN). Ide utamanya: membuat graf bertingkat dengan koneksi jarak dekat dan jarak jauh, sehingga pencarian bisa dimulai dari layer atas (lebih kasar) lalu turun ke layer bawah (lebih detail). Pendekatan ini membuat pencarian cepat dengan kompleksitas yang mendekati logaritmik, sekaligus menjaga kualitas hasil (recall).
Konsep kunci HNSW yang perlu dipahami
1) Struktur multi-layer
Node disusun di beberapa layer dengan probabilitas menurun secara eksponensial. Layer atas berisi sedikit node (loncatan jauh), sementara layer bawah berisi semua node (detail rapat). Inilah yang membuat navigasi cepat.
2) Parameter inti: M, efConstruction, efSearch
- M: jumlah maksimum koneksi per node. Semakin besar M, graf lebih rapat dan recall meningkat, namun biaya memori naik.
- efConstruction: ukuran kandidat saat membangun graf. Semakin besar nilainya, kualitas indeks meningkat tetapi waktu build bertambah.
- efSearch: ukuran kandidat saat query. Nilai lebih besar meningkatkan recall namun menambah latensi.
Strategi tuning praktis untuk tim SaaS
Langkah 1: tentukan target recall & latensi
Mulai dari target bisnis, misalnya recall ≥ 0.95 dan p95 latency ≤ 50 ms. Ini menjadi patokan saat menyesuaikan parameter.
Langkah 2: pilih M secara konservatif
Untuk dataset embedding umum, M di kisaran 16–48 sering menjadi titik awal. Naikkan M bila recall kurang, tetapi evaluasi biaya memori.
Langkah 3: kalibrasi efConstruction saat build
Jika waktu build masih wajar, tingkatkan efConstruction untuk memperbaiki kualitas graf. Ini biasanya lebih stabil daripada menaikkan efSearch secara agresif.
Langkah 4: optimasi efSearch sesuai SLA
Mulai dari nilai kecil (misalnya 50–100), ukur recall dan latensi, lalu naikkan bertahap sampai mencapai SLA.
Checklist operasional sebelum produksi
- Gunakan sampel data representatif untuk benchmarking.
- Ukur recall@k dan latency p95/p99 secara terpisah.
- Monitoring perubahan distribusi embedding (data drift) yang dapat menurunkan kualitas recall.
- Jika memakai library seperti hnswlib atau Faiss, pastikan konfigurasi thread dan memory limit sesuai profil workload.
Kesimpulan
HNSW menjadi pilihan utama untuk vector search karena menawarkan keseimbangan terbaik antara kecepatan dan kualitas. Dengan memahami struktur multi-layer dan men-tuning M, efConstruction, serta efSearch secara terukur, tim SaaS dapat memenuhi SLA tanpa mengorbankan relevansi hasil.
Referensi
- Makalah asli HNSW: “Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs” (arXiv:1603.09320).
- Dokumentasi proyek hnswlib (GitHub nmslib/hnswlib) untuk parameter dan API.
- Panduan HNSW di Pinecone Learn untuk penjelasan intuitif dan praktik implementasi.
Sumber referensi awal: https://arxiv.org/abs/1603.09320