𝗥𝗮𝘁𝗲 𝗟𝗶𝗺𝗶𝘁𝗶𝗻𝗴 𝗱𝗮𝗻 𝗖𝗶𝗿𝗰𝘂𝗶𝘁 𝗕𝗿𝗲𝗮𝗸𝗲𝗿 𝗱𝗮𝗹𝗮𝗺 𝗦𝗶𝘀𝘁𝗲𝗺 𝗔𝗜
Sistem AI terdistribusi sangatlah kompleks. Sistem ini menangani volume permintaan yang sangat besar dan inferensi model yang berat. Anda mengandalkan klaster GPU, basis data, dan API pihak ketiga. Satu komponen yang bermasalah atau lonjakan trafik dapat meruntuhkan seluruh sistem Anda.
Anda membutuhkan dua alat untuk melindungi sistem Anda: rate limiting dan circuit breaker.
Rate Limiting Rate limiting mencegah satu pengguna atau layanan menggunakan terlalu banyak sumber daya. Hal ini memastikan akses yang adil bagi semua orang.
Metode umum:
- Token Bucket: Terbaik untuk AI. Metode ini memungkinkan lonjakan aktivitas singkat sambil tetap menjaga rata-rata yang stabil.
- Leaky Bucket: Menjaga aliran permintaan yang konstan.
- Fixed Window: Sederhana tetapi dapat menyebabkan lonjakan pada awal jendela baru.
- Sliding Window: Lebih akurat daripada fixed window.
Tips pro untuk AI: Batasi berdasarkan jumlah token, bukan hanya jumlah permintaan. Satu prompt dengan 4.000 token menggunakan lebih banyak sumber daya daripada prompt dengan 10 token.
Circuit Breakers Circuit breaker memantau panggilan ke layanan seperti server GPU atau basis data vektor Anda. Jika sebuah layanan gagal terlalu sering, breaker akan terbuka (open). Ini akan segera menghentikan semua panggilan ke layanan tersebut. Hal ini mencegah kegagalan sistem secara total.
Sirkuit ini memiliki tiga status:
- Closed: Semuanya berjalan normal.
- Open: Layanan sedang gagal. Panggilan akan gagal dengan cepat (fail fast) atau menggunakan fallback.
- Half-Open: Sistem menguji layanan untuk melihat apakah sudah pulih.
Praktik terbaik:
- Pantau panggilan yang lambat. Jika LLM membutuhkan waktu terlalu lama, anggap itu sebagai kegagalan.
- Pisahkan jenis kesalahan. Jangan memicu breaker untuk kesalahan pengguna seperti 400 Bad Request. Hanya picu untuk kesalahan koneksi atau timeout.
Komunitas pembelajaran opsional: https://t.me/GyaanSetuAi