Monitoraggio nell'era dell'AI: cosa cambia quando la tua app usa LLM
Le app AI richiedono monitoraggio diverso. Traccia costi API LLM, latenza, problemi di qualità e rileva quando le allucinazioni danneggiano gli utenti.
Il monitoraggio tradizionale si rompe con l'AI#
La tua app prima funzionava così:
Richiesta → Il tuo codice → Database → Risposta (deterministica)
Semplice da monitorare: il codice è in esecuzione? Il database risponde? Le risposte sono veloci?
Ora ha questo aspetto:
Richiesta → Il tuo codice → API LLM → LLM elabora token per token →
Database → Risposta (non deterministica)
Tre nuovi problemi:
- Il costo è imprevedibile: le API LLM addebitano per token. La richiesta di un utente potrebbe costare $0,01 o $1,00 a seconda della lunghezza dell'output.
- La qualità è difficile da misurare: il monitoraggio tradizionale dice "richiesta riuscita". Ma l'AI ha dato un output utile o un'allucinazione?
- La latenza è variabile: le risposte LLM possono richiedere 500ms o oltre 30 secondi a seconda del modello e del numero di token.
Il monitoraggio tradizionale non rileva questi problemi.
Cosa deve tracciare il monitoraggio nell'era dell'AI#
1. Costo e budget delle API LLM#
Il problema:
Giorno Normale:
- 10.000 richieste a OpenAI
- Media 500 token di input, 200 token di output
- Costo: 10.000 × ($0,005 + $0,015) = $200/giorno
Giorno Cattivo (inaspettato):
- 50.000 richieste a OpenAI
- Media 2.000 token di input, 1.000 token di output
- Costo: 50.000 × ($0,05 + $0,15) = $10.000/giorno
Senza monitoraggio: non lo sai finché non arriva la fattura AWS
Cosa monitorare:
✅ Token usati per richiesta
✅ Token totali usati oggi (vs. budget giornaliero)
✅ Costo per richiesta
✅ Spesa totale (vs. budget mensile)
✅ Costo per utente (identifica gli utenti pesanti)
✅ Trend di costo (il costo sta crescendo? Perché?)
Soglie di avviso:
- Costo >2x il normale per l'ora → Attenzione
- Costo >5x il normale per l'ora → Avviso critico
- Spesa mensile >80% del budget → Avviso
2. Qualità dell'output AI#
Il problema:
Il Monitor Tradizionale dice: "Richiesta riuscita, tempo di risposta 2s, status 200"
Realtà: l'AI ha avuto un'allucinazione (ha dato informazioni false)
Esperienza Utente: utente frustrato
Cosa monitorare:
✅ Rilevamento delle allucinazioni
- L'AI ha inventato fatti? (Confronta con la knowledge base)
- L'AI si è contraddetta? (Verifica la coerenza)
- L'AI ha fatto riferimento a documenti inesistenti? (Convalida)
✅ Metriche di qualità della risposta
- La risposta ha risposto alla domanda dell'utente?
- La risposta includeva le sezioni richieste?
- La risposta ha raggiunto la soglia minima di accuratezza?
✅ Feedback degli utenti
- L'utente ha valutato la risposta come utile?
- L'utente ha segnalato la risposta come sbagliata?
- L'utente ha posto una domanda di follow-up (suggerendo confusione)?
Esempio di implementazione:
Dopo che l'LLM genera la risposta:
1. Controlla: la risposta cita un documento specifico?
2. Verifica: quel documento esiste nella knowledge base
3. Avvisa se: la risposta cita una fonte inesistente (allucinazione)
Dopo che l'utente riceve la risposta:
1. Raccogli: feedback 👍 / 👎
2. Traccia: % di risposte valutate utili
3. Avvisa se: la valutazione di utilità scende >10% (degrado di qualità)
3. Latenza e rate limit degli LLM#
Il problema:
Rate limit OpenAI: 3.500 richieste al minuto
La tua app: 4.000 richieste al minuto durante il picco
Comportamento: 500 richieste in coda o rifiutate
Senza monitoraggio: gli utenti vedono timeout, non sanno perché
Cosa monitorare:
✅ Profondità della coda di richieste
- Quante richieste in attesa di risposta LLM?
- Coda in crescita = capacità insufficiente
✅ Stato del rate limit
- Ti stai avvicinando al rate limit di OpenAI?
- Stai ricevendo errori 429 (Too Many Requests)?
✅ Distribuzione della latenza
- 95° percentile di latenza
- 99° percentile di latenza
- Gli outlier stanno crescendo?
✅ Differenze di performance tra modelli
- GPT-4 è più lento ma più accurato
- GPT-3.5 è più veloce ma meno accurato
- I tempi di risposta dei modelli stanno divergendo?
Soglie di avviso:
- Profondità coda >1.000 richieste → Attenzione (backlog in costruzione)
- Errori 429 >1% → Critico (rate limited)
- Latenza 95° percentile >10s → Attenzione (degrado)
- Latenza 99° percentile >30s → Critico (timeout probabili)
Pattern di monitoraggio specifici per AI#
Pattern 1: rilevamento delle anomalie di costo#
Budget Giornaliero: $500
Spesa Giornaliera Normale: $200
Monitoraggio:
- Traccia la spesa in tempo reale
- Rileva quando la spesa supera il normale del 50%
- Se il normale è $200/giorno e l'effettivo è $300/giorno entro le 14:00 → Avviso
- Causa principale: o più utenti O ogni richiesta è più costosa
Pattern 2: rilevamento del degrado di qualità#
Metriche di Riferimento:
- Tasso di allucinazione: <2%
- Valutazione di utilità degli utenti: 85%
- Lunghezza media delle risposte: 300 token
Dopo il deploy:
- Tasso di allucinazione: 8%
- Utilità per gli utenti: 72%
- Risposta media: 500 token
Avviso: la qualità si è degradata (allucinazioni in aumento, utilità in calo)
Pattern 3: tracking delle performance dei modelli#
In produzione, usi 3 modelli:
- GPT-4: Costoso, accurato, lento
- GPT-3.5: Economico, adeguato, veloce
- Claude-Haiku: Molto economico, buono, medio
Il monitoraggio traccia per modello:
- Latenza
- Costo
- Qualità (tramite feedback degli utenti)
- Conteggio degli usi
Se Claude-Haiku diventa più veloce/economico con stessa qualità → considera di usarlo di più
Se la latenza di GPT-4 aumenta del 50% → avviso, possibile problema API
Pattern 4: trend di utilizzo dei token#
Riferimento:
- Token di input per richiesta: 500
- Token di output per richiesta: 200
- Totale giornaliero: 10M input, 2M output
Dopo modifica della funzionalità (aggiunto contesto):
- Token di input per richiesta: 2.000 (aumento 4x)
- Token di output per richiesta: 200
- Totale giornaliero: 40M input, 2M output (aumento di costo 4x)
Avviso: il costo è aumentato inaspettatamente. Rivedi cosa è cambiato.
Implementazione: configurare il monitoraggio AI#
Step 1: strumenta le tue chiamate LLM (2 ore)#
Aggiungi monitoraggio a ogni chiamata API LLM:
import time
from openai import OpenAI
def call_llm_monitored(prompt, user_id, request_type):
start_time = time.time()
try:
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": prompt}]
)
latency = time.time() - start_time
tokens_input = response.usage.prompt_tokens
tokens_output = response.usage.completion_tokens
cost = (tokens_input * 0.0005 + tokens_output * 0.0015) / 1000
# Send metrics to monitoring
monitor.track({
"event": "llm_call",
"model": "gpt-3.5-turbo",
"latency_ms": latency * 1000,
"input_tokens": tokens_input,
"output_tokens": tokens_output,
"cost_cents": cost * 100,
"user_id": user_id,
"request_type": request_type,
"status": "success"
})
return response.choices[0].message.content
except Exception as e:
monitor.track({
"event": "llm_call",
"status": "error",
"error": str(e),
"user_id": user_id
})
raise
Step 2: traccia il costo in tempo reale#
Aggrega giornalmente:
- Richieste totali: 5.000
- Token di input totali: 2,5M
- Token di output totali: 500K
- Costo totale: $18,50
- Costo per richiesta: $0,0037
Confronta con il budget:
- Budget giornaliero: $25
- Usato: $18,50 (74% del budget)
- Rimanente: $6,50
Step 3: misura la qualità dell'output#
Per AI di supporto clienti:
1. Dopo che la risposta è generata: chiedi al cliente "È stato utile?"
2. Se clic 👎 → segna come bassa qualità
3. Traccia: che % di risposte sono valutate utili?
Riferimento: 90% utile
Dopo deployment: 75% utile
Avviso: la qualità è scesa di 15 punti
Step 4: imposta gli avvisi#
Critici (paging immediato):
- Costo/ora >5x il normale (indica utilizzo LLM fuori controllo)
- Errori 429 (API LLM rate limited)
- Tasso di allucinazione >10%
- Valutazione di utilità degli utenti <50%
Attenzione (avviso Slack):
- Costo/ora >2x il normale
- Latenza P95 >10 secondi
- Profondità coda >500 richieste
- Tasso di allucinazione >5%
Info (riepilogo giornaliero):
- Trend di costo (la spesa sta aumentando?)
- Confronto delle performance dei modelli
- Trend del feedback degli utenti
Errori comuni nel monitoraggio AI#
Errore 1: non monitorare l'utilizzo dei token#
Cosa succede: la tua app chiama l'LLM con contesto sempre più lungo. L'utilizzo dei token cresce. Il costo cresce. Non te ne accorgi finché la fattura mensile non è 10x superiore al previsto.
Soluzione: traccia i token per richiesta. Avvisa se il numero di token aumenta >50%.
Errore 2: misurare solo la velocità di risposta, non la qualità#
Cosa succede: ottimizzi per la latenza. Il modello diventa più veloce ma genera più allucinazioni. Gli utenti perdono fiducia. I ricavi calano.
Soluzione: monitora sia la latenza CHE la qualità (tasso di allucinazione, feedback utenti).
Errore 3: non tracciare lo stato delle API LLM#
Cosa succede: OpenAI ha un'interruzione. Le tue richieste si accumulano in coda. Gli utenti aspettano oltre 30 secondi. Pensi che il tuo codice sia rotto.
Soluzione: monitora separatamente la salute delle API OpenAI. Sai quando il problema è dalla loro parte vs. dalla tua.
Errore 4: usare lo stesso avviso di costo per modelli diversi#
Cosa succede: imposti l'avviso "Costo >$10/giorno". Funziona per GPT-3.5. Ma aggiungi GPT-4 (più costoso). Ora l'avviso scatta costantemente.
Soluzione: imposta avvisi di costo per modello. GPT-3.5: avviso a $10/giorno. GPT-4: avviso a $50/giorno.
Errore 5: non monitorare il feedback degli utenti#
Cosa succede: l'AI genera allucinazioni. Il monitoraggio tradizionale dice "tutto funziona". Gli utenti ottengono informazioni sbagliate.
Soluzione: chiedi agli utenti di valutare le risposte. Traccia le valutazioni. Avvisa se le valutazioni scendono.
Errore 6: ignorare il costo per utente#
Cosa succede: le richieste di un utente costano $10/mese. Lo addebiti $5/mese di abbonamento. Stai perdendo soldi per utente.
Soluzione: traccia il costo per utente. Avvisa se il costo di un utente supera il suo contributo di fatturato.
Strumenti di monitoraggio AI (status 2026)#
Monitoraggio LLM integrato:
- Langsmith (monitoraggio LangChain) — Traccia le chiamate LLM da LangChain
- Dashboard API OpenAI — Tracking base di token/costo
- Console Anthropic — Utilizzo API Claude
Strumenti APM generali (con tracking AI aggiunto):
- Datadog — Aggiunto monitoraggio LLM (costo, latenza, qualità)
- New Relic — Aggiunto tracking LLM
- Dynatrace — Aggiunto monitoraggio AI
Monitoraggio AI specializzato:
- Arize — Monitoraggio modelli AI (rilevamento allucinazioni, data drift)
- Whylabs — Monitoraggio qualità modelli
- Arthur.ai — Governance e monitoraggio AI
Setup migliore: Langsmith o console Anthropic per il tracking specifico LLM + Datadog per la correlazione con le metriche applicative.
Esempio reale di monitoraggio AI#
Scenario: chatbot di supporto clienti che usa GPT-4
Metriche di riferimento:
- Richieste/giorno: 10.000
- Token medi di input: 1.500
- Token medi di output: 300
- Costo: $65/giorno
- Valutazione utenti: 88% utile
- Tasso di allucinazione: 1%
Dopo l'aggiornamento del prodotto (aggiunto contesto):
- Richieste/giorno: 10.000 (uguale)
- Token medi di input: 3.500 (+133%)
- Token medi di output: 300 (uguale)
- Costo: $116/giorno (+78%)
- Valutazione utenti: 92% utile (+4%)
- Tasso di allucinazione: 0,5% (-50%)
Analisi:
- Il costo è aumentato del 78% ma la qualità è migliorata
- Calcolo ROI: $51/giorno extra × 30 giorni = $1.530/mese
- Beneficio: 4% in più di utenti pensa che la risposta sia utile
- Se 10.000 utenti/giorno, 4% di miglioramento = 400 utenti soddisfatti in più al giorno
- Valore: prevenire escalation di supporto (risparmio di $5 per escalation prevenuta)
- Pareggio: 306 escalation prevenute/mese = $1.530
Decisione: l'aumento di costo è giustificato. L'aggiornamento del prodotto ha aumentato la soddisfazione del cliente abbastanza da compensare il maggior costo LLM.
Senza monitoraggio AI: decisione presa alla cieca basandosi sull'istinto.
Riepilogo: monitorare le applicazioni AI#
Le app AI richiedono monitoraggio oltre le metriche di performance tradizionali:
- Monitoraggio dei costi — traccia l'utilizzo dei token e la spesa in tempo reale. Avvisa sulle anomalie di costo.
- Monitoraggio della qualità — misura la qualità dell'output AI (tasso di allucinazione, feedback utenti).
- Monitoraggio della latenza — traccia i tempi di risposta LLM e la profondità della coda.
- Avvisi di budget — avvisa prima di superare la spesa per le chiamate API LLM.
- Feedback degli utenti — raccogli le valutazioni per misurare la qualità senza revisione manuale.
Checklist rapida di implementazione:
- ✅ Strumenta tutte le chiamate LLM con tracking dei token
- ✅ Calcola e monitora il costo per richiesta
- ✅ Traccia la spesa totale giornaliera/mensile vs. budget
- ✅ Monitora la latenza e i rate limit delle API LLM
- ✅ Raccogli il feedback degli utenti sulla qualità della risposta
- ✅ Avvisa sulle anomalie di costo (>2x il normale)
- ✅ Avvisa sul degrado di qualità (aumento del tasso di allucinazione)
- ✅ Traccia le differenze di performance dei modelli
- ✅ Monitora i cambiamenti di sentiment degli utenti
- ✅ Imposta budget di costo per funzionalità/utente/modello
Il monitoraggio AI è critico per controllare i costi mantenendo la qualità. La differenza tra funzionalità AI redditizie e non redditizie è spesso un miglioramento di qualità dell'1-2% combinato con il monitoraggio dei costi.
Pronto a monitorare le applicazioni AI? Inizia con il monitoraggio uptime di Nova Uptime per la tua API, poi aggiungi il monitoraggio LLM specifico dell'applicazione con Langsmith o Datadog.
Monitor Your Website Before It Goes Down
Get uptime monitoring, SSL tracking, domain expiry alerts, and email health checks. Free plan — no credit card required.
Start Monitoring FreeArticoli correlati
Domain health check: un audit completo e gratuito (DNS + SSL + Email + Uptime)
Esegui un audit completo e gratuito del dominio in 5 minuti: DNS, SSL, autenticazione email (SPF/DKIM/DMARC), blacklist e uptime. Checklist passo-passo inclusa.
Scadenza dominio vs scadenza SSL: qual è la differenza?
Scadenza dominio vs scadenza SSL: cosa succede quando ciascuno scade, le differenze critiche e come monitorare entrambi efficacemente.
Monitorare microservizi e Kubernetes: oltre i semplici controlli di uptime
I microservizi richiedono monitoraggio distribuito. Scopri come monitorare dipendenze tra servizi, salute dell'orchestrazione e guasti distribuiti.