Questa guida spiega come utilizzare la funzionalità di valutazioni integrate nella console Dialogflow CX per verificare la funzionalità dell'agente e prevenire eventuali regressioni dopo gli aggiornamenti. Dialogflow CX fornisce metriche predefinite per valutare il rendimento dell'agente.
Tutte le metriche, ad eccezione della latenza, richiedono almeno uno scenario di test, una "risposta ideale" rispetto alla quale Dialogflow CX confronta il rendimento dell'agente per calcolarlo. Ogni scenario di test può essere misurato nel contesto di un ambiente, che consente di specificare diverse versioni di playbook, flussi e strumenti da utilizzare nella valutazione del rendimento dell'agente.
(Facoltativo) Creare 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 dei playbook, dei flussi e degli 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 CX.
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 numero di telefono dell'agente) per creare una conversazione nella cronologia delle conversazioni. Quando hai una conversazione che vuoi utilizzare come scenario di test, selezionala.
- Visualizza la conversazione e verifica le risposte dell'agente, gli strumenti richiamati e il suono 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 sugli eventi che dovrebbero verificarsi a livello di conversazione. Può 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/disattiva l'opzione Validazione 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 memorizzato localmente o inserisci il percorso del relativo bucket Cloud Storage.
- Gli scenari di test dovrebbero ora essere visualizzati 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 l'agente. Può trattarsi di uno o più scenari di test.
- Fai clic su Esegui gli scenari di test selezionati.
Risultati del test
- Accedere ai risultati: al termine, nella visualizzazione Scenario di test vengono mostrati i risultati dell'ultima esecuzione dello scenario di test per ogni
scenario di test:
- Somiglianza semantica: misura la somiglianza delle conversazioni dell'agente rispetto alla "risposta ideale" (risposte nello scenario di test). Per ricevere questa metrica, sono necessarie le risposte ideali. I valori possono essere 0 (incoerente), 0,5 (abbastanza coerente) o 1 (molto coerente).
- Accuratezza della chiamata dello 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 nella conversazione non vengono utilizzati strumenti, la precisione 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.
- Aggiornare lo scenario di test ideale: se l'ultima esecuzione riflette le modifiche previste dovute a un aggiornamento dell'agente, puoi fare clic su "Salva come ideale" per sovrascrivere lo scenario di test originale.
- Filtrare e ordinare i risultati: puoi filtrare e ordinare i risultati della valutazione in base a una delle metriche generate o a un ambiente specifico. Questa opzione è utile per monitorare le modifiche al rendimento dopo ogni aggiornamento.
Formattazione degli scenari di test di importazione batch
Questa sezione descrive come formattare un file CSV per importare scenari di test batch per l'agente. Il sistema legge questo file per creare un insieme strutturato di scenari di test, ognuno contenente uno o più turni di conversazione.
Un singolo scenario di test può estendersi su più righe del file CSV. La prima riga di uno scenario di test definisce le sue proprietà generali (come il nome e la lingua). Ogni riga successiva per lo scenario di test definisce un singolo turno di conversazione (l'utente dice qualcosa, l'agente dovrebbe 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. Entrambe sono obbligatorie per la prima riga di un nuovo scenario di test. Puoi avviare un nuovo scenario di test fornendo nuovi valori 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 lingua per il test (ad esempioen,en-US,es).
Intestazioni facoltative
Puoi includere una delle seguenti intestazioni facoltative per fornire maggiori dettagli per gli 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 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 affermi siano stati estratti dall'agente, formattati come stringa JSON.
Aspettative
OrderedExpectations.ExpectedFlow: il flusso che prevedi sia attivo dopo il turno.OrderedExpectations.ExpectedIntent: l'intent che prevedi venga abbinato per il turno.OrderedExpectations.ExpectedAgentReply: il testo che prevedi che l'agente risponda. Può essere una sottostringa della risposta completa.OrderedExpectations.ExpectedOutputParameter: i parametri che prevedi vengano impostati alla fine del turno, formattati come stringa JSON.
Metadati audio
AudioTurnMetadataMetadati 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 avviare 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
DisplayNameeLanguageCode. Puoi anche aggiungere tag, note o unTestCaseConfigV2.StartResourcein 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, anteponi al nome della risorsastart_flow:ostart_playbook:. Esempio:start_flow:projects/p/locations/l/agents/a/flows/f.
- Regola: questa riga deve avere un valore nella colonna
- Aggiungi un turno di conversazione allo scenario di test appena avviato aggiungendo una nuova riga immediatamente sotto.
- Regola: la colonna
DisplayNamedeve 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.TexteOrderedExpectations.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