Intelligence Artificielle (IA)
Lโutilitรฉ dโun chatbot
Lโutilitรฉ dโun tel dispositif dรฉpend avant tout du but visรฉ par le robot conversationnel. Le robot est mis en place pour aider lโutilisateur ร trouver une information plus rapidement que sโil devait la chercher lui-mรชme. Si son utilisation ne permet pas un gain de temps, lโutilisateur nโy aura pas recours et la construction dโun chatbot sโavรฉrera inutile. Dโaprรจs le livre รฉcrit par S. Ronce (2017), il faut crรฉer un bot qui rรฉpondra au service voulu sans dรฉtours. Par exemple, mon robot conversationnel doit rรฉpondre aux questions concernant One Digital, donc mon chatbot ne doit pas rรฉpondre aux rรฉsultats des matchs de football. Le bot doit avoir un but prรฉcis et doit รชtre fonctionnel, sans quoi le robot ne sera pas utilisรฉ et sera donc un รฉchec. Dans mon cas, le service principal quโoffrira mon robot, cโest de pouvoir planifier des rendez-vous sur Google Agenda. Le but quโon veut atteindre avec cet agent, cโest de faire gagner du temps aux clients en ayant une conversation avec celui-ci et en moins dโune minute le bot fixera un meeting. En conclusion, le bot est mis ร disposition pour faire gagner du temps aux clients. La crรฉation dโun bot qui fixe des rendez-vous est bรฉnรฉfique pour le client et les employรฉs qui nโauront plus besoin dโattendre la rรฉponse de lโentreprise ou de perdre du temps ร chercher une plage horaire de libre qui conviendrait au client. Ici, le client nโaura quโร parler avec lโagent conversationnel et le robot se
Lโexemple de Twitch รtant un grand fan de jeux-vidรฉos, jโai pu constater que sur Twitch (un service de streaming et de VOD de jeu vidรฉo), les streamers utilisent souvent un chatbot pour rรฉpondre ร leurs supporters. Notamment, pour les questions les plus frรฉquentes, pour faire de la publicitรฉ pour leurs marchandises ou celles de leurs sponsors. Dans les images qui suivent, nous pouvons voir les interactions que les bots peuvent faire sur Twitch. Dans lโexemple ci-dessus, ยซ Nightbot ยป annonce aux fans que Myth est actuellement en train de faire des parties avec MSF Heads pour la World Cup. Dans la figure 4, le robot fait de la publicitรฉ pour sa marchandise en annonรงant une promotion de 5% et en donnant le lien pour acheter les produits.
Ici, ยซ wowsobot ยป annonce que ยซ shootermcwayne ยป vient de sโabonner avec Twitch Prime et que cโest son 12รจme mois dโabonnement. รtre privilรฉgiรฉ ร la chaรฎne revient ร payer un abonnement pour une durรฉe dรฉterminรฉe qui varie en fonction du prix payรฉ. Lโavantage dโรชtre un abonnรฉ de Twitch Prime, cโest que les messages sโaffichent directement dans la vidรฉo du stream ou les abonnรฉs peuvent discuter dans la discussion des favorisรฉs. Les robots annoncent aussi le matรฉriel que les joueurs utilisent, en donnant le nom exact du matรฉriel et le lien oรน les abonnรฉs peuvent se le procurer. Souvent, les supporters peuvent bรฉnรฉficier dโune promotion grรขce ร leur joueur prรฉfรฉrรฉ. Lโavantage ร ceci, cโest que le joueur nโest pas obligรฉ de toujours se rรฉpรฉter durant son live (quand il filme sa partie en direct sur une plate-forme de streaming) ou de devoir suivre la discussion en live pour pouvoir faire sa publicitรฉ. Dans ce genre de cas, les sponsors sont gagnants, car le robot rรฉpondra ร toutes les personnes qui poseront une question concernant le matรฉriel. De plus, les fans sont constamment au courant des offres et des nouveautรฉs concernant les produits ou matรฉriels, car ils savent oรน acquรฉrir le mรชme matรฉriel ou produit que leur joueur professionnel prรฉfรฉrรฉ.
Mรฉthode Dialoglow
Cette mรฉthode est trรจs longue et compliquรฉe ร suivre. Tout dโabord il faut se crรฉer un compte sur Facebook for Developers et ensuite il faut crรฉer une nouvelle application. Dรจs la crรฉation dโune nouvelle application, il suffit de sรฉlectionner Messenger pour le mettre en place. Dรจs la sรฉlection Messenger, la gรฉnรฉration dโune ยซ Page Access Token ยป va รชtre crรฉรฉ et ce token va รชtre utile pour le mettre sur DialogFlow. Maintenant, il suffit de coller la ยซ Page Access Token ยป et mettre un nom dans ยซ Verify Token ยป (lโutilisateur peut choisir), dans mon cas jโai mis ยซ ChatbotOneDigital ยป. Par la suite, nous retournons sur Facebook for developers et nous devons appuyer sur ยซ setup Webhooks ยป. Pour cela, nous avons besoin du ยซ Callback URL ยป et du ยซ verify Token ยป (voir la figure 29). Mais, nous devons aussi choisir les ยซ Subscription Fields ยป que nous souhaitons que le bot fasse. Dans mon cas, jโai juste sรฉlectionnรฉ ยซ messages ยป et ยซ messaging_postbacks ยป. Suite ร cela, je peux tester le bot sur Messenger. le seul problรจme cโest quโil nโy a que les testeurs et le crรฉateur qui peuvent lโutiliser. Pour que le robot soit accessible pour tout le monde, je dois faire une demande ร ยซ Facebook for developers ยป de tester le robot. Cette phase de test a pris 3-4 jours (pour un petit chatbot comme le mien) et le teste nโa pas รฉtรฉ concluant.
Je nโai pas rรฉussi ร trouver la raison car Facebook ne donne pas dโexplications complรฉmentaires. Jโai pu en conclure, dโaprรจs une image et les messages des testeurs, que mon chatbot ne savait pas quoi rรฉpondre. En effet, mon chatbot ne gรฉrait queles demandes en franรงais et Facebook lโa utilisรฉ en anglais. Les testeurs nโรฉtant pas franรงais, mon agent ne rรฉpondait que ยซ je ne comprends pas ยป. Suite ร cela, le compte Facebook que jโavais crรฉรฉ pour essayer le chatbot a รฉtรฉ supprimรฉ et je nโai pas pu garder la photo et les conversations que les testeurs ont eu avec mon robot. Suite ร cela, je nโai pas rรฉessayรฉ et jโai cherchรฉ une autre mรฉthode. 3.6.1.2.2 Slack Slack agit comme un appareil qui est reliรฉ ร plusieurs machines sur le rรฉseau et qui permet de concentrer les donnรฉes pour les transmettre dans un unique travail. Ce qui est avantageux avec cela, cโest que nous pouvons crรฉer des canaux de groupes et ainsi de travailler en collaboration. Mais, je vais lโutiliser comme intermรฉdiaire entre DialogFlow et Chatfuel car cโest lui qui va mettre en liaison avec mon agent de DialogFlow et Chatfuel. Chatfuel discutera avec notre page Facebook. Tout dโabord, faut se rendre sur slack.com pour crรฉer un compte ainsi quโun channel, qui nous permettra dโobtenir une page comme nous le montre la figure 30.
Suite ร cela, je peux installer le ยซ starter Kit ยป. Le ยซ starter Kit ยป ne sera pas utile, car jโutilise dรฉjร ยซ small talk ยป qui agit exactement de la mรชme maniรจre. Ce sont des questions qui sont frรฉquentes et utiles auxquelles les bots savent rรฉpondre. Suite ร lโinstallation, Janis transmet une clรฉ qui permettra de faire le lien entre Slack et Chatfuel. Chatfuel sera utiliser pour faire le lien entre Facebook et lโagent de DialogFlow, mais nous allons aussi lโutiliser pour pouvoir rendre le bot bilingue. Ainsi, le bot saura sโadapter ร lโanglais et au franรงais. Pour se connecter ร Chatfuel, il suffit de mettre un compte Facebook. Lโavantage cโest que la crรฉation dโun compte nโest pas obligatoire chez eux. Suite ร la connexion, le choix de la page Facebook sera demandรฉe. Cette page sera directement associรฉe ร Chatfuel. Lโavantage comme je lโai dit prรฉcรฉdemment, le fait de pouvoir rendre lโagent Bilingue (ou plurilingue) et cโest trรจs facile de le faire. Nous devons simplement installer un des templates proposรฉs sur Chatfuel. Pour cela, il faut ajouter un nouveau template qui sโappelle ยซ Multi-language DialogFlow + Takeover ยป, ensuite nous lions la page Facebook.
Avantages et inconvรฉnients de DialogFlow
Lโun des plus grands avantages dโutiliser DialogFlow pour la crรฉation dโun agent conversationnel, cโest quโil est trรจs facile ร intรฉgrer dans les diffรฉrents rรฉseaux sociaux. De plus, il est trรจs facile de comprendre et nous pouvons crรฉer un agent en quelques clics. Il existe aussi de la documentation et des tutoriels pour mieux comprendre comment dรฉbuter et comment utiliser toutes les fonctionnalitรฉs existantes. Les dรฉsavantages rencontrer lors de la crรฉation de mon chatbot, cโest quโen suivant les tutoriels nous ne parvenous pas toujours ร avoir un agent fonctionnel. Prenons exemple sur Google Agenda, en suivant le tutoriel proposรฉ par DialogFlow, je rencontre une erreur de date. Dโautres part quand nous mettons la langue de base en anglais, nous avons beaucoup plus de fonctionnalitรฉs proposรฉes quโen franรงais. Par exemple, en anglais nous avons accรจs aux fonctionnalitรฉs bรฉta comme ยซ knowledge ยป. ยซ Knowledge ยป est utile principalement pour prendre la page FAQ dโun site internet et ainsi le robot sera en mesure dโaller chercher lโinformation en question. Contrairement au franรงais pour crรฉer un FAQ, nous devons crรฉer un fichier avec un format prรฉcis pour les bots et ensuite importer ce fichier sur DialogFlow qui lui va crรฉer des intentions et ajouter les rรฉponses. Mais encore, en anglais nous avons plusieurs ยซ prebuilt Agents ยป tandis quโen franรงais nous nโavons que 4 proposรฉes. Les ยซ prebuilt Agents ยป sont des agents dรฉjร prรฉparรฉs avec les intentions et nous avons juste la partie ยซ Fulfillment ยป ร faire (toute la partie code).
|
Table des matiรจres
Dรฉclaration
Remerciements
Rรฉsumรฉ
Liste des tableaux
Liste des figures
1. Thรฉorie
1.1 Intelligence Artificielle (IA)
1.1.1 Quโest-ce que cโest lโintelligence artificielle ?
1.2 Machine learning
1.3 Deep learning
1.3.1 CamFind
1.4 ChatBot
1.4.1 Lโutilitรฉ dโun chatbot
1.4.2 Les erreurs ร รฉviter
1.4.2.1 Ne pas รชtre trop rapide ni trop lent
1.4.2.2 Rรฉpondre aux questions hors sujets
1.4.2.3 Crรฉer un super-bot
2. Etat de lโart
2.1 Chatbot sans intelligence artificielle
2.1.1 Lโexemple de Twitch
2.2 Utilitรฉ dโune IA
2.2.1 Lโexemple dโH&M
2.2.1.1 Prise en main avec le bot H&M
2.2.2 Lโexemple dโAir France (Messenger)
2.2.3 Voitures intelligentes
2.2.4 Le chatbot de 20minutes
2.3 Conclusion
3. Pratique
3.1 Dรฉroulement du projet
3.2 Intents / Intentions
3.3 Entity / Entitรฉ
3.4 Training phrases
3.5 Comment amรฉliorer les dรฉcisions du bot
3.5.1 Comment entrainer le bot
3.5.1.1 Augmenter les ยซ training phrases ยป pour la comprรฉhension
3.5.1.2 Chatter pour amรฉliorer lโintelligence du bot
3.6 Intรฉgration de notre chatbot
3.6.1 Rรฉseaux sociaux
3.6.1.1 Telegram
3.6.1.2 Facebook Messenger
3.6.1.2.1 Mรฉthode Dialoglow
3.6.1.2.2 Slack
4. Communications entre interfaces (Messenger)
5. Communications entre interfaces (sans Messenger)
6. Avantages et inconvรฉnients de DialogFlow
7. Intรฉgrer une page FAQ
7.1 Avantage
7.2 Dรฉsavantages
8. Conclusion
Bibliographie
Annexe 1 : Google Agenda
Annexe 2 : Luis.ai
Annexe 3 : Chatbot
Tรฉlรฉcharger le rapport complet