Parameter penyempurnaan
Parameter indeks dan flag database berikut digunakan bersama untuk menemukan keseimbangan yang tepat antara perolehan dan QPS.
| Parameter penyesuaian | Deskripsi | Jenis opsi |
|---|---|---|
max_num_levels |
Jumlah maksimum level sentroid dari hierarki pengelompokan K-means.
|
Pembuatan indeks (opsional) |
num_leaves |
Jumlah partisi yang akan diterapkan ke indeks ini. Jumlah partisi yang Anda terapkan saat membuat indeks akan memengaruhi performa indeks. Dengan meningkatkan partisi untuk sejumlah vektor, Anda akan membuat indeks yang lebih mendetail, sehingga meningkatkan performa kueri dan perolehan. Namun, hal ini akan memperpanjang waktu pembuatan indeks. Karena pohon tiga tingkat dibuat lebih cepat daripada pohon dua tingkat, Anda dapat meningkatkan num_leaves_value saat membuat indeks pohon tiga tingkat untuk mencapai performa yang lebih baik.
|
Pembuatan indeks (wajib diisi) |
quantizer |
Jenis quantizer yang ingin Anda gunakan untuk hierarki K-means. Nilai default ditetapkan ke SQ8 yang memberikan performa kueri yang lebih baik dengan kehilangan perolehan kembali minimal (biasanya kurang dari 1-2%).Tetapkan ke FLAT jika perolehan kembali 99% atau lebih tinggi diperlukan. |
Pembuatan indeks (opsional) |
scann.enable_inline_filtering |
Memungkinkan dukungan pemfilteran inline yang mengkueri data Anda dan menerapkan filter langsung dalam operasi penelusuran kesamaan vektor. Kueri kesamaan vektor ini menggunakan filter pada tabel database yang sama dan menyelesaikan evaluasi filter sambil menghitung jarak untuk identifikasi tetangga terdekat. Opsi ini dinonaktifkan secara default. Untuk mengaktifkan pemfilteran inline, tetapkan parameter ini ke true. Jika Anda melihat penurunan performa, tetapkan ke false.Opsi ini tersedia dalam Pratinjau. |
Runtime kueri (opsional) |
scann.enable_pca |
Mengaktifkan Analisis Komponen Utama (PCA), yang merupakan teknik pengurangan dimensi yang digunakan untuk otomatis
mengurangi ukuran embedding jika memungkinkan. Opsi ini diaktifkan secara default. Setel ke false jika Anda melihat penurunan kualitas ingatan. |
Pembuatan indeks (opsional) |
scann.num_leaves_to_search |
Flag database ini mengontrol jumlah absolut leaf atau partisi yang akan ditelusuri, sehingga Anda dapat menyeimbangkan antara perolehan dan QPS. Nilai defaultnya adalah 1% dari nilai yang ditetapkan di num_leaves. Nilai yang lebih tinggi akan menghasilkan perolehan yang lebih baik, tetapi QPS yang lebih rendah. Demikian pula, nilai yang lebih rendah akan menghasilkan perolehan yang lebih rendah, tetapi QPS yang lebih tinggi. |
Waktu proses kueri (opsional) |
scann.pre_reordering_num_neighbors |
Jika disetel, flag database menentukan jumlah tetangga kandidat yang akan dipertimbangkan selama tahap pengurutan ulang setelah penelusuran awal mengidentifikasi sekumpulan kandidat. Tetapkan parameter ini ke nilai yang lebih tinggi daripada jumlah tetangga yang Anda inginkan untuk ditampilkan oleh kueri. Nilai yang lebih tinggi menghasilkan perolehan yang lebih baik, tetapi QPS yang lebih rendah. Tetapkan nilai ini ke 0 untuk menonaktifkan pengurutan ulang. Defaultnya adalah 0 jika PCA tidak diaktifkan selama pembuatan indeks. Jika tidak, defaultnya adalah 50 x K, dengan K adalah LIMIT yang ditentukan dalam kueri. |
Runtime kueri (opsional) |
scann.num_search_threads |
Jumlah thread penelusur untuk penelusuran multi-thread. Hal ini dapat membantu mengurangi latensi kueri tunggal dengan menggunakan lebih dari satu thread untuk penelusuran ScaNN ANN dalam aplikasi yang sensitif terhadap latensi. Setelan ini tidak meningkatkan latensi kueri tunggal jika database sudah terikat CPU. Nilai defaultnya adalah 2. |
Runtime kueri (opsional) |