Kebijakan atau plug-in ini melakukan throttling traffic secara dinamis berdasarkan penggunaan token, bukan berdasarkan jumlah permintaan atau isi permintaan, sehingga sangat cocok untuk layanan Large Language Model (LLM) dan skenario dengan konkurensi tinggi. Kebijakan throttling memungkinkan Anda mengonfigurasi aturan throttling untuk consumer dalam berbagai dimensi, seperti identitas, parameter header request, parameter query, dan alamat IP klien. Selain itu, kebijakan ini mendukung penagihan dan throttling real-time berdasarkan jumlah total token yang dikonsumsi dalam satu panggilan API. Mode throttling berbasis token ini secara efektif mencegah sistem overload dan penyalahgunaan API. Kebijakan ini juga memastikan stabilitas operasi layanan inti dalam skenario kompleks dengan mempertimbangkan karakteristik konsumsi resource dari beban kerja komputasi LLM.
Pengenalan kebijakan
Mencegah sistem overload: Kebijakan ini secara efektif membatasi panggilan berfrekuensi tinggi atau request berbahaya untuk mencegah kerusakan sistem atau penurunan performa akibat overload. Pembatasan ini dicapai menggunakan pengaturan kebijakan yang fleksibel berdasarkan dimensi seperti consumer, header, parameter query, cookie, atau alamat IP klien. Jika digabungkan dengan kebijakan caching, kebijakan ini dapat semakin meningkatkan performa sistem.
Memungkinkan throttling dinamis: Anda dapat melakukan throttling pada consumer dengan berbagai tingkat granularitas, seperti per detik, per menit, per jam, dan per hari. Anda juga dapat menyesuaikan aturan throttling sesuai kebutuhan untuk memastikan sistem Anda berjalan stabil di bawah konkurensi tinggi.
Mendukung beberapa aturan pencocokan: Kebijakan throttling mendukung beberapa aturan pencocokan untuk memenuhi kebutuhan skenario bisnis yang kompleks dengan prioritas yang berbeda-beda.
Mencegah serangan: Dengan melakukan throttling pada consumer, header, parameter query, atau cookie tertentu, Anda dapat secara efektif membatasi akses crawler atau tool otomatis untuk melindungi keamanan data.
Skenario
Skenario konkurensi tinggi: Dalam skenario seperti promosi e-commerce, Anda dapat melakukan throttling pada pemanggil API berdasarkan penggunaan token per unit waktu. Hal ini mencegah panggilan berfrekuensi tinggi yang berbahaya serta memastikan stabilitas dan keadilan layanan selama promosi.
Panggilan layanan AI: Anda dapat melakukan throttling pada panggilan ke API LLM untuk mencegah penurunan kualitas layanan atau kerusakan sistem yang disebabkan oleh lonjakan traffic.
Sistem multi-tenant: Dalam platform terbuka atau arsitektur multi-tenant, Anda dapat menetapkan kuota throttling yang berbeda untuk tenant yang berbeda guna memastikan keadilan dan isolasi resource.
Pertahanan terhadap serangan: Anda dapat menerapkan mekanisme throttling untuk melindungi sistem dari serangan crawler, serangan DDoS, serta penyalahgunaan API.
Prosedur
Masuk ke konsol AI Gateway dan pilih Instance. Di bilah menu atas, pilih wilayah, lalu klik ID instance target.
Di panel navigasi kiri, pilih Model API, lalu klik nama API target untuk masuk ke halaman API Details.
Klik Policies and Plug-ins, aktifkan Current limiting, dan konfigurasikan parameter yang relevan.
Item Konfigurasi
Deskripsi
Current limiting
Aktifkan atau nonaktifkan fitur throttling. Secara default, fitur ini dinonaktifkan.
Throttling Policy
Kebijakan throttling mencakup lima jenis Conditions:
By request header: Misalnya, membatasi request dengan pengidentifikasi
betadi header menjadi 100 token per menit.By request query: Misalnya, membatasi request dengan parameter query
user_id=1menjadi 100 token per menit.By request cookie: Misalnya, batasi permintaan yang mengandung pengidentifikasi tertentu dalam cookie hingga maksimal 100 token per menit.
By Consumer: Misalnya, membatasi semua consumer menjadi 1.000 token per menit.
PentingUntuk mengonfigurasi throttling berdasarkan consumer, Anda harus mengaktifkan consumer authentication.
By client IP address: Misalnya, membatasi setiap alamat IP klien menjadi 100 token per menit.
Setiap kondisi penilaian mendukung empat Throttling Rules: Exact Match, Prefix Match, Regex Match, dan Random Match. Prioritasnya adalah: Exact match > Prefix match > Regex match > Any match.
CatatanJika Anda mengonfigurasi beberapa aturan, request akan diblokir jika memenuhi salah satu aturan tersebut.
Range dapat berupa Every Second, Every Minute, Every Hour, atau Every Day.
CatatanThrottling dilakukan berdasarkan jumlah token inbound atau outbound oleh LLM.
Konfirmasi konfigurasi dan klik Save.