Vous êtes sur la page 1sur 16

Rapport : projet systèmes experts

Développement d’un CHATBOT

Par : Mourabit Nisrine


Chigare Imane
Outrgua Fatima Zahra
Jaouad Houda
Dansou Efelic Caleb et Melouani Youssra

2ACI groupe A

Encadrée par : Mme HILAL

Mme DAOUDI
Tables des matières :
I. Introduction aux chabots : 2
1. Définition Chatbot 2
2. Importance : 2
3. Types des chatbots 3
4. Le fonctionnement des chatbots 3
NLP (Natural Language Processing) : 4
NLTK( Natural Language Toolkit) : 4
II. Conception : 7
1. Importation Des Bibliothèques 7
Installer des packages : 7
2. Outils et langages utilisés : 8
3. Prétraitement du texte : 9
Tokenisation : 9
Preprocessing : 9
4. Correspondance des mots clés : 10
5. Fonction Réponse 10

III. Interface graphique : 12


IV. Conclusion : ___________________________________________13

1
I. Introduction aux chabots :

1. Définition Chatbot

Un chabot est un logiciel intelligent capable de communiquer et d'exécuter


des actions similaires à un être humain et comprendre ses demandes en
langage naturel, pour proposer des réponses ou lancer des actions, grâce à
un apprentissage initial et à un entrainement continu.
A l’origine des chabots, il y avait les agents conversationnels, appelé aussi
les agents virtuels. Ils utilisaient des bibliothèques de questions/ réponses,
mais étaient très limités dans leurs compréhensions et leurs capacités.
Désormais, grâce aux progrès de l’intelligence artificielle, de l’analyse
sémantique et des connexions avec le système d’informations, le chabot
sait analyser et comprendre les demandes complexes, tout en apprenant de
ses erreurs.

2. Importance :
Les chabots sont extrêmement utiles pour les entreprises et les clients. La
majorité des gens préfèrent parler directement à partir d'une boîte de
discussion plutôt que d'appeler des centres de service. Facebook a publié
des données qui ont prouvé la valeur des robots. Plus de 2 milliards de
messages sont envoyés mensuellement entre particuliers et entreprises. La
recherche Hub Spot indique que 71% des personnes souhaitent obtenir une
assistance client à partir des applications de messagerie. C'est un moyen
rapide de résoudre leurs problèmes afin que les chabots aient un bel avenir
dans les organisations. Dans ce projet on va l’utiliser dans le domaine des
compagnies aériennes , vu que tout le monde voudrait booker des tickets
d’avion sans pour autant se rendre à l’emplacement réel du service .

2
3. TYPE DE CHATBOT :

Il existe deux types de chatbots :

• Les chatbots simples ou scriptés permettent de répondre à des demandes


précises. Ils suivent des scripts de conversations, des scénarios établis à
l’avance.

C’est en fait ce que l’on appelle une FAQ (Foire Aux Questions) interactive.

La phrase saisie par le client/usager est analysée, puis une recherche


automatique est lancée dans une base de connaissances. Pour ce type de chabot,
la base est d’avoir un scénario prédéfini qui guide la personne vers la
meilleure solution. Par exemple, le client indique son problème et le
système de FAQ lié au chabot propose des solutions.

Ce sont donc des scénarios très prédéfinis avec des interactions très limitées,
puisque dès que la requête est « hors scénario », le chabot est perdu.

• Les chatbots complexes apprenants reposent sur l’intelligence artificielle Ils


sont capables de comprendre et d’analyser le langage humain pour donner des
réponses contextualisées.

Il sait répondre à des besoins plus évolués, c’est-à-dire qu’il va pouvoir


interpréter la demande, et lancer des actions (et non pas juste proposer une
réponse type).

Un chabot intelligent est capable de comprendre une conversation et de


s’intégrer au système d’informations de l’entreprise pour agir.

3
Toutefois, les chatbots apprenants ou les chatbots mixtes (mêlant scripts et intelligence
artificielle) gagnent du terrain.

En effet, ils sont capables de répondre à des requêtes complexes et leur coût devient
plus abordable.

L’autre question qui se pose désormais, c’est celle du choix entre chatbot et voicebot.

Ou encore la possibilité de faire cohabiter les deux types de bots.

La décision de privilégier l’une ou l’autre solution s’appuiera sur la connaissance de


son audience-cible et de ses problématiques.

4. Comment Fonctionnent Les Chatbots?


Les chabots ne sont rien d'autre qu'un logiciel intelligent qui peut interagir
et communiquer avec des gens comme les humains. Tout le chabot relève
des concepts NLP (Natural Language Processing). La PNL est composée
de deux choses:

 NLU (Natural Language Understanding): La capacité des machines


à comprendre le langage humain comme l'anglais.
 NLG (Natural Language Generation): La capacité d'une machine à
générer du texte similaire à des phrases écrites humaines.

4
NLP (Natural Language Processing) :

La PNL aide à effectuer des tâches de traitement du langage, ce qui aide à


structurer les connaissances pour effectuer des tâches telles que la
tokenisation, la stemming, la lemmatisation, l'extraction de relations, la
segmentation de sujets, etc.
NLTK( Natural Language Toolkit) :

NLTK (Natural Language Toolkit) est une plate-forme de création


d'applications pour travailler avec le langage humain. Il fournit des
interfaces faciles à utiliser telles que Word Net, ainsi qu'une suite de
bibliothèques de traitement de texte pour la classification, la tokenisation,
le stemming, le balisage, l'analyse et le raisonnement sémantique, etc. pour
les bibliothèques NLP.

II. Conception :

1. Importation Des Bibliothèques :

Installer des packages :


Swing: est une bibliothèque graphique pour le langage de programmation
JAVA, faisant partie du package java Foundation classese (JFC), inclus
dans J2SE. Swing constitue l'une des principales évolutions apportées par
Java 2 par rapport aux versions antérieures

AWT (Abstract Window Toolkit): est une bibliothèque qui fait référence
à une collection d'interfaces (API) utilisées par les programmeurs Java pour
la création des objets d'interface graphique (GUI)

Lang : Java. lang fournit des classes qui sont fondamentales pour la conception
du langage Java. Les classes les plus importantes sont Object, qui est la classe
mère de toutes les classes, et Class, dont les instances représentent les classes
lors de l'exécution.

5
2. Outils et langages utilisés :

Java :
Java est un langage de programmation populaire et est utilisé à
grande échelle dans le monde entier pour le développement
d'applications. Il présente des avantages tels que le multithreading,
l'extensibilité, la gestion de la mémoire, la haute sécurité, le support
communautaire, etc.
Eclipse :
Eclipse est un projet, décliné et organisé en un ensemble de sous-
projets de développements logiciels, de la fondation Eclipse visant
à développer un environnement de production de logiciels libre qui
soit extensible, universel et polyvalent, en s'appuyant
principalement sur Java.

IntelliJ :

IntelliJ est un environnement de développement intégré (en


anglais Integrated Development Environment- IDE) destiné au
développement de logiciels informatiques reposant sur la
technologie Java.

3. Prétraitement du texte :

 Conversion de texte en minuscules ou en majuscules afin que


l'algorithme ne fonctionne pas sur les mêmes mots dans des cas
différents.
 Tokenisation : Tokenization est juste le terme utilisé pour décrire le
processus de conversion des chaînes de texte normales en une liste de jetons,
c'est-à-dire les mots qu’on veut réellement.
 Lemmatisation: c'est le processus de trouver la même forme des mots.
Par exemple, la lemmatisation est que «courir» est une forme de base
pour des mots comme le mot «mieux» et «bon» seront dans le même
lemme, donc ils sont considérés comme les mêmes.

6
4. CORRESPONDANCE DES MOTS CLES :

• Messages d’accueil :

Permet d'examiner une fonction pour un message d'accueil par le chatbot,


c'est-à-dire que si la saisie d'un utilisateur est un message d'accueil, le bot
doit renvoyer une réponse d'accueil.

7
Messages du processus de la réservation du ticket d’avion :

8
Messages de remerciement puis pour finir la discussion :

9
5. Les fonctions réponses :

keyPressed permet de générer une réponse par le chatbot en transitant tout ce qui est
écrit par l’utilisateur dans la barre de l’utilisateur .

keyReleased est une fonction qui correspond à l’événement produit par une touche
relevée .

keyTyped est une fonction qui correspond à l’évènement produit par une touche
enfoncée par l’utilisateur puis relevée .

10
Fonction addText permet d’ajouter la demande de l’utilisateur à la barre
du dialogue du chatbot.

inArray nous permet de voir à chaque fois si la demande de l’utilisateur


figure dans l’une des listes déclarés au début afin de générer une réponse
correspondante .

11
III. Interface graphique de chatbot :
Conclusion :

Le chatbot s'adapte aux utilisateurs et simplifie l'utilisation des services, il


est toujours disponible pour répondre aux préoccupations des clients.
Il permet aux entreprises de booster leur présence sur plateformes de
messaging et de gérer leurs clients, sans faire de téléchargement
d'applications.

Ce projet chatbot qu’on a réalisé donc nous a permis entre autre de


développer une simple interface où l’utilisateur réalise sa demande de
réservation à l’aide d’un robot qui représente un agent de service des
companies aériennes .

Finalement , cela nous a permis de plus se familiariser avec les chatbots et


leurs manières de réalisation . Il nous a permis ainsi de mieux développer
nos compétences et de savoir l’importance des chatbots dans notre vie

13
14

Vous aimerez peut-être aussi