Azioni conversazionali (Dialogflow)

Le azioni conversazionali estendono la funzionalità dell'Assistente Google consentendo agli sviluppatori di creare esperienze o conversazioni personalizzate per gli utenti tramite l'assistente. In una conversazione, l'Azione conversazionale gestisce le richieste dell'assistente e restituisce le risposte con componenti audio e video. Le azioni conversazionali possono anche connettersi a servizi esterni per aggiungere una logica di business o conversazionale prima di restituire una risposta.

Ad esempio, gli utenti possono richiamare l'azione conversazionale per ricevere una risposta dal servizio di fulfillment esterno quando vogliono cercare informazioni, ricevere un suggerimento personalizzato o eseguire transazioni che prevedono pagamenti digitali.

In una conversazione con l'Assistente Google, un utente
 chiede informazioni e riceve una risposta per quando è in corso una sessione
 di conferenza.
Figura 1. Esempio di azione conversazionale

Casi d'uso

La funzionalità Azioni conversazionali è la più indicata per casi d'uso semplici che si integrano con un'altra esperienza. Le buone azioni conversazionali rientrano spesso nelle seguenti categorie generali:

  • Cose a cui le persone possono rispondere con facilità. Azioni che possono essere eseguite con input familiari come orari o date, come la prenotazione di un volo.
  • Azioni rapide ma convincenti. In genere questi vantaggi offrono agli utenti vantaggi immediati per un tempo ridotto, ad esempio per scoprire quando sarà la prossima partita della loro squadra del cuore.
  • Azioni intrinsecamente più adatte alla voce. In genere, si tratta di cose che vuoi fare a mani libere, come ricevere coaching durante lo yoga o un allenamento leggero.

Come funzionano le Azioni conversazionali

A differenza delle tradizionali app mobile e desktop, che utilizzano paradigmi incentrati sul computer, gli utenti interagiscono con le Azioni per l'assistente tramite conversazioni dal suono naturale tramite conversazioni avanti e indietro. Le azioni conversazionali iniziano quando vengono richiamate da un utente e continuano finché l'utente sceglie di uscire (utilizzando frasi predeterminate) o l'Azione conversazionale indica la fine della conversazione.

Durante una conversazione, l'assistente trasforma gli input utente dalla voce in testo e trasformati in richieste JSON per l'elaborazione del linguaggio naturale. Queste richieste vengono inviate al cosiddetto fulfillment della conversazione.

Il fulfillment della conversazione analizza la query dell'utente in dati strutturati, li elabora e restituisce una risposta JSON webhook all'assistente. L'assistente elabora e presenta la tua risposta all'utente.

Il fulfillment della conversazione può essere rappresentato con input di richiesta JSON e output della risposta JSON webhook.
Figura 2. Il fulfillment della conversazione è un sistema di out JSON in-JSON

Creare un proprio servizio di elaborazione del linguaggio naturale può essere complesso, perciò forniamo Dialogflow per gestirlo per te. Per gli sviluppatori che non possono utilizzare Dialogflow, forniamo anche l'SDK Actions come opzione di backup con un percorso di sviluppo separato, ma correlato.

Una volta configurato un agente in Dialogflow, il fulfillment della conversazione viene potenziato dalle funzionalità di Dialogflow, tra cui la possibilità di utilizzare il fulfillment Dialogflow. Questo approccio ti consente di isolare il fulfillment della conversazione da altri servizi di cui potresti aver bisogno per fornire agli utenti il risultato desiderato.

Actions on Google analizza le frasi degli utenti e invia una richiesta a Dialogflow. Dialogflow corrisponde all'intent ed estrae i parametri da inviare al fulfillment Dialogflow corrispondente. Il fulfillment
            quindi invia una risposta ad Actions on Google, che
            esegue il rendering della risposta su una piattaforma dell'assistente.
Figura 3. Fulfillment della conversazione quando si utilizza Dialogflow

Creazione di un'azione conversazionale

La maggior parte dello sviluppo di un'azione conversazionale consiste nel progettare la conversazione e nel realizzarla. Pensa alla conversazione come all'interfaccia utente della tua azione conversazionale. Devi pensare al modo in cui gli utenti richiamano il tuo progetto Actions, alle cose valide che possono dire in una conversazione e al modo in cui il tuo progetto Actions risponde.

Nel tuo progetto Actions, fornisci i metadati per la pubblicazione del progetto e specifica un metodo di evasione della conversazione. Gli sviluppatori che utilizzano Dialogflow associano il loro agente Dialogflow al progetto, quindi creano il fulfillment tramite Dialogflow. Per gli sviluppatori che utilizzano l'SDK Actions, la creazione del fulfillment delle conversazioni prevede la programmazione e il deployment nel formato webhook di conversazione.

Durante la progettazione della conversazione, ti consigliamo di utilizzare i nostri processi e i nostri principi di progettazione. Le interfacce di conversazione sono ancora una tecnologia relativamente nuova e imparare a conoscere le best practice può farti risparmiare tempo in futuro.

Evasione mediante Dialogflow

Durante l'integrazione con un agente Dialogflow, quest'ultimo gestisce l'NLU per le query degli utenti nell'azione conversazionale. Durante questo passaggio, l'agente Dialogflow svolge le seguenti operazioni:

  1. Analizza ogni richiesta in arrivo dall'assistente in base alle frasi di addestramento che fornisci e al contesto di conversazione.
  2. Associa ogni richiesta a un intent Dialogflow (noto anche come evento).
  3. Estrae i parametri nelle entità Dialogflow.

L'agente Dialogflow può quindi chiamare il proprio fulfillment (distribuito come webhook) per eseguire una logica, ad esempio chiamare un'API REST o un altro servizio di backend che genera una risposta da restituire all'assistente. Questo webhook è noto anche come fulfillment Dialogflow e utilizza il formato webhook di Dialogflow.

Dialogflow accetta un'espressione utente per la corrispondenza degli intent e fornisce
            i parametri estratti al fulfillment Dialogflow. Il fulfillment restituisce una risposta all'utente.
Figura 4. Un agente Dialogflow analizza una query utente nei dati strutturati per il fulfillment Dialogflow

La creazione del fulfillment delle conversazioni quando si utilizza Dialogflow consiste principalmente nello sviluppo del webhook di fulfillment Dialogflow. Nella documentazione di Actions on Google, troverai risorse che ti aiuteranno a progettare, creare e testare il tuo webhook di fulfillment Dialogflow. In particolare, queste risorse includono la libreria client Node.js e la libreria client Java.

Durante la creazione con Dialogflow, utilizzerai la console di Dialogflow per creare intent, entità e frasi di addestramento Dialogflow.

Per informazioni più generali su Dialogflow, puoi leggere ulteriori informazioni sull'integrazione di Actions on Google nella documentazione di Dialogflow.

Evasione dell'ordine mediante SDK Actions

Lo sviluppo del fulfillment delle conversazioni con l'SDK Actions consiste principalmente nella creazione e nel deployment del pacchetto Azioni. I pacchetti azioni vengono creati nel formato ActionPackage e utilizzano il formato webhook di conversazione. Un pacchetto Azioni contiene tutte le azioni per un determinato progetto di azioni.

L'assistente fornisce query degli utenti al fulfillment della conversazione utilizzando gli intent di Actions on Google. Per ogni intent, il webhook di fulfillment deve analizzare l'intent, elaborarlo e restituire una risposta JSON all'assistente per l'utente.

Risposte

Quando crei un'azione per l'assistente, progetti le tue conversazioni per una serie di piattaforme, ad esempio una conversazione basata sulla voce per gli altoparlanti ad attivazione vocale o una conversazione visiva su una piattaforma supportata dall'assistente. Questo approccio consente agli utenti di svolgere rapidamente le proprie attività tramite le affinità vocali o visive.

Durante la creazione del fulfillment, puoi scegliere tra una varietà di tipi di risposte coinvolgenti che l'assistente presenterà agli utenti. Questi spaziano dai fumetti di chat contenenti testo semplice a risposte multimediali, caroselli e persino HTML utilizzando Interactive Canvas.

Passaggi successivi

Segui il codelab Build Actions per l'Assistente Google (Livello 1) per istruzioni dettagliate su come iniziare a creare la tua prima azione conversazionale.

Successivamente, puoi continuare con le nostre guide per creare il tuo fulfillment di conversazioni con Dialogflow o con l'SDK Actions. Puoi anche esplorare queste risorse aggiuntive per la creazione di azioni conversazionali: