Source: https://aiprimetech.io/it/docs/guides/best-practices/ [Home](/it/) / [Documentazione](/it/docs/) / Best practice per la produzione # Best practice per la produzione Cosa sistemare prima che un'integrazione gestisca traffico reale. Copia pagina [ Visualizza in Markdown](/it/docs/guides/best-practices.md) [ Chiedi a ChatGPT](https://chatgpt.com/?q=Read%20https%3A//aiprimetech.io/docs/guides/best-practices.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) [ Chiedi in Claude](https://claude.ai/new?q=Read%20https%3A//aiprimetech.io/docs/guides/best-practices.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) ## Affidabilità - Ritenta per i codici appropriati. 429, 500, 502, 503, 529 con backoff esponenziale e jitter. Non ritentare mai alla cieca 400, 401, 402 o 403. - Imposta i timeout. Una generazione lunga può legittimamente richiedere minuti; un socket bloccato non dovrebbe bloccare anche il worker. 120s è un limite massimo ragionevole per le chiamate senza streaming. - Limita la concorrenza con un semaforo, anziché inviare tutto insieme e ritentare le richieste rifiutate. - Prevedi un modello di riserva. Se il modello principale è sovraccarico, passare a un modello più piccolo è meglio che restituire un errore. ## Costo - Imposta max_tokens a ogni chiamata. È un limite di spesa, non un suggerimento. - Instrada in base all'attività — vedi [Controllo dei costi](/it/docs/guides/cost-control/). - Attiva [la cache dei prompt](/it/docs/guides/prompt-caching/) per i prefissi stabili. - Registra usage per ogni richiesta, con un'etichetta dell'attività, così da poter attribuire la spesa in seguito. ## Sicurezza - Le chiavi vanno conservate in variabili d'ambiente o in un gestore di segreti — mai nel repository, mai in un bundle client. - Una chiave per servizio, così la revoca è mirata. - Non costruire mai i prompt concatenando input utente non attendibili con le istruzioni; mantieni il contenuto dell'utente in un messaggio user e le istruzioni in system. - Considera l'output del modello non attendibile. Non eval e non eseguire SQL generato con un ruolo che dispone di permessi di scrittura. ## Osservabilità - Registra il modello, la latenza, usage, stop_reason e il tipo di attività che hai definito per ogni chiamata. - Imposta avvisi sul tasso di stop_reason: max_tokens — un aumento indica che le risposte vengono troncate. - Monitora il costo per tipo di attività, non solo il totale. I totali nascondono quale carico di lavoro è peggiorato. L'avviso più utile riguarda il troncamento, non gli errori. Una risposta troncata restituisce HTTP 200 e sembra corretta al sistema di monitoraggio, pur risultando errata per l'utente. [ErroriSemantica dei tentativi](/it/docs/api-reference/errors/)[Limiti di frequenzaConcorrenza](/it/docs/api-reference/rate-limits/)[Controllo dei costiGestione della spesa](/it/docs/guides/cost-control/) [PrecedenteMigrazione dall'API OpenAI](/it/docs/guides/migration-from-openai/)[AvantiRisoluzione dei problemi](/it/docs/guides/troubleshooting/)