Questa guida spiega come utilizzare la funzionalità di valutazione integrata nella console Dialogflow CX per verificare la funzionalità dell'agente e prevenire eventuali regressioni dopo gli aggiornamenti. Dialogflow fornisce metriche predefinite per aiutarti a valutare il rendimento del tuo agente.
Tutte le metriche, ad eccezione della latenza, richiedono almeno un scenario di test, una "risposta di riferimento" con cui Dialogflow confronta il rendimento dell'agente per calcolarne le prestazioni. Ogni scenario di test può essere misurato nel contesto di un ambiente, che ti consente di specificare versioni diverse di playbook, flussi e strumenti da utilizzare nella valutazione del rendimento dell'agente.
(Facoltativo) Crea un ambiente
La creazione di un ambiente è facoltativa. Se non ne crei uno, il valore predefinito è Bozza.
- Per creare un ambiente, fai clic su Ambienti nel menu a sinistra e seleziona + Crea.
- Scegli le versioni di playbook, flussi e strumenti che vuoi utilizzare per misurare il rendimento dell'agente.
- Fai clic su Salva per salvare l'ambiente.
Creare uno scenario di test
Puoi creare uno scenario di test da una conversazione esistente nella cronologia delle conversazioni, creare una nuova conversazione da salvare come scenario di test o importare scenari di test in Dialogflow.
Creare uno scenario di test nella console
- Vai a Cronologia delle conversazioni nel menu a sinistra.
- Per creare una nuova conversazione, attiva l'agente (ad esempio, chiamando il suo numero di telefono) per creare una conversazione nella cronologia. Seleziona la conversazione che vuoi utilizzare come caso di test.
- Visualizza la conversazione e verifica le risposte dell'agente, gli strumenti richiamati e il tono di ogni risposta. Quando sei soddisfatto, fai clic su Crea scenario di test nell'angolo in alto a destra della finestra.
- Fornisci un nome visualizzato per lo scenario di test e specifica le tue aspettative in merito agli eventi che devono verificarsi a livello di conversazione. che possono includere strumenti, playbook e flussi che prevedi di chiamare all'interno della conversazione. Fai clic su +Aggiungi aspettativa per aggiungere altre aspettative. Per valutare le aspettative in ordine sequenziale come elencato (dall'alto verso il basso), attiva Convalida sequenziale.
- Fai clic su Salva per salvare lo scenario di test.
Caricare scenari di test
- Gli scenari di test devono essere nel seguente formato CSV.
- Per caricare gli scenari di test nel sistema, fai clic su Importa nella parte superiore del menu degli scenari di test.
- Nel menu visualizzato, seleziona il file archiviato localmente o inserisci il percorso del bucket Cloud Storage.
- Ora dovresti visualizzare gli scenari di test nel menu degli scenari di test.
Eseguire uno scenario di test
- Fai clic su Scenari di test nel menu a sinistra e seleziona gli scenari di test con cui vuoi confrontare il tuo agente. Può essere un singolo caso di test o più casi di test.
- Fai clic su Esegui gli scenari di test selezionati.
Risultati del test
- Risultati dell'accesso: vengono visualizzati i risultati dell'ultima esecuzione del test per ogni
scenario di test nella visualizzazione Scenario di test dopo il completamento:
- Similarità semantica: misura la somiglianza delle conversazioni dell'agente rispetto alla "risposta ideale" (le risposte nello scenario di test). Per ricevere questa metrica sono necessarie risposte dorate. I valori possono essere 0 (incoerente), 0,5 (abbastanza coerente) o 1 (molto coerente).
- Accuratezza della chiamata allo strumento: un valore che riflette la fedeltà con cui la conversazione include gli strumenti che dovrebbero essere richiamati durante la conversazione. I valori vanno da 0 a 1. Se non vengono utilizzati strumenti nella
conversazione, l'accuratezza verrà visualizzata come
--
(N/A). - Latenza: il tempo totale impiegato dall'agente per elaborare una richiesta dell'utente finale e rispondere all'utente (la differenza tra la fine dell'espressione dell'utente e l'inizio della risposta dell'agente). Le unità sono in secondi.
- Aggiorna scenario di test di riferimento: se l'ultima esecuzione riflette le modifiche previste a causa di un aggiornamento dell'agente, puoi fare clic su "Salva come riferimento" per sovrascrivere lo scenario di test originale.
- Filtra e ordina i risultati: puoi filtrare e ordinare i risultati della valutazione in base a una qualsiasi delle metriche generate o a un ambiente specifico. Questo è utile per monitorare le variazioni del rendimento dopo ogni aggiornamento.
Formattazione dell'importazione batch degli scenari di test
Questa sezione descrive come formattare un file CSV per importare scenari di test batch per il tuo agente. Il sistema legge questo file per creare un insieme strutturato di scenari di test, ognuno contenente uno o più turni conversazionali.
Un singolo caso di test può estendersi su più righe del file CSV. La prima riga di uno scenario di test definisce le sue proprietà generali (come nome e lingua). Ogni riga successiva per lo scenario di test definisce un singolo scambio di battute nella conversazione (l'utente dice qualcosa, l'agente deve rispondere).
Intestazione
Il file CSV deve avere una riga di intestazione come prima riga. Questa intestazione definisce i dati in ogni colonna.
Intestazioni obbligatorie
Le due intestazioni obbligatorie devono essere nell'ordine mostrato. Entrambi sono necessari per la
prima riga di un nuovo scenario di test. Puoi iniziare un nuovo scenario di test fornendo nuovi valori di
DisplayName
e LanguageCode
.
DisplayName
: il nome dello scenario di test. Questo campo viene compilato solo per la prima riga di un nuovo scenario di test.LanguageCode
: il codice della lingua del test (ad esempioen
,en-US
,es
).
Intestazioni facoltative
Puoi includere uno qualsiasi dei seguenti header facoltativi per fornire maggiori dettagli per i tuoi scenari di test. Possono essere in qualsiasi ordine dopo le prime due colonne obbligatorie.
Metadati dello scenario di test
- Tag: tag separati da spazi per organizzare i test (ad esempio, "onboarding pagamenti").
- Note: note in formato libero o una descrizione dello scopo dello scenario di test.
TestCaseConfigV2.StartResource
: specifica il flusso o il playbook con cui iniziare il test.
Input dell'utente
UserInput.Input.Text
: il testo che l'utente "digita" per un determinato turno.UserInput.InjectedParameters
: parametri da inserire nella conversazione all'inizio di un turno, formattati come stringa JSON.
Output dell'agente
AgentOutput.QueryResult.ResponseMessages.Text
: il testo esatto con cui affermi che l'agente ha risposto.AgentOutput.QueryResult.Parameters
: i parametri che hai dichiarato di aver estratto dall'agente, formattati come stringa JSON.
Aspettative
OrderedExpectations.ExpectedFlow
: il flusso che prevedi sia attivo dopo la svolta.OrderedExpectations.ExpectedIntent
: l'intent che prevedi venga corrisposto per il turno.OrderedExpectations.ExpectedAgentReply
: il testo che ti aspetti che l'agente risponda. Può essere una sottostringa della risposta completa.OrderedExpectations.ExpectedOutputParameter
: i parametri che prevedi di impostare alla fine del turno, formattati come stringa JSON.
Metadati audio
AudioTurnMetadata
Metadati per i test basati sull'audio, formattati come stringa JSON.
Creare uno scenario di test
Gli scenari di test sono organizzati per righe di dati.
- Per iniziare un nuovo scenario di test, compila la riga dei metadati.
- Regola: questa riga deve avere un valore nella colonna
DisplayName
. - Azione: inserisci i valori per
DisplayName
eLanguageCode
. Puoi anche aggiungere tag, note o unTestCaseConfigV2.StartResource
in questa riga. Le colonne dei turni di conversazione (comeUserInput.Input.Text
) devono essere lasciate vuote in questa riga. Se utilizzi i tag, separa ogni tag con uno spazio. Esempio:tag1 tag2 tag3
. Se utilizziTestCaseConfigV2.StartResource
, aggiungi il prefissostart_flow:
ostart_playbook:
al nome della risorsa. Esempio:start_flow:projects/p/locations/l/agents/a/flows/f
.
- Regola: questa riga deve avere un valore nella colonna
- Aggiungi un turno conversazionale allo scenario di test appena iniziato aggiungendo una nuova
riga immediatamente sotto.
- Regola: la colonna
DisplayName
deve essere vuota. Indica al parser che si tratta di un turno appartenente allo scenario di test precedente. - Azione: compila le colonne che descrivono l'azione dell'utente e la
risposta prevista dell'agente per questo turno, ad esempio
UserInput.Input.Text
eOrderedExpectations.ExpectedAgentReply
. Per le colonne che richiedono JSON, devi fornire un oggetto JSON valido come stringa. Esempio:{"param_name": "param_value", "number_param": 123}
.
- Regola: la colonna