Topik ini menjelaskan cara mengonfigurasi parameter pembuatan dan pencarian untuk algoritma QGraph.
Parameter pembuatan indeks QGraph
Nama Parameter | Tipe | Nilai Default | Deskripsi |
proxima.hnsw.builder.max_neighbor_count | uint32 | 100 | Menentukan jumlah maksimum tetangga untuk node dalam graf. Semakin besar nilai ini, semakin baik konektivitas graf. Namun, biaya pembuatan graf dan ukuran indeks juga akan meningkat. |
proxima.hnsw.builder.efconstruction | uint32 | 500 | Mengontrol ukuran area pemindaian tetangga selama pembuatan graf. Semakin besar nilai ini, semakin baik kualitas graf offline, tetapi semakin lambat pembuatan indeks. Disarankan untuk memulai dengan konfigurasi 400. |
proxima.hnsw.builder.thread_count | uint32 | 0 | Jumlah thread yang dibuka selama pembuatan. Saat disetel ke 0, menggunakan jumlah core CPU. |
proxima.qgraph.builder.quantizer_class | string | None | Opsi pengkuantisasi termasuk Int4QuantizerConverter, Int8QuantizerConverter, dan HalfFloatConverter. Secara umum, semakin kecil bit integer, semakin kecil indeks dan semakin tinggi performa, tetapi laju recall lebih rendah. Karena masalah dengan set instruksi CPU dasar, performa dan laju recall dari kuantisasi int16 hampir sama dengan saat tidak dikuantisasi. |
Parameter pencarian indeks QGraph
Nama Parameter | Tipe | Nilai Default | Deskripsi |
proxima.hnsw.searcher.ef | uint32 | 500 | Jumlah tetangga terdekat yang dipindai selama pencarian online. Nilai besar meningkatkan rasio pengambilan tetapi memperlambat performa pengambilan. Kami menyarankan Anda menetapkan nilai dalam rentang [100,1000]. |
proxima.hnsw.searcher.max_scan_ratio | float | None | Proporsi titik yang dipindai selama pencarian online. Nilai besar meningkatkan rasio pengambilan tetapi memperlambat performa pengambilan. |
proxima.hnsw.searcher.brute_force_threshold | uint32 | None | Jumlah minimum titik yang dipindai selama pencarian online. Jika nilai parameter ini melebihi jumlah dokumen dalam sebuah shard, pencarian menjadi brute force. |