Menetapkan Kebijakan Auto Scaling untuk Penerapan Titik Akhir Multi-Model - Amazon SageMaker

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

Menetapkan Kebijakan Auto Scaling untuk Penerapan Titik Akhir Multi-Model

SageMaker titik akhir multi-model sepenuhnya mendukung penskalaan otomatis, yang mengelola replika model untuk memastikan skala model berdasarkan pola lalu lintas. Sebaiknya Anda mengonfigurasi titik akhir multi-model dan ukuran instans berdasarkan Rekomendasi instans untuk penerapan titik akhir multi-model dan juga menyiapkan penskalaan otomatis berbasis instans untuk titik akhir Anda. Tingkat pemanggilan yang digunakan untuk memicu peristiwa skala otomatis didasarkan pada kumpulan prediksi agregat di seluruh set lengkap model yang dilayani oleh titik akhir. Untuk detail tambahan tentang pengaturan penskalaan otomatis titik akhir, lihat Menskalakan Model Amazon SageMaker Secara Otomatis.

Anda dapat menyiapkan kebijakan penskalaan otomatis dengan metrik yang telah ditentukan dan kustom pada keduanya CPU dan titik akhir multi-model yang GPU didukung.

catatan

SageMaker metrik titik akhir multi-model tersedia dengan perincian satu menit.

Menentukan kebijakan penskalaan

Untuk menentukan metrik dan nilai target untuk kebijakan penskalaan, Anda dapat mengonfigurasi kebijakan penskalaan pelacakan target. Anda dapat menggunakan metrik yang telah ditentukan sebelumnya atau metrik khusus.

Konfigurasi kebijakan penskalaan diwakili oleh JSON blok. Anda menyimpan konfigurasi kebijakan penskalaan sebagai JSON blok dalam file teks. Anda menggunakan file teks tersebut saat menjalankan AWS CLI atau Application Auto API Scaling. Untuk informasi selengkapnya tentang sintaks konfigurasi kebijakan, lihat TargetTrackingScalingPolicyConfiguration di Referensi APIPenskalaan Otomatis Aplikasi.

Opsi berikut tersedia untuk menetapkan konfigurasi kebijakan penskalaan pelacakan target.

Gunakan metrik yang telah ditentukan

Untuk menentukan kebijakan penskalaan pelacakan target untuk varian dengan cepat, gunakan metrik yang telah ditentukan sebelumnya. SageMakerVariantInvocationsPerInstance SageMakerVariantInvocationsPerInstanceadalah jumlah rata-rata kali per menit bahwa setiap instance untuk varian dipanggil. Kami sangat menyarankan menggunakan metrik ini.

Untuk menggunakan metrik yang telah ditentukan dalam kebijakan penskalaan, buat konfigurasi pelacakan target untuk kebijakan Anda. Dalam konfigurasi pelacakan target, sertakan PredefinedMetricSpecification untuk metrik yang telah ditentukan dan a TargetValue untuk nilai target metrik tersebut.

Contoh berikut adalah konfigurasi kebijakan tipikal untuk penskalaan pelacakan target untuk varian. Dalam konfigurasi ini, kami menggunakan metrik yang SageMakerVariantInvocationsPerInstance telah ditentukan untuk menyesuaikan jumlah instance varian sehingga setiap instance memiliki InvocationsPerInstance metrik. 70

{"TargetValue": 70.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "InvocationsPerInstance" } }
catatan

Kami menyarankan Anda menggunakan InvocationsPerInstance saat menggunakan titik akhir multi-model. Metrik ini tergantung pada persyaratan latensi aplikasi Anda. TargetValue Kami juga menyarankan Anda memuat pengujian titik akhir untuk menyiapkan nilai parameter penskalaan yang sesuai. Untuk mempelajari lebih lanjut tentang pengujian beban dan menyiapkan penskalaan otomatis untuk titik akhir Anda, lihat blog Mengonfigurasi titik akhir inferensi penskalaan otomatis di Amazon. SageMaker

Gunakan metrik khusus

Jika Anda perlu menentukan kebijakan penskalaan pelacakan target yang memenuhi persyaratan kustom Anda, tentukan metrik kustom. Anda dapat menentukan metrik kustom berdasarkan metrik varian produksi apa pun yang berubah sebanding dengan penskalaan.

Tidak semua SageMaker metrik berfungsi untuk pelacakan target. Metrik harus merupakan metrik pemanfaatan yang valid, dan harus menggambarkan seberapa sibuk sebuah instance. Nilai metrik harus meningkat atau menurun dalam proporsi terbalik dengan jumlah contoh varian. Artinya, nilai metrik harus berkurang ketika jumlah instance meningkat.

penting

Sebelum menerapkan penskalaan otomatis dalam produksi, Anda harus menguji penskalaan otomatis dengan metrik khusus Anda.

Contoh metrik kustom untuk titik akhir multi-model yang CPU didukung

Contoh berikut adalah konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, untuk model bernamamy-model, metrik kustom CPUUtilization menyesuaikan jumlah instance pada titik akhir berdasarkan CPU pemanfaatan rata-rata 50% di semua instance.

{"TargetValue": 50, "CustomizedMetricSpecification": {"MetricName": "CPUUtilization", "Namespace": "/aws/sagemaker/Endpoints", "Dimensions": [ {"Name": "EndpointName", "Value": "my-endpoint" }, {"Name": "ModelName","Value": "my-model"} ], "Statistic": "Average", "Unit": "Percent" } }

Contoh metrik kustom untuk titik akhir multi-model yang GPU didukung

Contoh berikut adalah konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, untuk model bernamamy-model, metrik kustom GPUUtilization menyesuaikan jumlah instance pada titik akhir berdasarkan GPU pemanfaatan rata-rata 50% di semua instance.

{"TargetValue": 50, "CustomizedMetricSpecification": {"MetricName": "GPUUtilization", "Namespace": "/aws/sagemaker/Endpoints", "Dimensions": [ {"Name": "EndpointName", "Value": "my-endpoint" }, {"Name": "ModelName","Value": "my-model"} ], "Statistic": "Average", "Unit": "Percent" } }

Tambahkan periode cooldown

Untuk menambahkan periode cooldown untuk menskalakan titik akhir Anda, tentukan nilai, dalam detik, untuk. ScaleOutCooldown Demikian pula, untuk menambahkan periode cooldown untuk penskalaan dalam model Anda, tambahkan nilai, dalam detik, untuk. ScaleInCooldown Untuk informasi selengkapnya tentang ScaleInCooldown danScaleOutCooldown, lihat TargetTrackingScalingPolicyConfiguration di Referensi Application Auto Scaling. API

Berikut ini adalah contoh konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, metrik yang SageMakerVariantInvocationsPerInstance telah ditentukan digunakan untuk menyesuaikan penskalaan berdasarkan rata-rata 70 di semua instance varian tersebut. Konfigurasi ini menyediakan periode pendinginan penskalaan ke dalam selama 10 menit dan periode pendinginan penskalaan ke luar selama 5 menit.

{"TargetValue": 70.0, "PredefinedMetricSpecification": {"PredefinedMetricType": "SageMakerVariantInvocationsPerInstance" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }