𝗥𝗮𝘁𝗲 𝗟𝗶𝗺𝗶𝘁𝗶𝗻𝗴 𝗮𝗻𝗱 𝗖𝗶𝗿𝗰𝘂𝗶𝘁 𝗕𝗿𝗲𝗮𝗸𝗲𝗿𝘀 𝗶𝗻 𝗔𝗜 𝗦𝘆𝘀𝘁𝗲𝗺𝘀 -> AI સિસ્ટમ્સમાં Rate Limiting અને Circuit Breakers

ડિસ્ટ્રિબ્યુટેડ AI સિસ્ટમ્સ જટિલ હોય છે. તેઓ વિનંતીઓના (requests) વિશાળ જથ્થા અને ભારે મોડેલ ઇન્ફરન્સ (model inference) ને હેન્ડલ કરે છે. તમે GPU ક્લસ્ટર્સ, ડેટાબેઝ અને થર્ડ-પાર્ટી APIs પર નિર્ભર હોવ છો. એક ખરાબ ઘટક અથવા ટ્રાફિકમાં અચાનક વધારો તમારી આખી સિસ્ટમને ક્રેશ કરી શકે છે.

તમારી સિસ્ટમને સુરક્ષિત રાખવા માટે તમારે બે સાધનોની જરૂર છે: rate limiting અને circuit breakers.

Rate Limiting Rate limiting કોઈ એક યુઝર અથવા સર્વિસને વધુ પડતા રિસોર્સિસનો ઉપયોગ કરતા અટકાવે છે. તે દરેક માટે સમાન એક્સેસ સુનિશ્ચિત કરે છે.

સામાન્ય પદ્ધતિઓ:

AI માટે પ્રો ટિપ: માત્ર વિનંતીઓ (requests) દ્વારા નહીં, પણ ટોકન કાઉન્ટ (token count) દ્વારા મર્યાદા નક્કી કરો. 4,000 ટોકન્સ ધરાવતું એક પ્રોમ્પ્ટ 10 ટોકન્સ ધરાવતા પ્રોમ્પ્ટ કરતા વધુ રિસોર્સિસનો ઉપયોગ કરે છે.

Circuit Breakers Circuit breaker તમારા GPU સર્વર અથવા vector database જેવી સર્વિસના કોલ્સ પર દેખરેખ રાખે છે. જો કોઈ સર્વિસ ઘણી વખત નિષ્ફળ જાય, તો બ્રેકર 'ઓપન' થઈ જાય છે. તે તરત જ તે સર્વિસના તમામ કોલ્સ બંધ કરી દે છે. આનાથી આખી સિસ્ટમ ક્રેશ થતી અટકે છે.

સર્કિટ ત્રણ સ્ટેટ્સ (states) અનુસરે છે:

શ્રેષ્ઠ પદ્ધતિઓ (Best practices):

Source: https://dev.to/biao_lin_14b493a4944b1361/rate-limiting-and-circuit-breakers-in-distributed-ai-systems-1p56

Optional learning community: https://t.me/GyaanSetuAi