SlideShare une entreprise Scribd logo
1  sur  16
Télécharger pour lire hors ligne
Les chatbots (l’IA ?), leurs technologies
Ludan Stoecklé
Qui suis-je
• ingénieur INSA IF 2003
• co fondateur et directeur technique d’Yseop
• à présent CTO d’Addventa
Passions :
• NLP (Natural Language Processing)
• IA symbolique, Prolog, moteurs d’inférences…
Page 1/15
Document écrit en AsciiDoc et transformé avec Asciidoctor PDF.
Page 2/15
Les chatbots : pourquoi
Des faits :
• Succès des applications de messagerie : Facebook Messenger est l’app la plus téléchargée en 2016,
avec 1,2 milliard d’utilisateurs.
• "App Fatigue"
• Les chatbots sont un succès énorme en Asie :
◦ WeChat, 600 millions de membres
◦ tickets de cinéma, lotterie, voyages, virements
Une vision :
• Le langage est universel.
• "Bots are the new apps" - Satya Nadella, Microsoft.
• Les chatbots sont la première étape. Des interfaces purement vocales suivront.
• Parfois en remplacement d’applications mobiles simples.
• Approche Graphical UI (GUI) → Conversational UI (CUI)
• Les applications de messagerie sont les plates-formes (OS) de ces chatbots.
Page 3/15
Comment marche un chatbot
Fonctionnalités
Un chatbot doit savoir dialoguer, càd :
1. répondre à un énoncé (un message entrant)
2. gérer une conversation
Page 4/15
Répondre à un message entrant
Un chatbot reçoit un message et doit y répondre. Comment ?
• Comprendre ce que dit l’utilisateur
◦ Intention et Entités : "je veux manger une pizza ce soir" → intention ="recherche restau" + entité
type = "italien" + entité quand = "ce soir"
◦ Approche par patterns ou par apprentissage (ML) pour trouver Intentions et Entités
• Répondre à l’utilisateur : via des conditions et des phrases à trous
Patterns, ML :
• pattern : on écrit explicitement des patterns qui vont matcher des énoncés
je veux manger une pizza ce soir => (~manger ~type ~quand)
~quand: [demain "ce soir" "maintenant" ~date]
~type: [~italien thaï chinois]
~italien: ["pizza" "pizzeria"]
• ML : exemples classés
intention: "recherche restau"
je veux manger une *pizza* *ce soir*
*pizza* *ce soir*
réserver restau *thaï* *demain*
Page 5/15
Gérer une conversation
• Les enchaînements sont le souvent gérés via des arbres de dialogue :
• Gérer une conversation c’est aussi savoir passer d’un sujet de conversation à un autre.
Page 6/15
Et l’IA dans tout cela ?
Un chatbot n’a pas d’intelligence en dehors de la gestion des conversations.
Un moteur de chatbot se combine avec :
• un accès à des données intéressantes :
◦ compte client
◦ bases de données, moteurs de recherche, simulateurs…
• d’autres technologies :
◦ moteur de règles
◦
BPM
◦ analyse de sentiments
◦ génération de textes
◦ réseaux de neurones
La combinaison de quelques composants "intelligents" donne une impression globale d’IA.
Page 7/15
Les technologies de chatbot
Aperçu des technologies
Il existe plus d’une centaine de plate-formes pour construire des chatbots.
Certaines sont très simples, sans programmation. Votre chatbot en 1h (ou 30 min, ou 5 min, etc.).
Les GAFA construisent des stacks et API orientées IA et NLP, avec une brique chatbot :
• IBM Watson : Conversation, NLU, Classifier, Tone Analyzer, Retrieve and Rank…
• Microsoft Cognitive Services: LUIS, Bing Spell Check, Language Understanding, Text Analytics…
• Amazon AI : Alexa, NLU, ML, Deep Learning…
• Google : Api.ai, Cloud Natural Language API…
• Facebook : Wit.ai, DeepText…
Points d’attention :
• Scalabilité lorsque la complexité augmente.
• Versioning.
• NLU, support réel des langues : correction orthographique, gestion des formes fléchies.
• Cloud uniquement ou on premise.
Page 8/15
Il y a des alternatives open-source
Entre autres :
• ChatScript : moteur de chatbot
• rasa.ai / MITIE : intent classification and entity extraction
Page 9/15
ChatScript
Test de Turing et Prix Loebner
Le test de Turing est un test d’intelligence artificielle fondé sur la faculté d’une machine à imiter la
conversation humaine. Décrit par Alan Turing en 1950, ce test consiste à mettre un humain en
confrontation verbale à l’aveugle avec un ordinateur et un autre humain.
Le Prix Loebner est une compétition annuelle qui couronne les agents conversationnels satisfaisant le
mieux les critères du test de Turing. Cette compétition a été créée en 1990.
Depuis quelques années, ce sont les chatbots développés avec ChatScript qui gagnent : 2010 gagnant,
2011 gagnant, 2012 2ème, 2013 3ème, 2014 gagnant, 2015 gagnant, 2016 3ème.
Page 10/15
ChatScript - le language
ChatScript est un langage dédié à l’écriture de chatbots.
C’est un langage complet, avec un compilateur, un interpréteur, un débogueur etc. Développé depuis
2010.
Taille du code des chatbots Loebner :
• gagnants d’ancienne génération (AIML) : 200 000 règles (en XML…)
• ChatScript : 15 000 règles
Du code :
u: ( !~negativeWords I * ~like * _~meat )
You like _0.
Page 11/15
Zoom sur les couches de NLU de ChatScript
Composant Description Exemple
tokenizer Découpage en mots (token). j’y vais aujourd’hui → j' + y + vais
+ aujourd’hui
dictionnaire Permet la correction
orthographique.
imobilier → immobilier
immobiliere → immobilière
lemmatiseur Trouve les formes canoniques :
"belles" = "beau" au féminin
pluriel.
elle est belle / elle était belle →
être beau
j’annualise / j’ai annualisé → je
annualiser
ontologies "choux fleur" est un "légume" je mange des légumes / j’ai
mangé des légumes / je mange
des carottes / je consomme du
choux-fleur → je * ~manger *
~légume
Page 12/15
ChatScript - Eléments techniques
• écrit en C++ ; Linux ou Windows ; open source (MIT)
• indépendant de tout canal
• Sait s’inscrire dans une chaîne d’intégration continue :
◦ de vraies sources : gestion de configuration (Git, SVN etc.) pour faire du travail collaboratif
◦ automate de non régression
◦ outils de trace, de debug
• 10 000 conversations simultanées sur un 8 cœurs.
• Capacité à faire fonctionner de très gros chatbots (Loebner : 15 000 règles).
• Pas d’interface graphique pour gérer les règles
Page 13/15
Questions
Page 14/15
Coordonnées
Ludan Stoecklé
Mob. : +33 6 63 47 72 19
ludan.stoeckle@gmail.com
Page 15/15

Contenu connexe

Similaire à Les chatbots, l'IA, leurs technologies

Bibdoc 2024 - Les intelligences artificielles en bibliotheque.pdf
Bibdoc 2024 - Les intelligences artificielles en bibliotheque.pdfBibdoc 2024 - Les intelligences artificielles en bibliotheque.pdf
Bibdoc 2024 - Les intelligences artificielles en bibliotheque.pdfBibdoc 37
 
Les chatbots facebook, qu'est-ce que c'est ?
Les chatbots facebook, qu'est-ce que c'est ?Les chatbots facebook, qu'est-ce que c'est ?
Les chatbots facebook, qu'est-ce que c'est ?Djamel ZAHAL
 
Challenge Exakis - Intégrer cortana dans son application
Challenge Exakis - Intégrer cortana dans son applicationChallenge Exakis - Intégrer cortana dans son application
Challenge Exakis - Intégrer cortana dans son applicationJonathan Le Guellec
 
Les chatbots : dialoguer avec les usagers
Les chatbots : dialoguer avec les usagersLes chatbots : dialoguer avec les usagers
Les chatbots : dialoguer avec les usagersCap'Com
 
Les Bots : insights et recommandations
Les Bots : insights et recommandationsLes Bots : insights et recommandations
Les Bots : insights et recommandationsohmydalia
 
ESCP - Chaire Leclerc - L'avenir du Commerce et les Chatbots
ESCP - Chaire Leclerc - L'avenir du Commerce et les ChatbotsESCP - Chaire Leclerc - L'avenir du Commerce et les Chatbots
ESCP - Chaire Leclerc - L'avenir du Commerce et les ChatbotsThomas Sabatier
 
Présentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM WatsonPrésentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM WatsonBeMyApp
 
EntrecomExperience : Chatbots
EntrecomExperience : ChatbotsEntrecomExperience : Chatbots
EntrecomExperience : ChatbotsEntrecom
 
Digitas Whats Next - Chatbot
Digitas Whats Next - Chatbot Digitas Whats Next - Chatbot
Digitas Whats Next - Chatbot DigitasLBi Paris
 
Global Azure Bootcamp 2018 - Microsoft Bot
Global Azure Bootcamp 2018 - Microsoft BotGlobal Azure Bootcamp 2018 - Microsoft Bot
Global Azure Bootcamp 2018 - Microsoft Botfelixbillon
 
Revolution Mobile @Web2day
Revolution Mobile @Web2dayRevolution Mobile @Web2day
Revolution Mobile @Web2dayAlexandre Jubien
 
Symposium #17 : chatbots, ia et skynet
Symposium #17  : chatbots, ia et skynetSymposium #17  : chatbots, ia et skynet
Symposium #17 : chatbots, ia et skynetVersusmind
 
Manifeste 'Translation is UX'
Manifeste 'Translation is UX'Manifeste 'Translation is UX'
Manifeste 'Translation is UX'Antoine Lefeuvre
 
Intégrez un chatbot à votre relation client
Intégrez un chatbot à votre relation clientIntégrez un chatbot à votre relation client
Intégrez un chatbot à votre relation clientEloquant
 
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
 
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
 
Les chatbots : vers une démocratisation du conversationnel automatisé ?
Les chatbots : vers une démocratisation du conversationnel automatisé ?Les chatbots : vers une démocratisation du conversationnel automatisé ?
Les chatbots : vers une démocratisation du conversationnel automatisé ?Vanksen
 

Similaire à Les chatbots, l'IA, leurs technologies (20)

Bibdoc 2024 - Les intelligences artificielles en bibliotheque.pdf
Bibdoc 2024 - Les intelligences artificielles en bibliotheque.pdfBibdoc 2024 - Les intelligences artificielles en bibliotheque.pdf
Bibdoc 2024 - Les intelligences artificielles en bibliotheque.pdf
 
Les chatbots facebook, qu'est-ce que c'est ?
Les chatbots facebook, qu'est-ce que c'est ?Les chatbots facebook, qu'est-ce que c'est ?
Les chatbots facebook, qu'est-ce que c'est ?
 
Finistgdg bot
Finistgdg botFinistgdg bot
Finistgdg bot
 
Challenge Exakis - Intégrer cortana dans son application
Challenge Exakis - Intégrer cortana dans son applicationChallenge Exakis - Intégrer cortana dans son application
Challenge Exakis - Intégrer cortana dans son application
 
Les chatbots : dialoguer avec les usagers
Les chatbots : dialoguer avec les usagersLes chatbots : dialoguer avec les usagers
Les chatbots : dialoguer avec les usagers
 
Les Bots : insights et recommandations
Les Bots : insights et recommandationsLes Bots : insights et recommandations
Les Bots : insights et recommandations
 
ESCP - Chaire Leclerc - L'avenir du Commerce et les Chatbots
ESCP - Chaire Leclerc - L'avenir du Commerce et les ChatbotsESCP - Chaire Leclerc - L'avenir du Commerce et les Chatbots
ESCP - Chaire Leclerc - L'avenir du Commerce et les Chatbots
 
Présentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM WatsonPrésentation des APIs cognitives IBM Watson
Présentation des APIs cognitives IBM Watson
 
Movilab en 2020
Movilab en 2020Movilab en 2020
Movilab en 2020
 
EntrecomExperience : Chatbots
EntrecomExperience : ChatbotsEntrecomExperience : Chatbots
EntrecomExperience : Chatbots
 
Comment construire un chatbot interne ?
Comment construire un chatbot interne ?Comment construire un chatbot interne ?
Comment construire un chatbot interne ?
 
Digitas Whats Next - Chatbot
Digitas Whats Next - Chatbot Digitas Whats Next - Chatbot
Digitas Whats Next - Chatbot
 
Global Azure Bootcamp 2018 - Microsoft Bot
Global Azure Bootcamp 2018 - Microsoft BotGlobal Azure Bootcamp 2018 - Microsoft Bot
Global Azure Bootcamp 2018 - Microsoft Bot
 
Revolution Mobile @Web2day
Revolution Mobile @Web2dayRevolution Mobile @Web2day
Revolution Mobile @Web2day
 
Symposium #17 : chatbots, ia et skynet
Symposium #17  : chatbots, ia et skynetSymposium #17  : chatbots, ia et skynet
Symposium #17 : chatbots, ia et skynet
 
Manifeste 'Translation is UX'
Manifeste 'Translation is UX'Manifeste 'Translation is UX'
Manifeste 'Translation is UX'
 
Intégrez un chatbot à votre relation client
Intégrez un chatbot à votre relation clientIntégrez un chatbot à votre relation client
Intégrez un chatbot à votre relation client
 
Petit-déjeuner "Psychanalyse du Chatbot"
Petit-déjeuner "Psychanalyse du Chatbot"Petit-déjeuner "Psychanalyse du Chatbot"
Petit-déjeuner "Psychanalyse du Chatbot"
 
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
 
Les chatbots : vers une démocratisation du conversationnel automatisé ?
Les chatbots : vers une démocratisation du conversationnel automatisé ?Les chatbots : vers une démocratisation du conversationnel automatisé ?
Les chatbots : vers une démocratisation du conversationnel automatisé ?
 

Les chatbots, l'IA, leurs technologies

  • 1. Les chatbots (l’IA ?), leurs technologies Ludan Stoecklé
  • 2. Qui suis-je • ingénieur INSA IF 2003 • co fondateur et directeur technique d’Yseop • à présent CTO d’Addventa Passions : • NLP (Natural Language Processing) • IA symbolique, Prolog, moteurs d’inférences… Page 1/15
  • 3. Document écrit en AsciiDoc et transformé avec Asciidoctor PDF. Page 2/15
  • 4. Les chatbots : pourquoi Des faits : • Succès des applications de messagerie : Facebook Messenger est l’app la plus téléchargée en 2016, avec 1,2 milliard d’utilisateurs. • "App Fatigue" • Les chatbots sont un succès énorme en Asie : ◦ WeChat, 600 millions de membres ◦ tickets de cinéma, lotterie, voyages, virements Une vision : • Le langage est universel. • "Bots are the new apps" - Satya Nadella, Microsoft. • Les chatbots sont la première étape. Des interfaces purement vocales suivront. • Parfois en remplacement d’applications mobiles simples. • Approche Graphical UI (GUI) → Conversational UI (CUI) • Les applications de messagerie sont les plates-formes (OS) de ces chatbots. Page 3/15
  • 5. Comment marche un chatbot Fonctionnalités Un chatbot doit savoir dialoguer, càd : 1. répondre à un énoncé (un message entrant) 2. gérer une conversation Page 4/15
  • 6. Répondre à un message entrant Un chatbot reçoit un message et doit y répondre. Comment ? • Comprendre ce que dit l’utilisateur ◦ Intention et Entités : "je veux manger une pizza ce soir" → intention ="recherche restau" + entité type = "italien" + entité quand = "ce soir" ◦ Approche par patterns ou par apprentissage (ML) pour trouver Intentions et Entités • Répondre à l’utilisateur : via des conditions et des phrases à trous Patterns, ML : • pattern : on écrit explicitement des patterns qui vont matcher des énoncés je veux manger une pizza ce soir => (~manger ~type ~quand) ~quand: [demain "ce soir" "maintenant" ~date] ~type: [~italien thaï chinois] ~italien: ["pizza" "pizzeria"] • ML : exemples classés intention: "recherche restau" je veux manger une *pizza* *ce soir* *pizza* *ce soir* réserver restau *thaï* *demain* Page 5/15
  • 7. Gérer une conversation • Les enchaînements sont le souvent gérés via des arbres de dialogue : • Gérer une conversation c’est aussi savoir passer d’un sujet de conversation à un autre. Page 6/15
  • 8. Et l’IA dans tout cela ? Un chatbot n’a pas d’intelligence en dehors de la gestion des conversations. Un moteur de chatbot se combine avec : • un accès à des données intéressantes : ◦ compte client ◦ bases de données, moteurs de recherche, simulateurs… • d’autres technologies : ◦ moteur de règles ◦ BPM ◦ analyse de sentiments ◦ génération de textes ◦ réseaux de neurones La combinaison de quelques composants "intelligents" donne une impression globale d’IA. Page 7/15
  • 9. Les technologies de chatbot Aperçu des technologies Il existe plus d’une centaine de plate-formes pour construire des chatbots. Certaines sont très simples, sans programmation. Votre chatbot en 1h (ou 30 min, ou 5 min, etc.). Les GAFA construisent des stacks et API orientées IA et NLP, avec une brique chatbot : • IBM Watson : Conversation, NLU, Classifier, Tone Analyzer, Retrieve and Rank… • Microsoft Cognitive Services: LUIS, Bing Spell Check, Language Understanding, Text Analytics… • Amazon AI : Alexa, NLU, ML, Deep Learning… • Google : Api.ai, Cloud Natural Language API… • Facebook : Wit.ai, DeepText… Points d’attention : • Scalabilité lorsque la complexité augmente. • Versioning. • NLU, support réel des langues : correction orthographique, gestion des formes fléchies. • Cloud uniquement ou on premise. Page 8/15
  • 10. Il y a des alternatives open-source Entre autres : • ChatScript : moteur de chatbot • rasa.ai / MITIE : intent classification and entity extraction Page 9/15
  • 11. ChatScript Test de Turing et Prix Loebner Le test de Turing est un test d’intelligence artificielle fondé sur la faculté d’une machine à imiter la conversation humaine. Décrit par Alan Turing en 1950, ce test consiste à mettre un humain en confrontation verbale à l’aveugle avec un ordinateur et un autre humain. Le Prix Loebner est une compétition annuelle qui couronne les agents conversationnels satisfaisant le mieux les critères du test de Turing. Cette compétition a été créée en 1990. Depuis quelques années, ce sont les chatbots développés avec ChatScript qui gagnent : 2010 gagnant, 2011 gagnant, 2012 2ème, 2013 3ème, 2014 gagnant, 2015 gagnant, 2016 3ème. Page 10/15
  • 12. ChatScript - le language ChatScript est un langage dédié à l’écriture de chatbots. C’est un langage complet, avec un compilateur, un interpréteur, un débogueur etc. Développé depuis 2010. Taille du code des chatbots Loebner : • gagnants d’ancienne génération (AIML) : 200 000 règles (en XML…) • ChatScript : 15 000 règles Du code : u: ( !~negativeWords I * ~like * _~meat ) You like _0. Page 11/15
  • 13. Zoom sur les couches de NLU de ChatScript Composant Description Exemple tokenizer Découpage en mots (token). j’y vais aujourd’hui → j' + y + vais + aujourd’hui dictionnaire Permet la correction orthographique. imobilier → immobilier immobiliere → immobilière lemmatiseur Trouve les formes canoniques : "belles" = "beau" au féminin pluriel. elle est belle / elle était belle → être beau j’annualise / j’ai annualisé → je annualiser ontologies "choux fleur" est un "légume" je mange des légumes / j’ai mangé des légumes / je mange des carottes / je consomme du choux-fleur → je * ~manger * ~légume Page 12/15
  • 14. ChatScript - Eléments techniques • écrit en C++ ; Linux ou Windows ; open source (MIT) • indépendant de tout canal • Sait s’inscrire dans une chaîne d’intégration continue : ◦ de vraies sources : gestion de configuration (Git, SVN etc.) pour faire du travail collaboratif ◦ automate de non régression ◦ outils de trace, de debug • 10 000 conversations simultanées sur un 8 cœurs. • Capacité à faire fonctionner de très gros chatbots (Loebner : 15 000 règles). • Pas d’interface graphique pour gérer les règles Page 13/15
  • 16. Coordonnées Ludan Stoecklé Mob. : +33 6 63 47 72 19 ludan.stoeckle@gmail.com Page 15/15