A vos bots, prêts, partez !
Créer un chatbot oui, mais pour quels enjeux, avec quelle plateforme et quelle architecture? Le Lab4Us, entité du collectif Suricats, vous livre ses conclusions quant à l’attrait du chatbot.
Depuis quelques temps, le bot a le vent en poupe ! Pas nés de la dernière ligne de code – les premiers bot remontent tout de même aux années 50 avec un regain d’intérêt mid-90’s – ils font de plus en plus parler d’eux comme étant l’avenir du Web et le futur des Apps. Ils ne sont désormais plus uniquement l’apanage des grands du Web : Facebook, Microsoft et consort en ont fait leur cheval de bataille depuis 2016, en lançant leur propre bot store pour se positionner comme acteurs structurant du marché.
Avec des algorithmes d’intelligence artificielle de plus en plus performants et des possibilités d’analyse des données de plus en plus larges, ces bots sont passés du simple « gadget » à un véritable assistant personnalisé dont le potentiel des usages est encore très largement à explorer… Portées par cette tendance, de plus en plus d’entreprises se tournent vers ces nouveaux outils conversationnels intelligents qu’elles cherchent à mettre à profit en les intégrant au SI pour renforcer la qualité de leurs interactions avec l’utilisateur.
Forts de ce constat, et de quelques sollicitations clients, nous avons décidé de céder aux sirènes du bot. En nous appuyant sur un écosystème foisonnant, notamment de start-ups, nous nous sommes interrogés à notre tour sur ce qui les rend si populaires et, bien sûr, identifier les raisons et enjeux autour d’une telle explosion.
Un chatbot est fondamentalement une application conversationnelle qui permet à un utilisateur de dialoguer, que ce soit via les réseaux sociaux (Facebook Messenger, Whatsapp, etc.) ou directement sur un site internet. Jusque-là rien de révolutionnaire ! Mais les chatbots ont réussi à prendre un tout nouvel essor du fait de leur capacité à interpréter finement l’intention de l’utilisateur avec lequel il interagit, voire même son humeur. Cela permet au bot de disposer d’informations plus précises pour répondre aux requêtes utilisateurs, avec un résultat bien supérieur aux réponses prédéfinies, sans grande valeur ajoutée, d’il y a encore quelques années. Cette nouvelle dimension est rendue possible par l’usage combiné de l’intelligence artificielle – en particulier autour de l’intelligence conversationnelle – et des API qui offrent une consommation simplifiée des données du SI.
Ouvrons maintenant le capot d’un chatbot, au travers du modèle d’architecture simplifié que nous illustrons ci-dessous.
- Côté Front, l’interface d’échange avec l’utilisateur (e.g. une plateforme de messagerie). Elle assure la transmission des demandes au bot et restitue le résultat à l’utilisateur. Une première brique intermédiaire – le « BotConnector » – rend le bot indépendant des spécificités de la plateforme de messagerie avec laquelle il communique.
- Au centre : le bot. Il répond aux requêtes de l’utilisateur grâce à un arbre de décision conversationnel préconfiguré. Il apporte les réponses adaptées à une série de questions préétablies et permet ainsi une véritable discussion entre le bot et l’utilisateur.
- Côté Back, deux composants essentiels pour apporter une pertinence à l’échange avec l’utilisateur :
l’analyseur de langage (NLP) qui constitue l’intelligence du chatbot, capable d’interpréter la demande et d’en déduire les intentions de l’utilisateur. Requête après requête, cette couche d’intelligence « apprend » et améliore sa compréhension fine et précise de la demande utilisateur ;
la couche « métier » du bot, qui apporte le corps de la réponse en s’appuyant sur les services métier que le SI expose au travers des API.
Pour répondre à votre curiosité bien naturelle, détaillons chaque composant :
La plateforme de messagerie : Slack, Facebook Messenger, Skype, Telegram, ou un extranet de l’Entreprise
Ce sont les différents « moyens » de conversation que l’utilisateur peut choisir pour échanger avec le bot. Chaque plateforme utilise un protocole dédié, qu’il soit public ou non. S’il est plutôt simple de s’interfacer avec une seule plateforme, offrir à l’utilisateur le choix de son canal de communication exige de multiplier les interfaces, et la maîtrise de tous les protocoles devient réellement complexe.
Le BotConnector
Le BotConnector répond à cette complexité et permet de s’intégrer simplement dans plusieurs plateformes de conversations au travers d’une seule et même interface. Il évite donc de devoir développer (et maintenir !) un bot multi plateformes ou une version spécifique du bot adaptée aux spécificités de chacune des plateformes possibles. Les enjeux et la valeur d’un bot ne sont clairement pas là !
Les solutions de BotConnector sont récentes (2016). Elles permettent aux développeurs de bots de toucher rapidement et sans effort un large public.
Nous avons pu tester avec Bonheur Microsoft Bot Connect, Recast Bot Connector
Le « Natural Language Processing Manager »
Le Natural Language Processing est un domaine de l’intelligence artificielle centré autour de la logique conversationnelle. Il regroupe différents concepts qui donnent au bot sa capacité à comprendre le sens d’une phrase, quelles que soient les fautes de frappe ou les errances orthographiques et grammaticales de l’auteur. Cette phase d’interprétation requiert une étape d’entraînement pendant laquelle le NLP Manager est confronté à des cas réels. Il s’agit de le corriger à chaque erreur afin qu’il puisse « apprendre » à reconnaître le sens des phrases qui lui seront soumises. Petit enfant deviendra grand.
Plusieurs NLP du marché nous ont montré leur pertinence : recast.ai, api.ai, davy
Le BOT
Le bot est avant tout un workflow conversationnel, qui est déroulé pendant l’échange avec l’utilisateur afin de lui apporter les réponses adaptées à ses demandes. Le bot est au centre de l’architecture, interfacé avec le NLP Manager qui lui donne le sens de la demande utilisateur et les API qui lui remontent l’information dont il a besoin.
Open API
Il s’agit d’API publiques qui permettent à tout un chacun de consommer des données dites « ouvertes », proposées par des acteurs tels que Météo France, SNCF ou RATP.
Beaucoup de bots profitent de ces APIs pour construire des réponses riches et diversifiées à l’utilisateur sur ses préoccupations quotidiennes – et cela bien plus intuitivement qu’au travers d’un site web.
Services du SI
Répondre à des questions plus complexes requiert un accès au Système d’Information et l’exploitation des données personnelles qu’il contient. On parle de consulter le solde de son compte bancaire ou d’exécuter un virement.
On se frotte alors aux problématiques sensibles d’identification, d’authentification et d’autorisation de l’utilisateur pour accéder à ses données confidentielles.
Pour être aussi pertinent qu’un bon bot, il nous fallait expérimenter, itérer et faire émerger quelques points d’attention précis pour bien structurer son projet « bot ». Sans attendre vos questions, nous nous proposons de vous restituer les 5 principaux enseignements que nous avons retenus pour créer un chatbot – certains pour un gain de valeur côté métier, d’autres pour s’éviter des écueils d’ordre technique.
1. Faire émerger des cas d’usage précis au service du client final et de l’organisation globale de l’entreprise
A quel enjeu métier répond votre bot ? Améliorer l’expérience client en apportant des réponses construites et pertinentes à un besoin précis formulé par un utilisateur ? Automatiser une FAQ pour désengorger le service client et le recentrer sur des thématiques d’expertise ? Développer une stratégie marketing multicanale en ouvrant un nouveau canal d’interaction avec le client « techno-savvy » et collecter ainsi de la donnée client ?
On comprend que le choix des bons cas d’usage est clef pour positionner le bot comme un véritable outil au service des client et de l’entreprise.
2. Rendre la discussion la plus fluide possible
Dès les phases amont du projet, il convient de bien réfléchir au parcours de discussion, d’identifier les ouvertures et les chemins possibles et ne pas être trop verbeux. L’utilisateur doit croire à une discussion « humaine ». Plus les informations fournies au moteur d’Intelligence Artificielle sont riches et diversifiées, plus il comprendra le contexte et plus la réponse qu’il fournira au bot sera proche d’une conversation « réelle ». Il est essentiel de construire avec soin une base de connaissance représentative des conversations « possibles ». Certaines IA nécessitent moins d’entraînement et deviennent plus efficace rapidement, on parle alors de “deep learning”.
Le choix du composant NLP est un critère différenciant pour un bot. Selon qu’il soit spécifique à un domaine (ex: Destygo, IA pour le voyage) ou généraliste (recast.ai), la phase d’acquisition du contexte métier (i.e. phase d’entraînement) sera plus ou moins longue. Pour une entreprise, cette base de connaissance constituera l’ADN des bots qui seront proposés à ses utilisateurs.
À noter : à ce jour les outils de NLP ne gèrent pas de manière efficace l’identification de la langue de la discussion (expérience dans un contexte multi langues)
3. Être indépendant technologiquement des canaux de communication
Afin de pouvoir lancer son bot de manière efficace et rapide, il est préférable de rester indépendant de la plateforme de messagerie. Nous recommandons de choisir (au moins dans une phase initiale) une technologie assurant un bon niveau d’abstraction, permettant de faire évoluer le bot de manière centralisée quelle que soit son intégration sur les plateformes de messagerie.
Cependant, l’utilisation d’un BotConnector ne permet pas de s’abstraire de l’ensemble des spécificités d’une plateforme de messagerie. L’utilisation des composants graphiques spécifiques peut se révéler nécessaire (carrousel, boutons) pour s’intégrer pleinement au “style” de chacune des UX des plateformes. Il est essentiel, de notre point de vue, de respecter le plus possible les principes de fonctionnement ergonomiques de chacune d’elle.
4. Concevoir les bots comme de nouveaux cas d’usage valorisant les API de l’entreprise
Cette étape charnière du projet requiert une analyse complète de l’intégration dans le SI par des profils experts d’architectes de façon à adresser toutes les problématiques techniques dans le contexte utilisateur. Cette étape est forcément spécifique et peut devenir particulièrement complexe selon la nature des données manipulées et des technologies des legacys.
5. Sécuriser les accès aux données du SI
Il est indispensable de monitorer le comportement des bots pour assurer la fiabilité des échanges avec les API du SI.
CONCLUSION
Le développement de l’intelligence artificielle a permis de donner une nouvelle dimension aux outils conversationnels, plébiscités par de plus en plus de marques et d’entreprises séduites par ce nouveau moyen de communication direct avec leurs clients. En ouvrant les portes de leur SI et en permettant de consommer les données appropriées par l’ouverture de leurs API, elles sont désormais capables de développer des cas d’usage plus complexes et plus personnalisés laissant imaginer une refonte complète de l’expérience utilisateur. Les projets de mise en œuvre de bot pourrait à ce titre devenir un des enjeux stratégiques du développement de la relation client pour les entreprises, tiré par l’accélération de l’IA (foisonnement des acteurs sur le marché des NLP et de l’intelligence conversationnelle, développement de la reconnaissance vocale pour de nouveaux usages et un nouveau mode d’interaction, développement de l’intelligence “émotionnelle” pour un contact plus humain). Cela induit des problématiques légitimes pour les entreprises sur les choix d’intégration de ces solutions dans les SI et plus largement sur la sécurisation des données internes.
La tendance déjà marquée de l’usage des bots va dans le sens de la substitution des apps, on parle « invisible apps ». D’ici quelques années, nous ne consommerons plus les applications de la même manière, peut-être nous adresserons nous uniquement à un bot pour toutes nos demandes, par SMS ou Whatsapp, comme s’il s’agissait d’un de nos proches. Ces « invisibles apps » – comme nouveaux moyens de communication unique – permettraient d’offrir un service simplifié, une expérience utilisateur unifiée et une intelligence contextuelle au service des utilisateurs finaux dans une relation “humanisée” et de confiance. Les invisibles apps arrivent petit à petit, et la transition se prépare dès maintenant : alors à vos BOTs, prêts, partez !