GPU-percepatan untuk pengindeksan vektor - OpenSearch Layanan Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

GPU-percepatan untuk pengindeksan vektor

Akselerasi GPU membantu Anda membangun database vektor skala besar lebih cepat dan lebih efisien. Anda dapat mengaktifkan fitur ini pada OpenSearch domain baru atau yang sudah ada dan koleksi Tanpa OpenSearch Server. Fitur ini menggunakan akselerasi GPU untuk mengurangi waktu yang dibutuhkan untuk mengindeks data ke dalam indeks vektor.

Dengan akselerasi GPU, Anda dapat meningkatkan kecepatan pengindeksan vektor hingga 10X pada seperempat dari biaya pengindeksan.

Prasyarat

Akselerasi GPU didukung pada OpenSearch domain yang menjalankan OpenSearch versi 3.1 atau yang lebih baru, dan OpenSearch koleksi Tanpa Server. Untuk informasi lebih lanjut, lihatMemutakhirkan domain OpenSearch Layanan Amazon, UpdateDomainConfig, dan UpdateCollection APIs.

Cara kerjanya

Indeks vektor memerlukan sumber daya komputasi yang signifikan untuk membangun struktur data seperti grafik Hierarchical Navigable Small Worlds (HNSW). Saat Anda mengaktifkan akselerasi GPU di domain atau koleksi Anda, OpenSearch secara otomatis mendeteksi peluang untuk mempercepat pembuatan indeks dan membongkar build indeks ke instans GPU. OpenSearch Layanan mengelola instans GPU atas nama Anda, menetapkannya ke domain atau koleksi Anda bila diperlukan. Ini berarti Anda tidak mengelola pemanfaatan atau membayar waktu idle.

Anda hanya membayar untuk pemrosesan yang berguna melalui Compute Units (OCU) - Vector Acceleration. Setiap Vector Acceleration OCU adalah kombinasi dari sekitar 8 GiB memori CPU, 2 CPUs v, dan 6 GiB memori GPU. Untuk informasi selengkapnya, lihat Harga Akselerasi GPU.

Untuk mengaktifkan akselerasi GPU untuk domain atau koleksi Anda, lihatMengaktifkan akselerasi GPU.

Harga Akselerasi GPU

AWS menagih Anda saat OpenSearch mendeteksi peluang untuk mempercepat beban kerja pembuatan indeks domain atau koleksi Anda. Setiap Vector Acceleration OCU adalah kombinasi dari sekitar 8 GiB memori CPU, 2 CPUs v, dan 6 GiB memori GPU.

AWS tagihan OCU dengan granularitas tingkat kedua. Dalam laporan akun Anda, Anda akan melihat entri untuk komputasi dalam OCU-jam.

Misalnya, saat Anda menggunakan akselerasi GPU selama satu jam untuk membuat indeks, menggunakan 2 vCPU dan 1 GiB memori GPU, Anda ditagih 1 OCU. Jika Anda menggunakan memori CPU 9 GiB saat menggunakan akselerasi GPU, Anda ditagih 2 OCU.

OpenSearch Tanpa server menambahkan tambahan OCUs dengan penambahan 1 OCU berdasarkan daya komputasi dan penyimpanan yang diperlukan untuk mendukung koleksi Anda. Anda dapat mengonfigurasi jumlah maksimum OCUs untuk akun Anda untuk mengontrol biaya.

catatan

Jumlah yang OCUs disediakan setiap saat dapat bervariasi dan tidak tepat. Seiring waktu, algoritma yang OpenSearch dan penggunaan OpenSearch Tanpa Server akan terus meningkat untuk meminimalkan penggunaan sistem dengan lebih baik.

Untuk detail harga selengkapnya, lihat Harga OpenSearch Layanan Amazon.

Akselerasi GPU dan operasi tulis

Akselerasi GPU diaktifkan ketika tingkat konsumsi vektor (MB/detik) OpenSearch berada dalam kisaran tertentu. Pada OpenSearch domain, Anda memiliki fleksibilitas untuk mengonfigurasi rentang ini melalui index.knn.remote_index_build.size.min danindex.knn.remote_index_build.size.max. Misalnya, dengan rentang default yang lebih rendah sebesar 50 MB, menulis 15.000 vektor presisi penuh dengan 768 dimensi antara interval penyegaran akan memicu akselerasi GPU secara default.

Data ditulis dengan operasi API berikut:

Akselerasi GPU diaktifkan dengan penggabungan segmen otomatis dan manual.

Konfigurasi indeks yang didukung

Mesin Faiss mendukung akselerasi GPU.

Konfigurasi berikut tidak mendukung akselerasi GPU:

Praktik terbaik

Ikuti praktik terbaik ini untuk memaksimalkan manfaat akselerasi GPU untuk beban kerja pencarian vektor Anda:

  • Tingkatkan klien indeks - Untuk memanfaatkan sepenuhnya GPUs selama pembuatan indeks, tingkatkan jumlah klien indeks yang menelan data ke dalamnya OpenSearch. Hal ini memungkinkan paralelisasi dan pemanfaatan sumber daya GPU yang lebih baik.

  • Sesuaikan ambang perkiraan - Ubah index.knn.advanced.approximate_threshold pengaturan untuk memastikan bahwa pembuatan indeks segmen yang lebih kecil tidak terjadi, yang meningkatkan kecepatan konsumsi secara keseluruhan. Nilai 10.000 adalah titik awal yang baik. Untuk koleksi, Anda harus secara eksplisit menentukan nilai untuk setelan ini.

  • Optimalkan ukuran pecahan - Coba buat pecahan yang memiliki setidaknya 1 juta dokumen. Pecahan dengan jumlah dokumen yang kurang dari ini mungkin tidak melihat manfaat keseluruhan dari akselerasi GPU.