Contesti

I contesti di Dialogflow sono simili al contesto del linguaggio naturale. Se una persona ti dice "sono arancioni", hai bisogno di un contesto per capire a cosa si riferisce "sono". Allo stesso modo, affinché Dialogflow possa gestire un'espressione dell'utente finale come questa, è necessario fornirgli un contesto per trovare la corrispondenza corretta con un intent.

Utilizzando i contesti, puoi controllare il flusso di una conversazione. Puoi configurare i contesti per un intent impostando i contesti di input e output, identificati da nomi di stringhe. Quando viene trovata una corrispondenza con un intent, tutti i contesti di output configurati per quell'intent diventano attivi. Mentre i contesti sono attivi, è più probabile che Dialogflow trovi la corrispondenza con gli intent configurati con contesti di input che corrispondono ai contesti attualmente attivi.

Il seguente diagramma mostra un esempio che utilizza il contesto per un agente bancario.

Diagramma dell'utente che interagisce con intent e contesto.
  1. L'utente finale chiede informazioni sul proprio conto corrente.
  2. Dialogflow trova la corrispondenza tra questa espressione dell'utente finale e l'intent CheckingInfo. Questo intent ha un contesto di output checking, quindi questo contesto diventa attivo.
  3. L'agente chiede all'utente finale il tipo di informazioni che vuole sul suo conto corrente.
  4. L'utente finale risponde con "il mio saldo".
  5. Dialogflow trova la corrispondenza tra questa espressione dell'utente finale e l'intent CheckingBalance. Questo intent ha un contesto di input checking, che deve essere attivo per trovare la corrispondenza con questo intent. Potrebbe esistere anche un intent SavingsBalance simile per trovare la corrispondenza con la stessa espressione dell'utente finale quando è attivo un contesto savings
  6. Dopo che il sistema esegue le query di database necessarie, l'agente risponde con il saldo del conto corrente.