L’Era dei Chatbots e degli Assistenti Virtuali

In questa pagina vedremo le principali differenze tra Chatbot e Assistenti Virtuali, passando per una analisi dello stato attuale dell’interesse per queste tecnologie.
Su osservatori.net (Portale dedicato all’Innovazione Digitale su iniziativa della School of Management del Politecnico di Milano), si può leggere un articolo sull’impatto dell’Intelligenza Artificiale in Italia. Sintentizzando al minimo questo comunicato del 20 febbraio 2020, si apprende che il mercato AI (Artificial Intelligence) in Italia vale circa 200 milioni di Euro. In particolare i settori più interessati all’AI risultano Banche, Manifattura, Assicurazioni e in questo scenario, l’interesse si concentra sui Chatbots nel 28% dei casi.
Il mercato globale dell’Intelligenza Artificiale e dei Chatbot in particolare è in continua ascesa.
Secondo Markets and Markets, la dimensione del mercato globale dell’Intelligenza Artificiale conversazionale crescerà da 4,2 miliardi di dollari nel 2019 a 15,7 miliardi di dollari entro il 2024, con un tasso di crescita annuale di circa il 30,2%.
Intelligent Virtual Assistant (IVA) o anche Assistente Virtuale e chatbot sono i due tipi di segmenti risultanti dal rapporto di mercato dell’IA conversazionale.
Ma cos’è un Chatbot e cos’è un Assistente Virtuale?
Nell’immaginario comune i due tipi di AI vengono spesso confusi e considerati la stessa cosa. Tuttavia esistono sottili differenze tra Chatbot e Assistenti Virtuali.
I chatbot, generalmente utilizzati come interfacce di acquisizione delle informazioni, possono essere utili per l’analisi dei dettagli di un determinato prodotto. Gli assistenti virtuali possono aiutare a condurre una vera e propria attività, come ricordarti gli appuntamenti, gestire le tue liste di cose da fare, inviare messaggi e così via. Potremmo dire che se si chiede a un chatbot tale assistenza virtuale, esso può andare in confusione e finire a proporre continuamente le stesse domande per chiarimenti. Entrambi sono considerati interfacce di conversazione o anche agenti intelligenti, ma in realtà sono molto diversi l’uno dall’altro.
I chatbot sono programmi automatizzati utilizzati come mezzo per interagire con gli esseri umani tramite messaggi testuali o audio. Questo software basato sull’intelligenza artificiale viene generalmente utilizzato dalle Organizzazioni per automatizzare i programmi di assistenza clienti. I chatbot svolgono un ruolo cruciale nel servizio clienti, in cui vengono utilizzati come strumento di acquisizione delle informazioni. I clienti interagiscono col bot per avere risposte a domande riguardanti un prodotto, per avere informazioni relative al prodotto o anche per prenotare un appuntamento con il responsabile del prodotto.
Un assistente virtuale è un agente digitale personale, spesso caratterizzato da Reti Neurali Artficiali e da algoritmi di Machine Learning, che ci assiste nello svolgimento delle attività quotidiane come impostare la sveglia, programmare un appuntamento, effettuare ricerche, digitare messaggi e così via. Gli assistenti virtuali pertanto sono simili agli assistenti umani personali che, diciamo, prendono appunti durante una riunione, ci ricordano di occuparci della nostra lista di cose da fare o leggono i messaggi e le e-mail che ci vengono inviate.
Le differenze sostanziali tra Assistenti Virtuali e Chatbot.
I chatbot mancano di “comprensione” delle emozioni umane. Forniscono risposte accurate alle domande, ma non riescono a comprendere i nostri stati d’animo ed emozioni e non sanno come rispondere di conseguenza.
D’altra parte, con l’uso dell’elaborazione e la comprensione avanzata del linguaggio naturale (Natural Language Processing – NLP + Natural Language Understanding – NLU), gli assistenti virtuali possono analizzare le complessità del linguaggio naturale. Pertanto, gli assistenti virtuali interagiscono con gli utenti in modo molto più umano, offrendo maggiore efficienza e precisione. Tuttavia, con l’aiuto dell’intelligenza emotiva dell’IA, si stanno ora sviluppando chatbot in grado di misurare i sentimenti umani.
Un’altra differenza significativa sta nel mantenimento del flusso di conversazione. Durante l’interazione con i chatbot, se interrompi la bruscamente la conversazione, il bot non riuscirà a ricordare il contesto dell’interazione. Invece, gli assistenti virtuali utilizzano tecniche di flusso di conversazione dinamiche per comprendere l’intento umano, arricchendo le comunicazioni con gli esseri umani.
Quali Tecnologie caratterizzano un Chatbot e un Assistente Virtuale?
I chatbot possono essere facilmente creati con linguaggi di programmazione come javascript e python. Sebbene sia possibile utilizzare anche java e C#, questi non forniscono un’interfaccia migliore dei precedenti tre. Alcuni server di hosting più usati per dar vita ai chatbot sono AWS di Amazon, Heroku e Azure di Microsoft.
Gli assistenti virtuali utilizzano reti neurali artificiali (Artificial Neural Network – ANN) come addestramento per imparare dalle situazioni in atto. Le ANN sono utili per riconoscere, classificare e prevedere, in base all’analisi del contesto. Alcune tra le tecnologie più popolari disponibili al momento sono DialogFlow di Google, Amazon Lex, IBM Watson e RASA.
Entrambi possono essere integrati con le piattaforme di messaggistica più diffuse come Telegram, Messenger, Skype, Slack. O anche si può ritrovare un chatbot o un assistente virtuale all’interno di una pagina web o su un sistema più complesso che riguarda l’Internet of Things (IOT).
Se vuoi vedere come funziona un assistente virtuale che ti aiuta a prenotare dal barbiere, puoi dialogare con Memus (su piattaforma Telegram) realizzato con tecnologia DialogFlow. Se invece vuoi vedere come realizzare un chatbot con Python, leggi Telegram Bot con Python e Chatterbot.