AI سسٹمز میں ریٹ لیمیٹنگ (Rate Limiting) اور سرکٹ بریکرز (Circuit Breakers)
تقسیم شدہ (Distributed) AI سسٹمز پیچیدہ ہوتے ہیں۔ یہ درخواستوں (requests) کے بھاری حجم اور ماڈل کے بھاری انفرنس (inference) کو سنبھالتے ہیں۔ آپ GPU کلسٹرز، ڈیٹا بیسز، اور تھرڈ پارٹی APIs پر انحصار کرتے ہیں۔ کوئی ایک خراب جز (component) یا ٹریفک میں اچانک اضافہ آپ کے پورے سسٹم کو کریش کر سکتا ہے۔
اپنے سسٹم کو محفوظ بنانے کے لیے آپ کو دو ٹولز کی ضرورت ہے: ریٹ لیمیٹنگ اور سرکٹ بریکرز۔
ریٹ لیمیٹنگ (Rate Limiting)
ریٹ لimiٹنگ کسی ایک صارف یا سروس کو بہت زیادہ وسائل استعمال کرنے سے روکتی ہے۔ یہ ہر ایک کے لیے منصفانہ رسائی کو یقینی بناتی ہے۔
عام طریقے:
- Token Bucket: AI کے لیے بہترین ہے۔ یہ ایک مستقل اوسط برقرار رکھتے ہوئے سرگرمیوں کے مختصر وقفوں (bursts) کی اجازت دیتا ہے۔
- Leaky Bucket: درخواستوں کے بہاؤ کو مستقل رکھتا ہے۔
- Fixed Window: سادہ ہے لیکن نئے ونڈو کے آغاز پر ٹریفک میں اچانک اضافہ (spikes) کا باعث بن سکتا ہے۔
- Sliding Window: فکسڈ ونڈوز کے مقابلے میں زیادہ درست ہے۔
AI کے لیے پرو ٹپ: صرف درخواستوں (requests) کے بجائے ٹوکن کی تعداد (token count) کے ذریعے حد مقرر کریں۔ 4,000 ٹوکنز والا ایک پرامپٹ (prompt) 10 ٹوکنز والے پرامپٹ کے مقابلے میں زیادہ وسائل استعمال کرتا ہے۔
سرکٹ بریکرز (Circuit Breakers)
سرکٹ بریکر آپ کے GPU سرور یا ویکٹر ڈیٹا بیس جیسی سروسز کو کی جانے والی کالز کی نگرانی کرتا ہے۔ اگر کوئی سروس بہت زیادہ بار ناکام ہوتی ہے، تو بریکر کھل (open) جاتا ہے۔ یہ فوری طور پر اس سروس کو کی جانے والی تمام کالز روک دیتا ہے۔ یہ پورے سسٹم کو کریش ہونے سے بچاتا ہے۔
سرکٹ تین حالتوں (states) پر عمل کرتا ہے:
- Closed: سب کچھ معمول کے مطابق کام کر رہا ہے۔
- Open: سروس ناکام ہو رہی ہے۔ کالز فوری طور پر فیل ہو جاتی ہیں یا فال بیک (fallback) استعمال کیا جاتا ہے۔
- Half-Open: سسٹم یہ دیکھنے کے لیے سروس کا تجربہ کرتا ہے کہ آیا وہ بحال ہو گئی ہے۔
بہترین طریقے:
- سست کالز (slow calls) پر نظر رکھیں۔ اگر کوئی LLM بہت زیادہ وقت لے رہا ہے، تو اسے ناکامی (failure) تصور کریں۔
- غلطیوں کی اقسام کو الگ کریں۔ صارف کی غلطیوں جیسے کہ
400 Bad Requestکے لیے بریکر کو مت چلائیں۔ اسے صرف کنکشن کی غلطیوں یا ٹائم آؤٹ (timeouts) کے لیے استعمال کریں۔
ماخذ (Source): https://dev.to/biao_lin_14b493a4944b1361/rate-limiting-and-circuit-breakers-in-distributed-ai-systems-1p56
اختیاری لرننگ کمیونٹی: https://t.me/GyaanSetuAi