IT & Engineering

Conseils de développement de chatbot : comment se lancer dans l’IA conversationnelle

Les chatbots ont le vent en poupe en ce moment. Découvrez les informations essentielles sur la création d'un bot et les bonnes pratiques à suivre pour l'équipe de développement qui se lance dans l'univers de l'IA conversationnelle.
Image pour Conseils de développement de chatbot : comment se lancer dans l’IA conversationnelle

L’avènement du chatbot est là. Et si vous voulez vous attirer les bonnes grâces de ces créations dotées d’une intelligence artificielle, vous devriez en savoir un rayon sur leur conception. Pour paraphraser la célèbre citation de Sun Tzu : « Gardez vos amis près de vous et vos bots encore plus près. »

Blague à part, les chatbots prennent de plus en plus d’importance. Et bien que notre spécialité soit l’email chez Sinch Mailgun, utiliser des chatbots pour améliorer l’expérience utilisateur présente de grands avantages. Les chatbots peuvent notamment fournir des réponses immédiates… à tout moment, n’importe quel jour de la semaine. Les chatbots peuvent également accroître l’adoption de vos produits, aider les utilisateurs et utilisatrices à naviguer sur votre application, et répondre aux questions de support récurrentes.

Comprendre le fonctionnement des chatbots et la création d’un bot vous aidera à diversifier vos skills et fera de vous un·e développeur·euse encore plus précieux·euse.

Bien sûr, l’image stéréotypée de la profession de développement est celle d’une personne assise dans une pièce sombre, entourée d’écrans remplis de lignes de codage et engloutissant des quantités astronomiques de caféine.

Il y a peut-être une part de vérité là-dedans. Mais les meilleurs talents de développement savent également comment créer une expérience utilisateur idéale. En ce qui concerne le développement de chatbot, cela implique de savoir comment les gens parlent, écrivent, pensent et ressentent les choses.

Comme nous l’avons appris de la part de Fréderic Godin, Head of AI chez Chatlayer by Sinch, la création d’un chatbot ne se résume pas à du codage.

Les bases : comment fonctionnent les chatbots ?

Un chatbot est un logiciel programmé pour simuler une conversation humaine. Selon CX Today, il existe trois méthodes principales pour faire fonctionner un chatbot :

  1. La reconnaissance de modèles est une méthode utilisée par les bots basés sur des règles pour classer le texte et répondre en fonction des mots-clés qu’ils reconnaissent dans les questions.
  2. D’autres bots utilisent des algorithmes, tels que le Naïve Bayes multinomial , un algorithme conçu pour analyser les saisies de texte et résoudre des problèmes à classes multiples.
  3. Les chatbots encore plus avancés utilisent des réseaux de neurones artificiels, qui sont des algorithmes plus complexes basés sur le mode de fonctionnement des neurones dans le cerveau humain.

Les chatbots les plus efficaces utilisent le traitement du langage naturel (NLP), qui est une branche de l’intelligence artificielle (IA). L’objectif du NLP est d’aider les machines à comprendre la façon dont les gens communiquent afin que l’IA puisse générer une réponse utile. Comme l’explique Fréderic, un bon chatbot peut même identifier les émotions humaines.

Grâce au traitement du langage naturel, le bot peut comprendre si une personne se sent en colère, heureuse ou neutre. Et il peut réagir en conséquence.
Fréderic Godin Head of AI, Chatlayer by Sinch

Certains bots répondent aux communications textuelles tandis que les bots vocaux permettent d’interagir sur un appareil par la voix, éliminant le besoin de taper au clavier.

Bien que tous les chatbots utilisent une logique métier basique pour fournir des réponses prédéfinies aux questions, les bots basés sur des règles ou la reconnaissance de modèles ne peuvent le faire qu’à partir d’un nombre limité de questions et de mots-clés reconnaissables. Cependant, la technologie des chatbots a largement dépassé ce stade.

Les bots plus avancés utilisent le machine learning pour élargir leurs connaissances et leurs capacités en fonction des requêtes et des interactions de l’utilisateur ou l’utilisatrice. Au fil du temps, ces bots sont programmés pour s’améliorer et répondre aux personnes réelles en se basant sur les conversations qu’ils ont eues avec leur base d’utilisateurs.

C’est ce que l’on appelle l’IA conversationnelle. C’est lorsqu’un bot utilise le NLP, le machine learning et le design conversationnel pour reproduire une interaction réaliste entre deux personnes. Pour faire simple, l’IA conversationnelle donne aux chatbots une voix humaine, et non celle d’un robot.

Il s’agit d’un défi extrêmement complexe. Pensez au fait qu’il faut à une personne typique jusqu’à l’âge de 12 ans pour apprendre les 20 000 mots les plus courants de sa langue maternelle. Imaginez alors développer un chatbot multilingue efficace pour une organisation internationale.

Heureusement, une grande partie du travail préparatoire a déjà été effectuée. Les plateformes de création de chatbots comme Chatlayer by Sinch permettent de simplifier et de fluidifier le processus. Un bot peut être créé dans une langue et en comprendre plus de 100 autres sans avoir besoin d’un nouvel apprentissage.

Comment les chatbots répondent aux questions

Les gens peuvent poser la même question de nombreuses manières différentes. C’est pourquoi Fréderic affirme qu’un chatbot bien programmé doit être capable de traiter une grande variété de requêtes. Il peut utiliser le machine learning pour y parvenir, mais vous devez d’abord lui donner matière à travailler.

Lorsque vous souhaitez créer un bot, vous devez lui donner quelques exemples de la façon dont les gens formulent une demande. Par exemple, si vous voulez permettre aux gens de commander une pizza, vous donnerez au bot cinq façons classiques dont les gens commandent une pizza. À partir de ces exemples, nous essayons de nous assurer que le bot comprend toutes les variantes des manières dont les gens commandent des pizzas.
Fréderic Godin Head of AI, Chatlayer by Sinch

Fréderic ajoute qu’un excellent chatbot doit également comprendre les fautes d’orthographe, les fautes de frappe, l’argot, les synonymes et les phrases dont les mots sont disposés dans un ordre différent.

Les chatbots et le NLP

Lorsque les chatbots utilisent un moteur de traitement du langage naturel, ils peuvent interpréter une grande variété de saisies provenant des utilisateurs et utilisatrices, même sans la présence des mots-clés les plus importants dans le message. De plus, un moteur NLP aide les bots à traiter les fautes de frappe et autres erreurs.

Graphic illustrating natural language processing for a pizza order

Bien sûr, c’est beaucoup plus complexe que l’image ci-dessus. Voici plusieurs termes clés liés au NLP et à l’expérience de chatbot :

  • Messages et expressions
  • Intention
  • Taux de confiance
  • Réponses
  • Entités
  • Sentiments

Ensemble, ces termes constituent les composants de base qui, une fois connectés, créent le flux d’une conversation de chatbot. Apprendre à concevoir ces flux est une pratique connue sous le nom de design conversationnel.

Un message est la question ou le commentaire qu’un ou une client·e ou un utilisateur ou une utilisatrice envoie au chatbot : « Je veux commander une pizza. » Ce message est associé à une intention avant d’être envoyé au chatbot.

Une intention est l’objectif global que le ou la client·e veut atteindre. Dans ce cas : commander une pizza.

Bien sûr, il existe plus d’une façon de demander une pizza. Les expressions représentent les différentes manières de formuler la demande :

  • « Puis-je commander une pizza ? »
  • « Il me faut une pizza au plus vite. »
  • « J’ai envie d’une pizza ! »

Lorsqu’un ou une client·e envoie un message, le moteur NLP essaie de comprendre l’expression et de l’associer à la bonne intention. Il attribue également au message un score de confiance, qui évalue le degré de certitude de la technologie quant à la prédiction de l’intention. L’équipe de développement peut définir un seuil de score de confiance de sorte que, s’il est trop faible, le bot puisse envoyer une réponse du type « non compris » et éventuellement demander au ou à la client·e de reformuler pour plus de clarté.

Les réponses sont (vous l’aurez deviné) ce que le bot renvoie au ou à la client·e. Ce n’est pas toujours une réponse directe. Bien souvent, il s’agit d’une autre question qui permet de clarifier le message et de poursuivre la conversation. De plus, l’intégration de diverses réponses du bot rend l’interaction plus authentique pour vos client·es fidèles.

  • « Bien sûr, quel type de pizza voulez-vous ? »
  • « Certainement, quelle taille souhaitez-vous commander ? »
  • « Bien sûr ! Ce sera en livraison ou à emporter ? »

Les entités sont des éléments présents dans une expression qui fournissent des informations dont un chatbot aura finalement besoin, et suggèrent le type de réponse qu’il doit fournir. Par exemple, le message initial d’un ou une client·e concernant une pizza peut préciser la taille ou la garniture. Le chatbot doit donc traiter cette information et fournir une réponse appropriée sans avoir à poser la question par la suite.

  • Client·e : « Puis-je commander une grande pizza ? »
  • Bot : « Bien sûr, que voulez-vous sur votre grande pizza ? »

Enfin, les sentiments d’un message fournissent au chatbot des indices sur ce que la personne ressent. Par exemple, si l’individu semble frustré, le bot pourrait répondre par des excuses pleines d’empathie.

  • Client·e : « Où est passée ma foutue pizza ?! »
  • Bot : « Je suis désolé que vous attendiez toujours. Laissez-moi voir si je peux vous aider. »

Le moteur NLP associe le message à la bonne intention, mais il extrait également les entités de l’expression et peut détecter le sentiment afin d’envoyer une réponse adaptée de manière appropriée.

Voici un tableau montrant comment ce flux complet pourrait fonctionner dans le secteur du tourisme :

Natural language processing flow for a chatbot

Cliquez pour voir un graphique en taille réelle

Les chatbots et les données

Un autre facteur important dans le développement de chatbot est de disposer d’une base de données fiable. Vous avez besoin de données sur les utilisateurs et utilisatrices pour découvrir des détails sur les types de questions auxquelles le bot répondra. Ensuite, vous avez besoin d’une base de données qui aide le bot à fournir les bonnes informations en réponse.

Prenons l’exemple d’Alexa…

Si vous demandez à Alexa « Quel temps fait-il aujourd’hui ? », l’IA sait déjà où vous vous trouvez. C’est une donnée qu’elle possède sur vous. Ensuite, elle doit se connecter à une base de données contenant des informations météorologiques actualisées pour votre emplacement afin de pouvoir vous donner les prévisions.

Une solution d’IA conversationnelle efficace s’intègrera à d’autres plateformes afin d’accéder aux données qui améliorent et personnalisent l’expérience du chatbot. Par exemple, Les intégrations Chatlayer incluent des outils comme Salesforce, ZenDesk et Hootsuite.

Fréderic affirme que l’un des moyens de tirer parti des données zero-party dans l’IA conversationnelle est d’accéder aux journaux du support client.

Si l’audio a été enregistré entre les personnes qui appellent et les conseillers et conseillères, nous disposons d’outils pour identifier les questions les plus fréquemment posées et la manière dont les gens les posent généralement. De cette façon, vous obtenez des informations et des données que vous pouvez utiliser pour créer un bot en vous basant sur ce que les client·es demandent réellement à votre centre d’appels.
Fréderic Godin Head of AI, Chatlayer by Sinch

Quand un chatbot est pris au dépourvu

Les chatbots doivent également savoir quoi faire lorsqu’ils ne peuvent pas satisfaire un ou une client·e ou qu’ils n’ont pas de réponse au problème. Dans ce cas, Fréderic explique que le NLP, y compris la capacité d’identifier les émotions, s’avère très utile. L’équipe de développement peut programmer les bots pour qu’ils reconnaissent quand un ou une client·e a besoin de s’adresser à un ou une conseiller·ère.

Vous pouvez vous dire : « Si la personne est vraiment en colère, nous devrions peut-être la renvoyer vers le centre d’appels plutôt que de la laisser continuer à parler au chatbot. » Mais si le ton du ou de la client·e est neutre, le bot peut lui demander de reformuler une question qu’il n’a pas comprise.
Fréderic Godin Head of AI, Chatlayer by Sinch

Une observation intéressante que fait Fréderic à propos des interactions avec les chatbots est la façon dont les gens modifient la manière dont ils posent des questions après avoir réalisé qu’ils parlent à un bot. Lorsque cela est nécessaire, les gens semblent « simplifier à l’extrême » pour le bot. Il semble que nous nous adaptons aux bots à mesure qu’ils apprennent à nous comprendre.

Creuser le sujet avant de commencer

Si savoir coder sera certainement un avantage majeur dans le développement de chatbot, vous devez également prendre le temps de planifier le projet. Voici cinq questions clés à se poser avant de commencer à concevoir un bot :

  1. Quel est l’objectif ? Votre organisation espère-t-elle accomplir quelque chose en développant un chatbot ? Pourquoi en avez-vous besoin ? Déterminez à quoi ressemblera une expérience de chatbot efficace et mesurez-en les résultats.
  2. Quels sont les cas d’usage ? Comment le chatbot sera-t-il appliqué dans le monde réel ? Jouera-t-il le rôle d’un·e agent·e du support client, ou recommandera-t-il des produits ? Voulez-vous qu’il aide les gens à passer et à suivre des commandes ? Devrait-il être capable de prendre des rendez-vous ? Assurez-vous de définir clairement ce que fera le bot.
  3. Qui va interagir avec le bot ? Comprendre les utilisateurs et utilisatrices ainsi que leurs besoins est extrêmement important. Réfléchissez à ce que votre public attendrait d’une expérience de chatbot et demandez conseil à des collègues en contact direct avec les client·es.
  4. Quelle est la personnalité de votre chatbot ? Vous voulez que votre bot semble authentiquement humain, mais cela peut changer en fonction du secteur et du ou de la client·e. Devrait-il être formel et poli, ou vos utilisateurs et utilisatrices aimeraient interagir avec un chatbot espiègle ?

    Votre équipe marketing pourrait également vouloir que le bot reflète une voix de marque spécifique. S’il s’agit d’un voicebot, vous devrez littéralement choisir une voix dont le ton correspond à la personnalité souhaitée pour votre bot.
  5. Où vivra votre chatbot ? L’IA conversationnelle peut se trouver sur un site web, par SMS, sur des applications de messagerie sociale, via l’automatisation de centres d’appels ou à l’intérieur de votre logiciel. Le canal que vous choisissez peut avoir un impact sur les choix de développement de chatbot.

Les bonnes pratiques pour le développement de chatbot

Au moment de commencer à construire votre bot, Fréderic Godin et l’équipe de Chatlayer by Sinch ont de nombreux conseils à vous donner. Voici quelques-uns de leurs meilleurs conseils de développement de chatbot :

Faire une bonne introduction

La première impression est importante. La façon dont votre bot se présente aux utilisateurs et utilisatrices donne le ton de la conversation. De plus, cela permet aux gens de savoir exactement ce qu’ils peuvent attendre du chatbot.

Voici un exemple :

« Bonjour James ! Je suis Bessie, une assistante virtuelle là pour vous aider à comprendre comment créer un site web pour votre petite entreprise. »

En quoi puis-je vous aider aujourd’hui ? »

Dans cet exemple, disons que puisque la personne est connectée, le bot est également en mesure de personnaliser la présentation avec son prénom.

Commencer de manière simple

Lorsque vous vous lancez dans le développement de chatbot, toutes ces questions potentielles et expressions variées peuvent être accablantes. Fréderic affirme que la meilleure chose à faire est de choisir un problème client facile à résoudre et de développer à partir de là.

Nous recommandons de choisir un cas d’usage que vous souhaitez aborder en premier. En général, c’est un cas très répétitif et pour lequel il n’est pas trop difficile de trouver une réponse.
Fréderic Godin Head of AI, Chatlayer by Sinch

Par exemple, Fréderic suggère de répondre à une question avec une réponse polie dans laquelle le bot fournit simplement un lien qui dirige les utilisateurs et utilisatrices vers une page web où ils peuvent trouver la réponse dont ils ont besoin.

Rendre le tout dynamique et efficace

À mesure que votre projet de développement de chatbot gagne en technicité et en complexité, cherchez des moyens de réduire la quantité de travail que votre bot et vous-même devez accomplir. Cela peut signifier réutiliser les dialogues et les variables du bot dans la mesure du possible.

Vous devez également vous assurer que votre chatbot est capable d’accéder aux informations et de les réutiliser. Si vous demandez le numéro de commande d’un·e client·e une fois, le bot ne devrait pas avoir besoin de le redemander plus tard lors de l’interaction.

Un chatbot dynamique est résilient au changement. Vous pouvez programmer un chatbot dynamique en lui faisant accéder à des informations issues de bases de données externes, plutôt que de les coder en dur dans le bot. Votre base de données externe sert de « source de vérité ». Ainsi, lorsque vous mettez à jour la base de données, votre chatbot est également mis à jour. Vous n’avez besoin d’apporter la modification qu’à un seul endroit.

Laisser votre chatbot apprendre

Ne vous attendez pas à la perfection lorsque votre chatbot commencera enfin à interagir avec des humains. Les pros du développement de chatbot peuvent apprendre beaucoup en observant ce qui fonctionne et ce qui ne fonctionne pas.

Mettez votre bot dans la nature aussi vite que possible. Observez la façon dont les client·es utilisent le bot. Sur cette base, ajoutez de nouvelles expressions au bot qui ressemblent à de vraies questions. Par exemple, comment les gens demandent-ils vraiment à commander une pizza ?
Fréderic Godin Head of AI, Chatlayer by Sinch

Vous trouverez d’autres bonnes pratiques de création de bots et une checklist de design de conversation dans la documentation Chatlayer de Sinch. Il existe également des modèles de création de chatbot prédéfinis pour certains secteurs, ce qui peut vous aider à prendre une longueur d’avance dans la création et la personnalisation de votre bot.

Prendre en compte votre retour sur développement

Bien que Fréderic soit un grand partisan des chatbots, il admet volontiers qu’à un moment donné, les choses deviennent trop complexes, et qu’il faut l’intervention d’un humain. Plus les messages des utilisateurs et utilisatrices deviennent complexes, plus l’IA nécessite de temps et de ressources pour être développée. Vous finissez donc par être confronté·e à des rendements décroissants pour votre travail.

Pouvez-vous arriver au stade d’une automatisation complète ? Probablement. Mais plus vous vous rapprochez d’une automatisation à 100 %, plus vous aurez besoin d’investir pour y parvenir. Il y aura donc toujours, je pense, une partie des questions pour lesquelles vous aurez besoin d’un humain.
Fréderic Godin Head of AI, Chatlayer by Sinch

Pour cette raison, assurez-vous de programmer le chatbot afin de diriger les client·es vers les conseillers et conseillères pour obtenir de l’aide lorsque l’IA risque de ne pas être à la hauteur.

En savoir plus sur l’amélioration des expériences avec les chatbots

Les chatbots sont devenus une technologie utile pour la communication omnicanale. C’est une approche des expériences utilisateur qui permet des interactions cohérentes entre les personnes et les marques sur n’importe quel canal préféré par l’utilisateur ou l’utilisatrice (SMS, voix, email, applications de messagerie, etc.).

Fréderic souligne que vous pouvez personnaliser une expérience de chatbot en fonction du canal sur lequel se déroule une conversation. Par exemple, vous pouvez souhaiter que les réponses d’un chatbot sur Instagram aient un ton plus informel que celles fournies dans une fonction de chat intégrée à votre application.

Bien sûr, la meilleure façon de concevoir une meilleure expérience utilisateur est de comprendre ce qui se passe dans la tête d’un ou d’une client·e. Vous n’avez pas besoin de lire dans les pensées, mais il est utile de comprendre l’histoire du ou de la client·e.

Pour vous y aider, nos ami·es de chez Sinch Mailjet ont élaboré un ebook gratuit sur ce qu’ils appellent « le parcours du héros omnicanal. » Dans cet ebook, vous découvrirez ce que vos utilisateurs et utilisatrices ont en commun avec des héros familiers comme Luke Skywalker et Harry Potter. De plus, vous obtiendrez des idées sur le type de rôle que votre chatbot pourrait jouer dans l’histoire. (Indice : R2D2 et C3PO sont deux très bonnes suppositions.)