I contesti di Dialogflow sono simili al contesto del linguaggio naturale. Se una persona ti dice "sono arancioni", hai bisogno del contesto per capire a cosa si riferisce "sono". Analogamente, affinché Dialogflow possa gestire un'espressione dell'utente finale come questa, deve essere fornito il contesto per poter associare correttamente un intent.
Con i contesti, puoi controllare il flusso di una conversazione. Puoi configurare i contesti per un'intenzione impostando contesti di input e output, identificati da nomi di stringa. Quando viene trovata una corrispondenza per un'intenzione, tutti i contesti di output configurati per quell'intenzione diventano attivi. Quando sono attivi tutti i contesti, Dialogflow ha maggiori probabilità di trovare una corrispondenza per gli intent configurati con contesti di input corrispondenti ai contesti attualmente attivi.
Il seguente diagramma mostra un esempio che utilizza il contesto per un agente bancario.
- L'utente finale chiede informazioni sul proprio conto corrente.
-
Dialogflow associa questa espressione dell'utente finale all'intenzione
CheckingInfo
. Questo intento ha un contesto di outputchecking
, quindi questo contesto diventa attivo. - L'agente chiede all'utente finale il tipo di informazioni che vuole sul suo conto corrente.
- L'utente finale risponde con "il mio saldo".
-
Dialogflow associa questa espressione dell'utente finale all'intenzione
CheckingBalance
. Questo intento ha un contesto di inputchecking
, che deve essere attivo per corrispondere a questo intento. Può esistere anche un'intenzioneSavingsBalance
simile per abbinare la stessa espressione dell'utente finale quando è attivo un contestosavings
. - Dopo che il sistema ha eseguito le query necessarie al database, l'agente risponde con il saldo del conto corrente.