Come costruire un'interfaccia chatbot

Autore: Randy Alexander
Data Della Creazione: 2 Aprile 2021
Data Di Aggiornamento: 16 Maggio 2024
Anonim
How to Build a Powerful Chatbot in 5 Minutes with SAP Conversational AI [+Demos], SAP TechEd Lecture
Video: How to Build a Powerful Chatbot in 5 Minutes with SAP Conversational AI [+Demos], SAP TechEd Lecture

Contenuto

A metà degli anni 2000, gli agenti virtuali ei chatbot del servizio clienti hanno ricevuto molta adulazione, anche se non erano molto conversativi, e sotto il cofano erano semplicemente composti da scambi di dati con i server web.

Al giorno d'oggi, anche se esiste un numero enorme di esempi di `` intelligenza artificiale debole '' (inclusi Siri, Alexa, motori di ricerca web, traduttori automatici e riconoscimento facciale) e altri argomenti come il responsive web design stanno conquistando le luci della ribalta, i chatbot continuano a suscitare scalpore . Con importanti investimenti da parte di grandi aziende, rimangono molte opportunità per hackerare le interfacce di conversazione del futuro.

  • Come progettare un'esperienza di chatbot

A volte hanno una cattiva reputazione, ma i chatbot possono essere utili. Non hanno bisogno di sentirsi come un sostituto di base per un modulo web standard, in cui l'utente compila i campi di input e attende la convalida: possono fornire un'esperienza di conversazione.


In sostanza, stiamo migliorando l'esperienza dell'utente per renderla più naturale, come conversare con un esperto o un amico, invece di puntare e fare clic sul browser web o gesti da dispositivo mobile. L'obiettivo è che, fornendo risposte empatiche e contestuali, questa tecnologia venga incorporata direttamente nella vita delle persone.

Guarda il video qui sotto o continua a leggere per scoprire un modo pratico per progettare e costruire un chatbot, basato su una reale applicazione di assunzione di progetti in una pratica di progettazione di servizi.

01. Stabilisci una personalità

Poiché questa pratica serve oltre 110.000 membri in tutto il mondo, l'obiettivo era fornire un'interfaccia rapida, comoda e naturale attraverso la quale le parti interessate interne potessero richiedere servizi digitali efficaci, invece di dover compilare moduli confusi.

Il primo passo è stato quello di stabilire la personalità del chatbot, in quanto ciò rappresenterebbe la voce del team di progettazione del servizio per i suoi stakeholder. Ci siamo basati sul lavoro fondamentale di Aarron Walter sui personaggi del design. Ciò ha notevolmente aiutato il nostro team a sviluppare i tratti della personalità del bot, che ha poi determinato i messaggi per i saluti, gli errori e il feedback degli utenti.


Questa è una fase delicata, poiché influisce sul modo in cui viene percepita l'organizzazione. Per assicurarci di avere quante più informazioni possibili, abbiamo immediatamente organizzato seminari per le parti interessate per definire la personalità, il colore, la tipografia, le immagini e il flusso dell'utente appropriati quando interagiscono con il bot.

Dopo aver ottenuto tutte le approvazioni necessarie, inclusa la ricerca di un consulente legale, abbiamo deciso di convertire i moduli di richiesta arcaici in una serie di domande avanti e indietro che imitavano una conversazione tra le parti interessate e un rappresentante del nostro team di servizi di progettazione.

02. Usa RiveScript

Sapevamo di non voler approfondire troppo il linguaggio di markup AI per la parte di elaborazione: avevamo solo bisogno di quanto basta per far ripartire l'esperienza.

RiveScript è una semplice API di chatbot abbastanza facile da imparare e sufficiente per le nostre esigenze. In pochi giorni abbiamo avuto la logica per acquisire una richiesta di progetto dal bot e analizzarla con una logica di business sufficiente per convalidarla e classificarla in modo che potesse essere inviata tramite i servizi JSON REST alla coda di task interna del progetto appropriata.


Per far funzionare questo chatbot di base, vai al repository RiveScript, clonalo e installa tutte le dipendenze Node standard. Nel repo puoi anche avere un assaggio delle interazioni che puoi aggiungere con i vari frammenti di esempio.

Successivamente, esegui la cartella del client web, che trasforma il bot in una pagina web eseguendo un server Grunt di base. A questo punto puoi migliorare l'esperienza in base alle tue esigenze.

03. Genera il cervello del tuo bot

Il passaggio successivo consiste nel generare il "cervello" del nostro bot. Questo è specificato nei file con estensione .RIVE, e per fortuna RiveScript viene fornito con interazioni di base già pronte all'uso (ad esempio, domande come "Come ti chiami?", "Quanti anni hai?" E "Qual è il tuo colore preferito?').

Quando si avvia l'app client Web utilizzando il comando Node appropriato, viene richiesto al file HTML di caricarli.RIVE File.

Successivamente dobbiamo generare la parte del cervello del nostro chatbot che si occuperà delle richieste del progetto. Il nostro obiettivo principale è convertire una selezione di domande di assunzione del compito di progetto in una conversazione regolare.

Quindi, ad esempio:

  • Ciao, come possiamo aiutarti?
  • Ottimo, quanto tempo dobbiamo iniziare?
  • Puoi darmi un'idea approssimativa del tuo budget?
  • Dimmi di più sul tuo progetto ...
  • Come hai saputo di noi?

Un tipico modulo web accessibile sarebbe simile a questo:

form action = ""> fieldset> legend> Tipo richiesta: / legend> input id = "option-one" type = "radio" name = "request-type" value = "option-one"> label for = "option- uno "> opzione 1 / etichetta> br> input id =" opzione-due "tipo =" radio "nome =" richiesta-tipo "valore =" opzione-due "> etichetta per =" opzione-due "> opzione 2 / label> br> input id = "option-three" type = "radio" name = "request-type" value = "option-three"> label for = "option-three"> opzione 3 / label> br> / fieldset > fieldset> legend> Timeline: / legend> input id = "one-month" type = "radio" name = "request-timeline" value = "one-month"> label for = "one-month"> 1 mese / label> br> input id = "one-three-months" type = "radio" name = "request- timeline" value = "one-three-months"> label for = "one-month"> 1-3 mesi / label> br> input id = "quattro-plus-months" type = "radio" name = "request- timeline" value = "four-plus-months"> label for = "four-plus-months"> 4+ months / label> br> / fieldset> br> label for = "request-budget"> Informazioni sul budget / label> br> textarea id = "request-budget" name = "request-budget-text" righe = "10" cols = "30"> / textarea> br> label for = "request-description"> Project Description / label> br> textarea id = "request-description" name = "request- description-text" rows = "10" cols = "30"> / textarea > br> label for = "request-reference"> Reference / label> br> textarea id = "request-reference" name = "request-reference- text" righe = "10" cols = "30"> / textarea> br > input type = "submit" value = "Submit"> / form>

Con i moduli web, abbiamo molta familiarità con alcuni schemi: fai clic sul pulsante Invia, tutti i dati del modulo vengono inviati a un'altra pagina in cui viene elaborata la richiesta e quindi molto probabilmente viene visualizzata una sfacciata pagina di ringraziamento.

Con i chatbot, siamo in grado di prendere l'interazione di inviare una richiesta e renderla più significativa.

04. Progetta una voce

Per convertire questo modulo in un'interfaccia utente conversazionale servita nel client web chatbot di RiveScript, dobbiamo convertire l'architettura delle informazioni da rigida a fluida; o le etichette dei campi nelle stringhe dell'interfaccia utente.

Consideriamo alcune etichette di campo accessibili e il relativo tono di domanda:

  • Richiesta: Come possiamo aiutare? Non è sicuro? Ti dispiace se ti faccio qualche domanda?
  • Sequenza temporale: Dopo quanto tempo dobbiamo iniziare?
  • Informazioni sul budget: Puoi darmi un'idea approssimativa del tuo budget?
  • Descrizione del progetto: OK, puoi dirmi un riepilogo del problema da risolvere?
  • Riferimento: Inoltre, chi ti ha indirizzato a noi?

Successivamente dobbiamo convertire il codice del modulo web in script AI, seguendo la logica di elaborazione molto apprendibile di RiveScript per le conversazioni a due vie:

- Come possiamo aiutare? + *% come possiamo aiutarti - set Areas = varSure, ti dispiace se faccio un paio di domande? + *% sicuro ti dispiace se faccio un paio di domande - Quanto tempo devo iniziare questa richiesta? + *% quanto tempo devo iniziare questa richiesta - imposta quando = var Puoi darmi un'idea approssimativa del tuo budget? + *% potete darmi un'idea approssimativa del vostro budget - set budget = varOK, potete dirmi un riepilogo del problema da risolvere, dei componenti e degli ambienti interessati o una descrizione generale? + *% ok puoi dirmi un riepilogo del problema da risolvere componenti e ambienti interessati o una descrizione generale - set project = varAlso, chi ti ha indirizzato a noi? + *% anche chi ti ha indirizzato a noi - set referal = vargreat ecco cosa ho ottenuto finora: n Servizi necessari: ottieni aree> n Necessità di iniziare: ottieni quando> n Budget approssimativo: ottieni budget> n Informazioni sul tuo progetto: ottieni progetto> n Segnalato da: ottieni referral> ne ti contatterò a breve. C'è qualcos'altro per cui posso aiutarti oggi? chiama> assunzione ottieni aree> ottieni quando> ottieni budget> ottieni progetto> ottieni referal> / chiama>

05. Richiesta di presentazione

A differenza delle variabili del modulo standard inviate a un'altra pagina o servizio da elaborare, i chatbot possono convalidare e inviare immediatamente le informazioni inserite dall'utente in una finestra di chat (o parlate), il che significa che gli utenti possono anche rivisitare facilmente i valori immessi in precedenza.

Avevamo bisogno di inviare la richiesta dell'utente inserita nell'interfaccia utente del chatbot tramite l'API REST JSON a un server incaricato del progetto esterno.

In RiveScript-js siamo liberi di utilizzare un file XMLHttpRequest opporsi a inoltrare la richiesta quasi contemporaneamente, in quanto i dati vengono inseriti dall'utente:

> assunzione di oggetti javascript var http = new XMLHttpRequest (); var a = rs.getUservar (rs.currentUser (), "aree"); var b = rs.getUservar (rs.currentUser (), "quando"); var c = rs.getUservar (rs.currentUser (), "budget"); var d = rs.getUservar (rs.currentUser (), "progetto"); var e = rs.getUservar (rs.currentUser (), "referal"); var url = "http: // localhost: 3000 / send"; var params = "aree =" + a + "e quando =" + b + "& budget =" + c + "& progetto =" + d + "& referal =" + e; console.log (params); http.open ("POST", url, true); http.setRequestHeader ("Content-type", "application / x- www-form-urlencoded"); http.setRequestHeader ("Connessione", "chiudi"); http.onreadystatechange = function () {// Chiama una funzione quando lo stato cambia. if (http.readyState == 4 && http.status == 200) {alert (http.responseText); }} http.send (params); oggetto

06. Non temere il chatbot

Presto, i modi attuali di interagire con i computer per ottenere informazioni cederanno alla tecnologia basata sull'intelligenza artificiale come i chatbot, in cui le persone fanno solo semplici comandi vocali, come abbiamo visto con tecnologie come Amazon Echo e Google Home.

La comunità del web design non deve temere: dovremmo tutti abbracciare il valore aggiunto di questa nuova tecnologia.

Potrebbe essere un punto di svolta per le aziende per cui lavora, offrendo un servizio clienti completamente scalabile e una migliore intelligenza del cliente.

Questo articolo è stato originariamente pubblicato innet magazine, la rivista più venduta al mondo per web designer e sviluppatori. Iscriviti qui.

Consigliato
Progetta prototipi interattivi in ​​Framer
Per Saperne Di Più

Progetta prototipi interattivi in ​​Framer

Il ragionamento alla ba e della prototipazione del de ign non è nuovo: è lo te o di tutto il pa aparola ulla progettazione nel brow er. Quando vedi un de ign nel uo conte to reale, è co...
Queste offerte per Nintendo Switch sono le più basse in questo momento!
Per Saperne Di Più

Queste offerte per Nintendo Switch sono le più basse in questo momento!

ALTA A: Cambia bundle Cambia Lite Cambia bundle Lite Offerte di gioco Offerte Joy-Con Offerte Pro Controller Le migliori offerte per Nintendo witchPa a allo witch che de ideri: 01. Cambia offerte in ...
Risposte uniche e complesse dei designer ai brief del cliente
Per Saperne Di Più

Risposte uniche e complesse dei designer ai brief del cliente

Conqui tare un nuovo cliente nel competitivo ettore del de ign non è un compito facile. Tuttavia, tutta una erie di de igner udafricani ha deci o di tra formare i brief iniziali in qualco a di cr...