Vai alla navigazione

Test degli agenti

Acquisisci fiducia nel comportamento del tuo agente con test automatizzati

I test degli agenti ti consentono di verificare le risposte conversazionali, l’utilizzo degli strumenti e gli esiti completi su più turni prima del deployment. Crea test da zero o da conversazioni esistenti, quindi eseguili dalla dashboard, dalla CLI o dall’API.

Guida video

Panoramica

Il framework include tre tipi di test complementari:

  • Test di simulazione — Esegue conversazioni end-to-end su più turni con un utente simulato
  • Test della risposta successiva (scenario) — Convalida la risposta successiva dell’agente in base ai criteri di successo
  • Test di chiamata dello strumento — Verifica che l’agente chiami lo strumento giusto con i parametri corretti

Quando usare ciascun test

Tipo di testUsalo quando devi
SimulazioneVerificare che una conversazione completa raggiunga un risultato definito
Risposta successiva (scenario)Verificare che il messaggio successivo dell’agente soddisfi criteri di qualità, tono o policy
Chiamata dello strumentoVerificare che l’agente richiami uno strumento specifico con i parametri previsti

Creare test dalle conversazioni

Trasforma conversazioni reali in casi di test quando individui un’interazione in cui l’agente non ha dato buoni risultati.

Creazione di un test da una conversazione
  1. Apri la conversazione nella cronologia delle chiamate
  2. Fai clic su Crea test da questa conversazione
  3. Rivedi il contesto precompilato, quindi definisci il comportamento previsto
  4. Aggiungi il test alla tua suite per individuare in seguito errori simili

Test di simulazione

Il test di simulazione valuta il tuo agente durante un’intera conversazione su più turni con un utente IA simulato. A differenza dei test della risposta successiva, questo tipo verifica se l’interazione completa raggiunge il risultato che hai definito.

Creare un test di simulazione

Interfaccia per la creazione di test di simulazione
1

Definisci lo scenario

Descrivi in linguaggio naturale il contesto, l’intento e il comportamento dell’utente. Il simulatore usa questo scenario per guidare la conversazione.

Esempio di scenario:

“Un turista che non parla fluentemente inglese sta cercando di effettuare un ordine al ristorante.”

2

Imposta la condizione di successo

Definisci il risultato che deve essere considerato superato. Questo prompt viene usato per valutare se la conversazione completa è riuscita.

Esempio di condizione di successo:

“L’agente ha confermato i dettagli dell’ordine, gestito le domande di chiarimento e completato l’ordine senza fraintendimenti.”

3

Imposta il numero massimo di turni

Scegli per quanto tempo può essere eseguita la simulazione prima di interrompersi. Usa un valore più basso per verifiche mirate e un valore più alto per workflow complessi.

  • Minimo: 1
  • Massimo: 50
  • Predefinito: 5
4

Esegui e rivedi il risultato

Esegui il test e analizza la trascrizione della conversazione generata. Esamina il risultato superato/non superato rispetto alla condizione di successo, quindi modifica il prompt, gli strumenti o la configurazione dell’agente.

Configurazione facoltativa

Puoi affinare il comportamento della simulazione nel pannello di configurazione del test:

  • Ambiente: Seleziona l’ambiente da testare quando il tuo agente ha più ambienti configurati. Se è disponibile un solo ambiente, questo selettore è nascosto.
  • Cronologia chat: Parti da una conversazione parziale anziché da uno stato vuoto. È utile per testare conversazioni in corso e comportamenti di recupero.
  • Variabili dinamiche: Inserisci valori specifici del test nelle variabili dell’agente (ad esempio nomi utente o ID ordine) senza modificare la configurazione di base dell’agente.

Mock degli strumenti

I test di simulazione supportano il mock degli strumenti, così il tuo agente può ricevere risposte controllate durante un’esecuzione anziché chiamare sistemi live.

Strategia di mock

  • Nessun mock: Nessuno strumento viene sottoposto a mock.
  • Mock di tutti gli strumenti: Ogni strumento supportato dal mock restituisce una risposta mock.
  • Mock degli strumenti selezionati: Vengono sottoposti a mock solo gli strumenti che scegli esplicitamente.

Gli strumenti di sistema e gli strumenti dei workflow non vengono mai sottoposti a mock.

Comportamento di fallback

Se viene chiamato uno strumento sottoposto a mock e non viene trovata alcuna risposta mock corrispondente, scegli uno di questi comportamenti:

  • Chiama lo strumento reale: Esegue la chiamata allo strumento reale.
  • Termina con errore: Restituisce una risposta di errore dallo strumento anziché chiamare quello reale.

L’impostazione di fallback appare solo quando almeno uno strumento è sottoposto a mock.

Test della risposta successiva (scenario)

Il test della risposta successiva (scenario) valuta solo il messaggio successivo dell’agente, non un esito completo su più turni. Fornisci la cronologia della conversazione che precede la risposta da valutare, quindi assegna un punteggio a quella risposta in base ai criteri di successo.

Per esiti completi su più turni, usa i test di simulazione.

Creare un test della risposta successiva

Interfaccia per i test della risposta successiva (scenario)
1

Definisci la cronologia chat

Fornisci la cronologia della conversazione che precede la risposta da valutare. Può essere un singolo messaggio utente o più turni di contesto.

Esempio di cronologia chat:

User: "I'd like to cancel my subscription. I've been charged twice this month and I'm frustrated."
2

Imposta i criteri di successo

Descrivi in linguaggio semplice cosa deve ottenere la risposta dell’agente. Sii specifico riguardo a comportamento, tono e azioni previsti.

Esempio di criteri di successo:

  • L’agente deve riconoscere con empatia la frustrazione del cliente
  • L’agente deve offrire di verificare il doppio addebito
  • L’agente deve indicare chiaramente i passaggi successivi per l’annullamento o la risoluzione
  • L’agente deve mantenere un tono professionale e disponibile
3

Fornisci esempi

Fornisci esempi sia di successo sia di errore per aiutare il valutatore a comprendere le sfumature dei tuoi criteri.

Esempio di successo:

“Capisco quanto possano essere frustranti i doppi addebiti. Lasci che verifichi subito per lei. Vedo che questo mese ci sono stati effettivamente due addebiti: elaborerò immediatamente un rimborso per quello duplicato. Desidera comunque procedere con l’annullamento o preferisce continuare una volta risolto il problema?”

Esempio di errore:

“Per le questioni relative ai rimborsi deve contattare il reparto fatturazione. Il suo abbonamento verrà annullato.”

4

Esegui il test

Esegui il test. Un valutatore LLM confronta la risposta successiva dell’agente con i tuoi criteri di successo ed esempi per determinare lo stato superato/non superato.

Test di chiamata dello strumento

Il test di chiamata dello strumento verifica che il tuo agente utilizzi correttamente gli strumenti e passi i parametri giusti in situazioni specifiche. È fondamentale per azioni come trasferimenti di chiamata, ricerche di dati o integrazioni esterne.

Creare un test di chiamata dello strumento

Interfaccia per i test di chiamata dello strumento
1

Seleziona lo strumento

Scegli lo strumento che prevedi venga chiamato dall’agente nello scenario indicato (ad es. transfer_to_number, end_call, lookup_order).

2

Definisci i parametri previsti

Specifica quali dati l’agente deve passare allo strumento. Hai a disposizione tre metodi di convalida:

Corrispondenza esatta
Il parametro deve corrispondere esattamente al valore specificato.

Transfer number: +447771117777

Pattern regex Il parametro deve corrispondere a un pattern specifico.

Order ID: ^ORD-[0-9]{8}$

Valutazione LLM Un LLM valuta se il parametro è semanticamente corretto in base al contesto.

Message: "Should be a polite message mentioning the connection"
3

Configura le variabili dinamiche

Durante i test in sviluppo, usa valori di variabili dinamiche corrispondenti a quelli effettivi in produzione. Esempio: {{ customer_name }} o {{ order_id }}

4

Esegui e convalida

Esegui il test per assicurarti che l’agente chiami lo strumento corretto con i parametri appropriati.

Casi d’uso critici

Il test di chiamata dello strumento è essenziale per scenari ad alto rischio:

  • Trasferimenti di emergenza: Assicurati che le emergenze mediche vengano sempre inoltrate al numero corretto
  • Sicurezza dei dati: Verifica che le informazioni sensibili non vengano mai passate a strumenti non autorizzati
  • Logica aziendale: Conferma che le ricerche degli ordini usino formati e autenticazione validi

Esecuzione dei test

Scrivi test per nuovi comportamenti o errori noti, eseguili mentre modifichi prompt e configurazione, quindi salvali quando vengono superati.

Vai alla scheda Test nell’interfaccia del tuo agente. Da lì puoi eseguire singoli test, selezionare più test dalla libreria come batch o eseguire l’intera suite con Esegui tutti i test.

Esecuzione dei test su un agente

Test probabilistici

Gli output dell’agente possono variare tra un’esecuzione e l’altra. Un singolo superamento dimostra che l’agente può riuscire; i test probabilistici mostrano con quale frequenza riuscirà eseguendo lo stesso test più volte e riportando una percentuale di superamento.

Eseguire un test più volte

Controllo di esecuzione multipla su un test che consente di scegliere quante volte eseguirlo

Quando avvii un test dalla dashboard, usa il controllo di esecuzione multipla sul pulsante di esecuzione per scegliere quante volte eseguirlo (ad esempio 3×, 5× o 15×). Ogni esecuzione è indipendente: l’agente riceve la stessa cronologia chat, le stesse variabili dinamiche e gli altri input, ma la risposta viene generata nuovamente ogni volta.

L’esecuzione multipla funziona per singoli test, cartelle e per l’intera suite di test associata a un agente. È compatibile con tutti e tre i tipi di test — Simulazione, Risposta successiva (scenario) e Chiamata dello strumento — ed è in genere più utile per i test di simulazione, dove l’area più ampia di una conversazione su più turni rende più probabile la variazione delle risposte.

Percentuali di superamento e raggruppamento dei risultati

Risultati di esecuzioni multiple raggruppati in categorie di successo ed errore con badge della percentuale di superamento

Al termine di un’esecuzione multipla, i risultati vengono riepilogati come percentuale di superamento (ad esempio, 4/5 superati) con un badge colorato:

  • Verde — 100% superati
  • Ambra — almeno l’80% superati
  • Rosso — meno dell’80%

Le singole esecuzioni vengono quindi raggruppate in base al motivo dell’errore, così puoi vedere come l’agente fallisce, non solo che fallisce. Invece di scorrere cinque trascrizioni separate per individuare le differenze, vedrai gruppi come “Indirizzato correttamente alla fatturazione (4 esecuzioni)” e “Ha inventato un numero dell’assistenza (1 esecuzione)”, ciascuno espandibile per visualizzare le trascrizioni sottostanti e la motivazione della valutazione.

Quando usarli

  • Prima di distribuire una modifica — Riesegui probabilisticamente i test associati per confermare che l’affidabilità non sia diminuita (ad esempio, dal 95% al 60%).
  • Diagnosi di comportamenti instabili — Un singolo errore potrebbe essere rumore; un errore 1 volta su 5 con una categoria di errore chiaramente denominata è un problema riproducibile da correggere.
  • Ottimizzazione di prompt e strumenti — Modifica la configurazione e confronta le percentuali di superamento affiancate, anziché basarti su esecuzioni isolate.

Esecuzione probabilistica tramite API o SDK

Passa repeat_count (tra 2 e 20) nella richiesta run-tests per eseguire ogni test quel numero di volte. L’impostazione di repeat_count abilita automaticamente il raggruppamento degli errori nella risposta, quindi l’invocazione restituita include il raggruppamento per categoria e la percentuale di superamento visualizzati nella dashboard.

from elevenlabs import ElevenLabs
elevenlabs = ElevenLabs()
invocation = elevenlabs.conversational_ai.agents.run_tests(
agent_id="<agent-id>",
tests=[{"test_id": "<test-id>"}],
repeat_count=5,
)

Best practice

Valuta la coerenza della persona dell'agente

Verifica che il tuo agente mantenga la personalità, il tono e i limiti comportamentali definiti in diversi scenari di conversazione e contesti emotivi.

Verifica il ragionamento complesso su più turni

Crea scenari che testino la capacità dell’agente di mantenere il contesto, seguire la logica condizionale e gestire le transizioni di stato durante conversazioni estese.

Testa i tentativi di prompt injection

Valuta come il tuo agente risponde ai tentativi di ignorare le sue istruzioni o estrarre informazioni sensibili di sistema tramite input ostili.

Valuta la risoluzione di intenti ambigui

Verifica quanto efficacemente il tuo agente chiarisca richieste vaghe, gestisca informazioni in conflitto e affronti situazioni in cui l’intento dell’utente non è chiaro.

Passaggi successivi