14
Microsoft Bot Framework Maîtrisez le développement de chatbots avec les services cognitifs d’Azure Madjid KHICHANE En téléchargement des ressources pour la réalisation des exemples + QUIZ Version en ligne OFFERTE ! pendant 1 an

Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

  • Upload
    others

  • View
    17

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

ISBN

: 978

-2-40

9-019

86-9

39 €

Microsoft Bot FrameworkMaîtrisez le développement de chatbots avec les services cognitifs d’Azure

Après des études d’ingénieur en Informatique puis un Master en Intelligence Artificielle - Systèmes multi-agents, Madjid KHICHANE a soutenu son PhD en Intelligence Artificielle en collaboration entre l’Université Claude Bernard Lyon 1 et IBM. Il dirige aujourd’hui le pôle Intelligence Artificielle qu’il a créé au sein de DXC Technology, la première société de services infor-matiques indépendante au monde. Habitué à publier des articles scien-tifiques dans des conférences de premier niveau, il a souhaité pousser plus loin l’expérience avec l’écriture de ce livre sur le développement de chatbots avec les services cognitifs de Microsoft Azure.

Ce livre sur Bot Framework (en version V4 au moment de l’écri-ture) s’adresse aux développeurs qui souhaitent disposer des informations nécessaires pour développer un chatbot intelli-gent basé sur les services cognitifs d’Azure.

Après une présentation du concept de chatbot et de quelques cas d’usage fréquents d’utilisation, l’auteur explique l’impact de l’intelligence artificielle sur les performances d’un chatbot. Il décrit ensuite les services cognitifs de Microsoft Azure en met-tant l’accent sur ceux relatifs à la vision par ordinateur comme Vision ou ceux de compréhension du langage naturel comme LUIS ou QnA maker. Dans la suite du livre, le lecteur apprend à créer et à configurer un chatbot en utilisant Visual Studio et le langage C# et à utiliser des commandes CLI pour gérer des services cognitifs et des fichiers de configuration à l’aide de scripts. Pour finir, le dernier chapitre introduit l’outil Dispatch qui facilite l’intégration et la gestion de plusieurs services cognitifs dans un seul et même chatbot.

Pour appréhender au mieux les concepts étudiés, des projets Visual Studio prêts à l’emploi accompagnent tous les exemples nécessitant l’utilisation de .NET et sont disponibles en téléchar-gement sur le site www.editions-eni.fr.

À l’issue de la lecture de ce livre, le lecteur aura acquis une première expérience dans l’exploitation des services cognitifs d’Azure avec Bot Framework.

Pour plus d’informations :

Microsoft Bot FrameworkMaîtrisez le développement de chatbots avec les services cognitifs d’Azure

Mic

roso

ft B

ot F

ram

ewor

k

Maî

tris

ez le

dév

elop

pem

ent d

e ch

atbo

ts a

vec

les

serv

ices

cog

niti

fs d

’Azu

re

Madjid KHICHANE

Téléchargementwww.editions-eni.fr.fr

Sur www.editions-eni.fr :b Des ressources (images, scripts, textes…) pour réaliser les

exemples sur les services cognitifs.b Des ressources C# et des projets Visual Studio pour réaliser

les exemples de chatbots développés en .NET.

En téléchargementdes ressources pour la réalisation des exemples

+ QUIZ

Version en ligne

OFFERTE !pendant 1 an

Page 2: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

1Table des matières

Avant-propos

1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2. À qui s'adresse ce livre ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3. Organisation de ce livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4. Comment lire ce livre ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5. Prérequis pour la lecture de ce livre . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

6. Remerciements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Chapitre 1Concepts et généralités

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2. Pourquoi un bot ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3. Qu'est-ce qu'un bot ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4. Du test de Turing à l'assistant intelligent . . . . . . . . . . . . . . . . . . . . . . 19

5. Quelques cas d'utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

6. Les composants nécessaires pour un bot. . . . . . . . . . . . . . . . . . . . . . . 30

7. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Les éléments à télécharger sont disponibles à l'adresse suivante : http://www.editions-eni.fr 

Saisissez la référence ENI de l'ouvrage EIAZBOTF dans la zone de recherche et validez. Cliquez sur le titre du livre puis sur le bouton de téléchargement.

lcroise
Tampon
Page 3: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

2Chabots avec les services cognitifs d’Azure

Microsoft Bot Framework

Chapitre 2Conception d'un chatbot

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2. Les différents types de chatbot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352.1 Approche statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.1.1 Exemple de conversation avec l'approche statique. . . . . . 362.2 Approche avec l'intelligence artificielle . . . . . . . . . . . . . . . . . . . . 40

2.2.1 Exemple de conversation avec l'approche IA . . . . . . . . . . 422.3 Avantages et inconvénients des deux approches . . . . . . . . . . . . 43

2.3.1 Approche avec arborescence . . . . . . . . . . . . . . . . . . . . . . . 432.3.2 Approche avec l'intelligence artificielle . . . . . . . . . . . . . . . 44

3. Les étapes de développement d'un chatbot. . . . . . . . . . . . . . . . . . . . . 453.1 Mise à jour du bot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4. Points importants pour la conception d'un bot . . . . . . . . . . . . . . . . . 474.1 Le profil psychologique du bot . . . . . . . . . . . . . . . . . . . . . . . . . . 474.2 Dire que votre bot est un… robot . . . . . . . . . . . . . . . . . . . . . . . . 484.3 L'expérience utilisateur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5. Quelle équipe pour un projet chatbot ? . . . . . . . . . . . . . . . . . . . . . . . 49

6. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Chapitre 3Microsoft Azure et les services cognitifs

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

2. Le cloud computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.1 Les modèles de services cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

2.1.1 Infrastructure as a Service . . . . . . . . . . . . . . . . . . . . . . . . . 542.1.2 Plateforme as a Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552.1.3 Software as a Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

2.2 Les modèles d'hébergement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3. Présentation générale de Microsoft Azure . . . . . . . . . . . . . . . . . . . . . 56

Page 4: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

3Table des matières

4. Créer un compte Azure gratuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5. Les Services Cognitifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605.1 Le format JSON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635.2 Les services cognitifs Vision. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

5.2.1 Vision par ordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655.2.2 Détection des visages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.2.3 Modération de contenu . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.2.4 Indexation de vidéos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.2.5 Vision personnalisée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745.2.6 Comparaison entre le service Vision personnalisée

et le service Vision par ordinateur . . . . . . . . . . . . . . . . . . . 885.3 Les services cognitifs Microsoft Speech . . . . . . . . . . . . . . . . . . . 905.4 Les services cognitifs Langage . . . . . . . . . . . . . . . . . . . . . . . . . . . 925.5 Les services cognitifs Connaissance. . . . . . . . . . . . . . . . . . . . . . . 935.6 Les Services Cognitifs Recherche. . . . . . . . . . . . . . . . . . . . . . . . . 94

6. Groupe de ressources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 956.1 Création d'un groupe de ressources . . . . . . . . . . . . . . . . . . . . . . . 96

7. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

Chapitre 4Mon premier bot

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

2. Création d'un bot simple sur Azure . . . . . . . . . . . . . . . . . . . . . . . . . 1032.1 Création d'un groupe de ressources . . . . . . . . . . . . . . . . . . . . . . 1042.2 Mon premier bot sur Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1052.3 Test de mon premier bot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

3. Connecter le bot à Skype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

4. Connecter le bot à Skype dans une page web. . . . . . . . . . . . . . . . . . 120

5. Web App Bot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

6. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

Page 5: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

4Chabots avec les services cognitifs d’Azure

Microsoft Bot Framework

Chapitre 5Mon premier bot .NET

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

2. Les prérequis pour le développement d'un bot en C# . . . . . . . . . . . 128

3. Création d'un bot avec Visual Studio . . . . . . . . . . . . . . . . . . . . . . . . 1303.1 Structure d'un projet chatbot dans Visual Studio . . . . . . . . . . 132

4. Tester et déboguer un chatbot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1344.1 Tester le chatbot avec le Bot Framework Emulator . . . . . . . . . 1344.2 Débogage dans Visual Studio. . . . . . . . . . . . . . . . . . . . . . . . . . . 138

5. Déployer le bot dans Azure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

6. Architecture d'un Chatbot dans Azure . . . . . . . . . . . . . . . . . . . . . . 151

7. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

Chapitre 6Programmation asynchrone

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

2. Concurrence, parallélisme et asynchronisme . . . . . . . . . . . . . . . . . . 153

3. Async, Task et Await . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

4. Exemple de programme asynchrone . . . . . . . . . . . . . . . . . . . . . . . . . 157

5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

Chapitre 7Le Bot Framework SDK(v4)

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

2. Envoyer et recevoir des messages . . . . . . . . . . . . . . . . . . . . . . . . . . . 1682.1 Envoyer les messages textes simples . . . . . . . . . . . . . . . . . . . . . 170

2.1.1 La méthode SendActivityAsync . . . . . . . . . . . . . . . . . . . 1712.1.2 La méthode SendActivitiesAsync . . . . . . . . . . . . . . . . . . 173

Page 6: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

5Table des matières

2.2 Recevoir les messages texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1752.3 Envoyer des pièces jointes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1762.4 Envoi de message de type Hero Card . . . . . . . . . . . . . . . . . . . . 1792.5 Envoi de messages de types Adaptive Card . . . . . . . . . . . . . . . 184

2.5.1 Exemple d'une Adaptive Card .NET . . . . . . . . . . . . . . . . 1852.5.2 Exemple d'une Adaptive Card JSON. . . . . . . . . . . . . . . . 192

2.6 Envoi de messages en Carousel . . . . . . . . . . . . . . . . . . . . . . . . . 199

3. La classe Activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201

4. Contexte des conversations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

5. Les dialogues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210

6. Les Middlewares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

7. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222

Chapitre 8Apprendre une langue à votre bot

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223

2. Présentation de LUIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224

3. Présentation du portail LUIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

4. Structure d'un modèle LUIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2294.1 Les Intents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2294.2 Les Entities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2294.3 Les Utterances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229

5. Exemple d'une application LUIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2305.1 Définition des objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2305.2 Création du modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2315.3 Tester le modèle dans le portail LUIS . . . . . . . . . . . . . . . . . . . . 2355.4 Ajouter des entités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2395.5 Publier le modèle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2465.6 Tester le modèle dans le navigateur . . . . . . . . . . . . . . . . . . . . . 2475.7 Exporter et importer un modèle LUIS. . . . . . . . . . . . . . . . . . . . 254

Page 7: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

6Chabots avec les services cognitifs d’Azure

Microsoft Bot Framework

6. Améliorer les performances de LUIS . . . . . . . . . . . . . . . . . . . . . . . . . 255

7. Gestion des clés LUIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2587.1 Les deux types de clés LUIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2587.2 Création d'une clé LUIS dans Azure . . . . . . . . . . . . . . . . . . . . . 2587.3 Ajout d'une clé dans LUIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2597.4 Les régions et LUIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260

8. Autres fonctionnalités du portail LUIS. . . . . . . . . . . . . . . . . . . . . . . 261

9. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262

Chapitre 9Le service QnA Maker

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263

2. Présentation de QnA Maker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2642.1 Création d'un service QnA Maker dans Azure . . . . . . . . . . . . . 2642.2 Le portail QnA Maker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2672.3 L'application web d'une base de connaissances . . . . . . . . . . . . 271

2.3.1 Tester une base de connaissances . . . . . . . . . . . . . . . . . . 2732.3.2 Ajouter une paire question/réponse . . . . . . . . . . . . . . . . 2742.3.3 Publication d'une base de connaissances. . . . . . . . . . . . . 2772.3.4 Les paramètres d'une base de connaissances. . . . . . . . . . 278

3. Apprentissage continu d'une KB . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281

4. Les bonnes pratiques QnA Maker . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

5. Connecter un bot à QnA Maker . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285

6. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293

Page 8: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

7Table des matières

Chapitre 10Gestion des services avec les commandes CLI

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295

2. Pourquoi les commandes CLI ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295

3. LUIS et CLI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296

4. QnA Maker et CLI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302

5. L'outil MSBot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310

6. Les scripts Chatdown. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315

7. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318

Chapitre 11L'outil Dispatch

1. Objectif du chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

2. Pourquoi Dispatch ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319

3. Exemple d'un modèle Dispatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322

4. Utiliser un modèle Dispatch dans un chatbot .NET . . . . . . . . . . . . 327

5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346

Page 9: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

103

Chapitre 4

Mon premier bot

Mon premier bot1. Objectif du chapitre

Nous allons enfin entrer dans le vif du sujet! En plus de familiariser le lecteurà diverses manipulations sur Azure, ce chapitre montre comment créer et tes-ter un chatbot. Ce premier chatbot sera créé sans recourir à la programmationet uniquement en utilisant les options standards présentes sur Azure.

À la fin de ce chapitre, le lecteur aura abordé :

– La création d'un bot sur Azure

– Le test d'un bot dans l'environnement Azure

– L'ajout d'un bot dans les contacts Skype

– La personnalisation et l'intégration de Skype dans une page web

– Les options des applications de type Web App Bot

2. Création d'un bot simple sur Azure

Cette section montre comment créer un bot sur la plateforme Azure. Dans lechapitre précédent, nous avons vu qu'un groupe de ressources facilite l'organi-sation de tous les composants d'un même projet. Avant de créer notre premierprojet chatbot, nous allons d'abord créer un groupe de ressources où seront re-censés tous les services nécessaires à son fonctionnement.

lcroise
Tampon
Page 10: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

© E

dit

ions

EN

I -

All r

ights

rese

rved

104Chabots et les services cognitifs d’Azure

Microsoft Bot Framework

2.1 Création d'un groupe de ressources

dConnectez-vous à votre portail Microsoft Azure, puis créez un nouveaugroupe de ressources avec le nom Ch4-RG-MyFirstBot, comme sur la fi-gure 4-1 suivante :

Figure 4-1 : création du groupe de Ch4-RG-MyFirstBot.

Remarque

Pour savoir comment créer ce nouveau groupe de ressources, veuillez suivreles mêmes étapes que celles de la section Groupe de ressources.1 du cha-pitre précédent où nous avons créé un groupe de ressources.

dUne fois le groupe de ressources créé, revenez sur la page principale desgroupes de ressources et cliquez sur Ch4-RG-MyFirstBot, le nouveaugroupe de ressources. Vous devez voir le même résultat que celui de la figure4-2 ci-après.

Page 11: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

105Mon premier botChapitre 4

Figure 4-2 : le groupe de ressources Ch4-RG-MyFirstBot.

2.2 Mon premier bot sur Azure

Maintenant que le groupe de ressources Ch4-RG-MyFirstBot est disponible,nous pouvons créer notre tout premier bot.

Pour cela, veuillez suivre les étapes ci-dessous :

dRestez positionné dans le nouveau groupe de ressources Ch4-RG-MyFirst-Bot comme dans la figure 4-2 ci-dessus.

dCliquez sur le bouton +Add situé en haut de cette page.

Page 12: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

© E

dit

ions

EN

I -

All r

ights

rese

rved

106Chabots et les services cognitifs d’Azure

Microsoft Bot Framework

dDans la zone de recherche de la nouvelle page qui s'affiche, saisissez WebApp Bot, comme sur la figure 4-3 suivante :

Figure 4-3 : la page Marketplace

dSélectionnez Web App Bot, dans la nouvelle page qui s'affiche lisez la des-cription de ce service, puis cliquez sur le bouton Create. La page de créationde bots s'affiche.

Page 13: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

107Mon premier botChapitre 4

dDans la page de création de bots, repérez puis cliquez sur le champ Bot tem-

plate et sélectionnez les options SDK v4, C# et Echo Bot comme dans lafigure 4-4 suivante :

Figure 4-4 : sélection d'un modèle pour un nouveau bot

Le champ Bot Template permet de définir les options du modèle de bot quel'on souhaite créer. La première option, SDK version, permet de préciser laversion du SDK (Software Development Kit) à utiliser. SDK v4 est la nouvelleversion du SDK de Azure Bot Service qui succède à la version SDK v3. Ladeuxième option SDK Language permet de choisir le langage de programma-tion à utiliser pour la création du bot. La dernière option permet de sélection-ner le modèle de projet chatbot à créer.

Page 14: Madjid KHICHANE Bot Framework Microsoft Bot Framework · Microsoft Bot Framework cognitifs d’Azure Maîtrisez le développement de chatbots avec les services cognitifs d’Azure

© E

dit

ions

EN

I -

All r

ights

rese

rved

108Chabots et les services cognitifs d’Azure

Microsoft Bot Framework

Ces trois options du modèle seront mieux comprises au chapitre suivant, carce premier bot sera complètement créé dans Azure et sans devoir écrire aucuneligne de code, tandis que le prochain chapitre sera complètement dédié à lacréation d'un deuxième bot en utilisant Visual Studio et C#, ce qui va nouspermettre de voir plus en détail ces options.

dCliquez sur le bouton OK pour revenir à la page de création de bots.

Avec les options sélectionnées du template, les champs restants de la page decréation du bot sont définis comme suit :

1. Bot Name : le nom du bot en cours de création.

2. Subscription : la souscription à utiliser pour la création de ce bot. Toutcomme lors de la création du groupe de ressource Ch4-RG-MyFirstBot, nousn'allons pas avoir d'autre choix que la valeur Essai gratuit.

3. Resource group : le nom du groupe de ressources auquel seront associéestoutes les ressources qui vont être créées à l'occasion de la création de ce bot.

4. Location : zone géographique dans laquelle le bot sera créé.

5. Pricing tier : le niveau de tarification qui sera utilisé. Pour l'inscription gra-tuite dont vous disposez, vous n'allez avoir que deux choix possibles S1 et F0.

6. App name : le nom de l'application. Concrètement, la valeur de ce champsera utilisée comme première partie du nom de domaine qui sera associé ànotre bot.

7. Bot template : les options associées au modèle de bot qui sera créé. Voirfigure 4-4 ci-dessus.

8. App service plan/location : ce champ permet de donner un nom au plande déploiement de l’application web qui sera associée au nouveau chatbot.

9. Azure Storage : le nom de la ressource de stockage qui sera créée et utiliséepour notre bot.

10. Application Insights : une application qui permet de réaliser des statis-tiques.