𝗥𝗮𝘁𝗲 𝗟𝗶𝗺𝗶𝘁𝗶𝗻𝗴 𝗲 𝗖𝗶𝗿𝗰𝘂𝗶𝘁 𝗕𝗿𝗲𝗮𝗸𝗲𝗿𝘀 𝗻𝗲𝗶 𝘀𝗶𝘀𝘁𝗲𝗺𝗶 𝗔𝗜
I sistemi AI distribuiti sono complessi. Gestiscono enormi volumi di richieste e pesanti processi di inferenza dei modelli. Ti affidi a cluster GPU, database e API di terze parti. Un singolo componente difettoso o un picco di traffico possono mandare in crash l'intero sistema.
Hai bisogno di due strumenti per proteggere il tuo sistema: il rate limiting e i circuit breaker.
Rate Limiting Il rate limiting impedisce a un singolo utente o servizio di consumare troppe risorse. Garantisce un accesso equo per tutti.
Metodi comuni:
- Token Bucket: Il migliore per l'IA. Consente brevi picchi di attività mantenendo una media costante.
- Leaky Bucket: Mantiene un flusso costante di richieste.
- Fixed Window: Semplice, ma può causare picchi all'inizio di una nuova finestra.
- Sliding Window: Più accurato rispetto alle finestre fisse.
Consiglio professionale per l'IA: Limita in base al numero di token, non solo al numero di richieste. Un prompt con 4.000 token consuma più risorse di un prompt con 10 token.
Circuit Breakers Un circuit breaker monitora le chiamate verso servizi come il tuo server GPU o il database vettoriale. Se un servizio fallisce troppe volte, l'interruttore si apre. Interrompe immediatamente tutte le chiamate verso quel servizio. Questo evita il crash totale del sistema.
Il circuito segue tre stati:
- Closed: Tutto funziona normalmente.
- Open: Il servizio sta fallendo. Le chiamate falliscono rapidamente o utilizzano un fallback.
- Half-Open: Il sistema testa il servizio per vedere se si è ripreso.
Best practice:
- Monitora le chiamate lente. Se un LLM impiega troppo tempo, consideralo un fallimento.
- Separa i tipi di errore. Non far scattare l'interruttore per errori dell'utente come 400 Bad Request. Fallo scattare solo per errori di connessione o timeout.
Community di apprendimento opzionale: https://t.me/GyaanSetuAi