SlideShare une entreprise Scribd logo
1  sur  25
Botkit
Développement de chatbots avec
JavaScript et Node.js
Meetup LyonJS – 8 janvier 2019
Qui suis-je ?
Christophe Bouvard – Entrepreneur, créateur de chatbots et d'assistants virtuels
Chatbot clé en main pour les
entreprises et leurs collaborateurs :
• Support informatique / helpdesk,
• Support administratif / RH,
• Tout domaine de l’entreprise.
Méthodologie pour faire grandir les idées
d’expériences conversationnelles :
• Concevoir,
• Prototyper et itérer,
• Apprendre à partir des
expérimentations.
Livre paru en décembre
https://www.editions-eni.fr/livre/botkit-developpez-vos-bots-avec-javascript-et-node-js-9782409016646
Sujet du jour
HOROSCOPE
avec la construction
d’un chatbot Slack
« Spécial Astrologie »
Chatbot (ou bot)
Compétences du chatbot Astro
• Dire bonjour
• Déterminer le signe astrologie de l’utilisateur
• Gérer la non compréhension
Botkit
• Framework de développement de bots
• Messageries supportées : Slack, FB Messenger, Skype, Web, SMS, …
• 8,7k ★ sur Github
• Dates clés :
• Fin 2015 : Howdy (XOXCO) lance Botkit en même que l’annonce du support
des bots par Slack
• Fin 2018 : Microsoft annonce le rachat d’Howdy
Botkit
Architecture global du bot
Serveur Node.js
du bot
Slack APISlack
Moteur
d’intelligence
artificielle
Architecture interne du bot avec Botkit
Evénement
Fonction callback
Evénement
Fonction callback
Evénement
Fonction callback
Initialisation du projet
mkdir astrobot && cd astrobot
npm init
npm install botkit
Structure du fichier JS du chatbot
Configuration dans Slack
Configuration dans Slack
• Aller dans l’interface Slack API (https://api.slack.com/apps)
• Créer une app au niveau de la plate-forme Slack
• Ajouter un « Bot User »
• Installer l’app dans un espace de travail
• Positionner le jeton « Bot User OAuth Access Token » et le secret de
signature en variables d’environnement
Compétence Bonjour
(1)
(1) Pattern(s) à vérifier sur le message de l’utilisateur
(2) Type(s) d’événement
(3) Fonction callback invoquée par Botkit à l’arrivée de l’événement
(4) Réponse simple du bot
(2)
(3)
(4)
Gestion de la non compréhension
Avertissement : ce traitement par défaut des messages utilisateurs est
volontairement simpliste pour alléger le contenu de la présentation.
Utiliser ce type de traitement dans un bot à destination des vrais
humains serait criminel. Merci de votre attention.
Compétence Signe (1/2) Animation de conversation par Botkit
avec une file de messages/questions
Compétence Signe (2/2)
Intelligence artificielle pour les chatbots
• Compréhension du langage naturel (NLU)
• Intégration des moteurs d’IA / NLU dans Botkit via un mécanisme de
middleware
• Exemple de middleware à installer : npm install botkit-middleware-
watson
Moteur
d’intelligence
artificielle (NLU)
Phrase Phrase
Données
actionnables
Compétence Signe avec moteur d’IA (Watson)
Quelques évolutions possibles du bot Astro
• Fonctionnellement
• Ajout de compétences !!!
• Avec Slack
• Interactions avec des composants
graphiques : boutons, dialogues, …
• Commande Slack du type « /astro »
• Notifications push
• Avec Botkit
• Autres canaux : Facebook Messenger,
Skype, …
• Connexion à une base de données pour le
contexte utilisateur
Aperçu de blocks dans Slack
3 clés pour des chatbots réussis
Bons outils
(facile à dire…)
CUX Design
(vraiment !)
Entraînement du bot
(oui, et ce n’est pas si évident)
Continuons la discussion
• Meetup Chatbots & Digital Assistants Lyon
• https://www.meetup.com/fr-FR/Chatbots-Voice-Assistants-Lyon/
• Prochain meetup : mardi 5 février
• Groupe LinkedIn Chatbots & Digital Assistants Rhône-Alpes
• https://www.linkedin.com/groups/8705775/
Aller plus loin avec Botkit ?
https://www.editions-eni.fr/livre/botkit-developpez-vos-bots-avec-javascript-et-node-js-9782409016646
Christophe Bouvard
Créateur de chatbots et d'assistants virtuels
Cofondateur Wikit
@cbouvard
cbouvard

Contenu connexe

Similaire à Meetup LyonJS – Botkit et chatbots

Meetup IA Lyon - Introduction aux chatbots
Meetup IA Lyon - Introduction aux chatbotsMeetup IA Lyon - Introduction aux chatbots
Meetup IA Lyon - Introduction aux chatbotscbouvard
 
Petit-déjeuner "Psychanalyse du Chatbot"
Petit-déjeuner "Psychanalyse du Chatbot"Petit-déjeuner "Psychanalyse du Chatbot"
Petit-déjeuner "Psychanalyse du Chatbot"OCTO Technology
 
Les Bots : insights et recommandations
Les Bots : insights et recommandationsLes Bots : insights et recommandations
Les Bots : insights et recommandationsohmydalia
 
Conf EXALT TLD - ChatGPT impact Design
Conf EXALT TLD - ChatGPT impact DesignConf EXALT TLD - ChatGPT impact Design
Conf EXALT TLD - ChatGPT impact DesignTanguyLeDuff1
 
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019Open Transport meetup by Kisio
 
Chatbots, oui, mais intelligents !
Chatbots, oui, mais intelligents !Chatbots, oui, mais intelligents !
Chatbots, oui, mais intelligents !Abdoulaye DOUCOURE
 
The Chatbot Factory - Présentation PICOM Lille - 01/12/17
The Chatbot Factory - Présentation PICOM Lille - 01/12/17The Chatbot Factory - Présentation PICOM Lille - 01/12/17
The Chatbot Factory - Présentation PICOM Lille - 01/12/17Thomas Sabatier
 
Technologies cognitives au service des expériences utilisateurs - NUIDay 2016
Technologies cognitives au service des expériences utilisateurs - NUIDay 2016Technologies cognitives au service des expériences utilisateurs - NUIDay 2016
Technologies cognitives au service des expériences utilisateurs - NUIDay 2016NUI Day
 
TOCK (The Open Conversation Kit) @ Meetup Open Transport
TOCK (The Open Conversation Kit) @ Meetup Open TransportTOCK (The Open Conversation Kit) @ Meetup Open Transport
TOCK (The Open Conversation Kit) @ Meetup Open TransportFrançois
 
Chatbots : opportunités et challenges dans un contexte entrepreneurial
Chatbots : opportunités et challenges dans un contexte entrepreneurial Chatbots : opportunités et challenges dans un contexte entrepreneurial
Chatbots : opportunités et challenges dans un contexte entrepreneurial Ons Dridi
 
Formation chatbot: Les enjeux pour les marques !
Formation chatbot: Les enjeux pour les marques !Formation chatbot: Les enjeux pour les marques !
Formation chatbot: Les enjeux pour les marques !Thomas Sabatier
 
Conf 2023 TLD - ChatGPT impact dans le Design
Conf 2023 TLD - ChatGPT impact dans le DesignConf 2023 TLD - ChatGPT impact dans le Design
Conf 2023 TLD - ChatGPT impact dans le DesignTanguyLeDuff1
 
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...Franck Cornu
 
Les chatbots, l’IA dans tout cela, les technologies
Les chatbots, l’IA dans tout cela, les technologiesLes chatbots, l’IA dans tout cela, les technologies
Les chatbots, l’IA dans tout cela, les technologiesLudan Stoecklé
 
#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...
#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...
#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...Soumaya Toumi
 
Les chatbots, l'IA, leurs technologies
Les chatbots, l'IA, leurs technologiesLes chatbots, l'IA, leurs technologies
Les chatbots, l'IA, leurs technologiesLudan Stoecklé
 
EntrecomExperience : Chatbots
EntrecomExperience : ChatbotsEntrecomExperience : Chatbots
EntrecomExperience : ChatbotsEntrecom
 

Similaire à Meetup LyonJS – Botkit et chatbots (20)

Meetup IA Lyon - Introduction aux chatbots
Meetup IA Lyon - Introduction aux chatbotsMeetup IA Lyon - Introduction aux chatbots
Meetup IA Lyon - Introduction aux chatbots
 
Petit-déjeuner "Psychanalyse du Chatbot"
Petit-déjeuner "Psychanalyse du Chatbot"Petit-déjeuner "Psychanalyse du Chatbot"
Petit-déjeuner "Psychanalyse du Chatbot"
 
Les Bots : insights et recommandations
Les Bots : insights et recommandationsLes Bots : insights et recommandations
Les Bots : insights et recommandations
 
Decouverte bot framework
Decouverte bot frameworkDecouverte bot framework
Decouverte bot framework
 
Conf EXALT TLD - ChatGPT impact Design
Conf EXALT TLD - ChatGPT impact DesignConf EXALT TLD - ChatGPT impact Design
Conf EXALT TLD - ChatGPT impact Design
 
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
Prez chatbot sncf_tock_meetup_open_transport_paris_20032019
 
Chatbots, oui, mais intelligents !
Chatbots, oui, mais intelligents !Chatbots, oui, mais intelligents !
Chatbots, oui, mais intelligents !
 
The Chatbot Factory - Présentation PICOM Lille - 01/12/17
The Chatbot Factory - Présentation PICOM Lille - 01/12/17The Chatbot Factory - Présentation PICOM Lille - 01/12/17
The Chatbot Factory - Présentation PICOM Lille - 01/12/17
 
Technologies cognitives au service des expériences utilisateurs - NUIDay 2016
Technologies cognitives au service des expériences utilisateurs - NUIDay 2016Technologies cognitives au service des expériences utilisateurs - NUIDay 2016
Technologies cognitives au service des expériences utilisateurs - NUIDay 2016
 
TOCK (The Open Conversation Kit) @ Meetup Open Transport
TOCK (The Open Conversation Kit) @ Meetup Open TransportTOCK (The Open Conversation Kit) @ Meetup Open Transport
TOCK (The Open Conversation Kit) @ Meetup Open Transport
 
Chatbots : opportunités et challenges dans un contexte entrepreneurial
Chatbots : opportunités et challenges dans un contexte entrepreneurial Chatbots : opportunités et challenges dans un contexte entrepreneurial
Chatbots : opportunités et challenges dans un contexte entrepreneurial
 
Formation chatbot: Les enjeux pour les marques !
Formation chatbot: Les enjeux pour les marques !Formation chatbot: Les enjeux pour les marques !
Formation chatbot: Les enjeux pour les marques !
 
Meetup bot framework
Meetup bot frameworkMeetup bot framework
Meetup bot framework
 
Conf 2023 TLD - ChatGPT impact dans le Design
Conf 2023 TLD - ChatGPT impact dans le DesignConf 2023 TLD - ChatGPT impact dans le Design
Conf 2023 TLD - ChatGPT impact dans le Design
 
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
 
Les chatbots, l’IA dans tout cela, les technologies
Les chatbots, l’IA dans tout cela, les technologiesLes chatbots, l’IA dans tout cela, les technologies
Les chatbots, l’IA dans tout cela, les technologies
 
#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...
#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...
#Chatbots : Repenser la relation Clients et Employés avec les technologies #A...
 
Bot franceinfo
Bot franceinfoBot franceinfo
Bot franceinfo
 
Les chatbots, l'IA, leurs technologies
Les chatbots, l'IA, leurs technologiesLes chatbots, l'IA, leurs technologies
Les chatbots, l'IA, leurs technologies
 
EntrecomExperience : Chatbots
EntrecomExperience : ChatbotsEntrecomExperience : Chatbots
EntrecomExperience : Chatbots
 

Meetup LyonJS – Botkit et chatbots

  • 1. Botkit Développement de chatbots avec JavaScript et Node.js Meetup LyonJS – 8 janvier 2019
  • 2. Qui suis-je ? Christophe Bouvard – Entrepreneur, créateur de chatbots et d'assistants virtuels Chatbot clé en main pour les entreprises et leurs collaborateurs : • Support informatique / helpdesk, • Support administratif / RH, • Tout domaine de l’entreprise. Méthodologie pour faire grandir les idées d’expériences conversationnelles : • Concevoir, • Prototyper et itérer, • Apprendre à partir des expérimentations.
  • 3. Livre paru en décembre https://www.editions-eni.fr/livre/botkit-developpez-vos-bots-avec-javascript-et-node-js-9782409016646
  • 4. Sujet du jour HOROSCOPE avec la construction d’un chatbot Slack « Spécial Astrologie »
  • 6. Compétences du chatbot Astro • Dire bonjour • Déterminer le signe astrologie de l’utilisateur • Gérer la non compréhension
  • 7. Botkit • Framework de développement de bots • Messageries supportées : Slack, FB Messenger, Skype, Web, SMS, … • 8,7k ★ sur Github • Dates clés : • Fin 2015 : Howdy (XOXCO) lance Botkit en même que l’annonce du support des bots par Slack • Fin 2018 : Microsoft annonce le rachat d’Howdy
  • 9. Architecture global du bot Serveur Node.js du bot Slack APISlack Moteur d’intelligence artificielle
  • 10. Architecture interne du bot avec Botkit Evénement Fonction callback Evénement Fonction callback Evénement Fonction callback
  • 11. Initialisation du projet mkdir astrobot && cd astrobot npm init npm install botkit
  • 12. Structure du fichier JS du chatbot
  • 14. Configuration dans Slack • Aller dans l’interface Slack API (https://api.slack.com/apps) • Créer une app au niveau de la plate-forme Slack • Ajouter un « Bot User » • Installer l’app dans un espace de travail • Positionner le jeton « Bot User OAuth Access Token » et le secret de signature en variables d’environnement
  • 15. Compétence Bonjour (1) (1) Pattern(s) à vérifier sur le message de l’utilisateur (2) Type(s) d’événement (3) Fonction callback invoquée par Botkit à l’arrivée de l’événement (4) Réponse simple du bot (2) (3) (4)
  • 16. Gestion de la non compréhension Avertissement : ce traitement par défaut des messages utilisateurs est volontairement simpliste pour alléger le contenu de la présentation. Utiliser ce type de traitement dans un bot à destination des vrais humains serait criminel. Merci de votre attention.
  • 17. Compétence Signe (1/2) Animation de conversation par Botkit avec une file de messages/questions
  • 19. Intelligence artificielle pour les chatbots • Compréhension du langage naturel (NLU) • Intégration des moteurs d’IA / NLU dans Botkit via un mécanisme de middleware • Exemple de middleware à installer : npm install botkit-middleware- watson Moteur d’intelligence artificielle (NLU) Phrase Phrase Données actionnables
  • 20. Compétence Signe avec moteur d’IA (Watson)
  • 21. Quelques évolutions possibles du bot Astro • Fonctionnellement • Ajout de compétences !!! • Avec Slack • Interactions avec des composants graphiques : boutons, dialogues, … • Commande Slack du type « /astro » • Notifications push • Avec Botkit • Autres canaux : Facebook Messenger, Skype, … • Connexion à une base de données pour le contexte utilisateur Aperçu de blocks dans Slack
  • 22. 3 clés pour des chatbots réussis Bons outils (facile à dire…) CUX Design (vraiment !) Entraînement du bot (oui, et ce n’est pas si évident)
  • 23. Continuons la discussion • Meetup Chatbots & Digital Assistants Lyon • https://www.meetup.com/fr-FR/Chatbots-Voice-Assistants-Lyon/ • Prochain meetup : mardi 5 février • Groupe LinkedIn Chatbots & Digital Assistants Rhône-Alpes • https://www.linkedin.com/groups/8705775/
  • 24. Aller plus loin avec Botkit ? https://www.editions-eni.fr/livre/botkit-developpez-vos-bots-avec-javascript-et-node-js-9782409016646
  • 25. Christophe Bouvard Créateur de chatbots et d'assistants virtuels Cofondateur Wikit @cbouvard cbouvard

Notes de l'éditeur

  1. https://www.editions-eni.fr/livre/botkit-developpez-vos-bots-avec-javascript-et-node-js-9782409016646
  2. https://api.slack.com/changelog/2018-12-a-bric-a-brac-of-broadcasts-built-with-blocks#block-preview
  3. https://www.editions-eni.fr/livre/botkit-developpez-vos-bots-avec-javascript-et-node-js-9782409016646