Académique Documents
Professionnel Documents
Culture Documents
et de la Recherche Scientifique
****
Université de Sousse
****
Ecole Supérieure des Sciences et de la Technologie de Hammam Sousse
Tout d’abord, nous tenons à remercier Dieu le Tout-Puissant qui nous a donné la puissance afin
d’accomplir ce travail modeste.
En second lieu, nous tenons à remercier mes professeurs pour la qualité de l'enseignement qu'ils
m'ont assurée durant ces 3 dernières années à l'école. Je remercie particulièrement mon encadrant
universitaire " Mme Samia ben Ismail " qui m'a encouragé pour réaliser ce projet ainsi que nos
parents qui pour leur soutien inconditionnel, à la fois moral et économique.
Nous exprimons tous nos remerciements à Mme ElHamdi Nadia notre superviseur a la société
SPIMOB, d’avoir répondu à toutes nos questions et nous avoir fourni les informations
nécessaires à la réalisation de l’application.
Tous mes vœux de bonheur et de succès dans ta vie personnelle et professionnelle à mes amis et
mes collègues qui m'ont soutenu et encouragé, MERCI énormément pour la bonne compagnie, la
bonne humeur et les bons moments passés.
Finalement, nous remercions les membres des jurys et pour l’honneur qu’ils nous ont fait d’avoir
voulu examiner et évaluer ce travail.
Je dédie ce travail à mes parents pour tous leurs sacrifices, leur amour, leur tendresse, leur soutien
et leurs prières tout au long de mes études
À ma mère à qui je dois ma réussite et qui a sacrifié pour m'offrir les conditions propices pour
que je puisse réaliser mes études. Tes conseils permanents m’ont appris beaucoup de choses
toutes ces années. Les mots ne suffisent pas pour exprimer combien je suis reconnaissant à tes
efforts. Je voulais te dire MERCI d’avoir été et d’être,
À mon cher père, j’ai un énorme respect pour toi, MERCI d’avoir tout fait pour me garder dans
le droit chemin. Merci aussi d’avoir été, depuis mes premières minutes sur Terre jusqu’à
aujourd’hui, mon plus grand support dans la vie. J'espère que ce travail sera la récompense de
plusieurs années de sacrifice et de dévouement.
À ma grande sœur, MERCI d'être une sœur si merveilleuse, MERCI d'avoir partagé avec moi
tant des moments de joie et de bonheur, ta tendresse est un trésor. À mon binôme de ce projet et
mon binôme de logement à la fois.
Wassim
DEDICASE
Je dédie ce travail à mes parents pour tous leurs sacrifices, leur amour, leur tendresse, leur soutien
et leurs prières tout au long de mes études
À l'âme de ma mère, décédée très tôt, à la femme exceptionnelle qui a sacrifié sa vie pour sa
famille, qui m'a toujours poussé vers l'avant, qui m'a toujours soutenu et qui m'a toujours aidé à
avancer et à réaliser mes rêves. J'ai tant voulu qu'elle assiste aujourd'hui au résultat de plusieurs
années d'amour et d'affection. J'espère que de là-haut tu es fière de moi et que ton âme repose en
paix.
À mon cher père, ma source de noblesse, de courage et d'affection. Qui m'a appris à vivre et qui
ne cesse pas de me conseiller et de me diriger vers le bon chemin. Vous avez toujours été mon
école de patience et de persévérance. Que ce travail traduit ma gratitude et mon respect le plus
profond aux efforts que vous avez déployés durant toutes ces années.
À mon frère qui a toujours était à mes côtés et qui m'encourage à chaque fois que j'avais besoin.
Aucune dédicace ne peut exprimer mon amour et ma gratitude de t'avoir comme frère. Tu es le
grand frère qui assure son rôle comme il faut, je n'oublierai jamais ton coup d'épaule. Je te
souhaite une vie pleine de joie et de bonheur.
Zoubeyr
Table des matières
Liste des figures .............................................................................................................................. 7
Liste des tableaux ........................................................................................................................... 8
Introduction générale ..................................................................................................................... 9
Chapitre 1 : PRESENTATION GENERALE ET ETUDES PRELIMINIAIRE ................... 11
1. Introduction ....................................................................................................................... 12
2. Présentation du cadre de projet de fin d’études ............................................................. 12
2.1 Présentation de l’organisme de Stage ..................................................................................................... 12
2.2 Présentation du Projet............................................................................................................................. 14
2.2.1 Problématique .................................................................................................................................... 14
2.2.2 Objectifs de Projet ............................................................................................................................. 14
7. Conclusion .......................................................................................................................... 21
Chapitre 2 : Etude Conceptuelle ................................................................................................. 22
1. Introduction ....................................................................................................................... 23
2. L’architecture de l’application ........................................................................................ 23
2.1 Le Modèle MVC .................................................................................................................................... 23
5. Conclusion .......................................................................................................................... 37
Chapitre3 : Réalisation de projet ................................................................................................ 38
1. Introduction ....................................................................................................................... 39
2. Environnement de développement .................................................................................. 39
2.1 Environnement Matériel ......................................................................................................................... 39
2.2 Environnement Logiciel ......................................................................................................................... 40
4. Conclusion .......................................................................................................................... 47
Conclusion générale ..................................................................................................................... 48
Annexe sur Traitement automatique des langues naturelles ................................................... 50
1. Traitement automatique du Langage Naturel ................................................................ 51
2. Définition du Spacy ........................................................................................................... 52
3. Installation ......................................................................................................................... 52
4. Exemple du traitement des différentes étapes TALN avec Spacy ................................ 52
4.1 Tokenisation des mots (Word tokenization)........................................................................................... 52
4.2 Tokenisation des phrases (Sentence tokenization) ................................................................................. 53
4.3 Enlever les mots les plus fréquents (Stop words) ................................................................................... 53
4.4 Etiquetage morpho-syntaxique (Part Of Speech POS) ........................................................................... 54
4.5 Stemming (Lemmatization) .................................................................................................................... 55
4.6 Reconnaissance d’entités nommées (Entity Recognition NER) ............................................................. 55
4.7 Vecteur par mot (Word Vector) ............................................................................................................. 56
4.8 Similarité des phrases (Computing Similarity) ...................................................................................... 57
4.9 Fréquence des mots (words frequency) .................................................................................................. 58
Bibliographie................................................................................................................................. 59
Liste des figures
Figure 1: Logo de l'organisme de stage ...................................................................................... 13
Figure 2: Emplacement géographique de l'entreprise Spimob ................................................ 13
Figure 3: Le fonctionnement d'un chatbot ................................................................................ 15
Figure 4: Solution actuelle de personnalisation du bot ............................................................. 16
Figure 5: Fonctionnement Messenger d’un bloc ....................................................................... 16
Figure 6: Fonctionnement Messenger d'un menu ..................................................................... 17
Figure 7: Présentation de déroulement de méthodologie Scrum ............................................. 21
Figure 8: Diagramme de Gantt ................................................................................................... 21
Figure 9: Représentation des interactions entre le modèle, la vue et le contrôleur dans le cas
d'une application web. ................................................................................................................. 24
Figure 10: Logo UML .................................................................................................................. 24
Figure 11:Diagramme de cas d'utilisation global ...................................................................... 26
Figure 12: Diagramme de cas d'utilisation pour la gestion des chatBots ............................... 26
Figure 13: Diagramme de classe global ...................................................................................... 33
Figure 14: Diagramme de séquence : Authentification ............................................................ 34
Figure 15: Diagramme de séquence : Automatisation d'un chatbot ....................................... 35
Figure 16:Diagramme de séquence : Suppression d'un chatbot .............................................. 36
Figure 17: Diagramme de séquence : Configuration d'un chatbot ......................................... 37
Figure 18: Logo Angular ............................................................................................................. 40
Figure 19 : Logo NodeJS ............................................................................................................ 41
Figure 20: Logo PostgreSQL ....................................................................................................... 41
Figure 21: Logo Postman ............................................................................................................. 41
Figure 22: Logo GanttProject ..................................................................................................... 42
Figure 23: Logo de l'application ................................................................................................. 42
Figure 24: Interface d'authentification ...................................................................................... 43
Figure 25:Interface d'accueil ....................................................................................................... 43
Figure 26:Interface de personnalisation de chatBots ................................................................ 44
Figure 27:Liste des éléments ....................................................................................................... 44
Figure 28: Exporter la personnalisation .................................................................................... 45
Figure 29 Table vide ..................................................................................................................... 45
Figure 30: Enregistrement d'une personnalisation ................................................................... 46
Figure 31: Enregistrement dans la base de données ................................................................. 46
Figure 32:Modification de la personnalisation .......................................................................... 47
Liste des tableaux
Tableau 1: Présentation de quelques méthodologies ................................................................ 20
Tableau 2: Cas d'utilisation associé au Client ........................................................................... 25
Tableau 3: Cas d’utilisation : Authentification ......................................................................... 27
Tableau 4: Cas d’utilisation : Gérer les chatBots...................................................................... 27
Tableau 5: Cas d’utilisation : Consulter les abonnées .............................................................. 28
Tableau 6: Cas d’utilisation : Consulter les abonnées .............................................................. 28
Tableau 7: Cas d’utilisation : Consulter les messages .............................................................. 29
Tableau 8: Cas d’utilisation : Demander un pack .................................................................... 29
Tableau 9: Dictionnaire de données ........................................................................................... 32
Tableau 10: Environnement matériel ......................................................................................... 39
Introduction générale
Introduction générale
Après de nombreuses recherches et demandes de stage, nous avons réussi à obtenir l'approbation
de la direction de l'entreprise SPIMOB. Nous nous sommes lancés dans l’amélioration d’une
application web de vente de chabot.
C’est dans ce cadre que notre projet consiste à créer une application web qui sert à la
personnalisation du chatbot Facebook. Pour cela ce rapport définit les phases de mise en œuvre de
ce projet en se basant sur 3 chapitres :
10
Chapitre 1 :
PRESENTATION
GENERALE ET ETUDES
PRELIMINIAIRE
Chapitre 1 : Présentation générale et études préliminaire
1. Introduction
Le travail élaboré dans ce rapport a été effectué dans le cadre d’un projet de fin d’études en vue de
l’obtention de Diplôme National de Licence Appliquée en Sciences et Technologies de
l’Information et de la Communication à Ecole Supérieure de Sciences et Technologies Hammam-
Sousse (ESSTHS), et a été réalisé à SPIMOB. Dans ce qui suit, nous détaillerons le cadre de notre
projet de fin des études.
Depuis sa création, SPIMOB s'est donnée pour mission de faire bénéficier de son savoir-faire en
intelligence artificielle et technologique à chacun de ses clients.
Les collaborateurs assurent un accompagnement individuel pour aider les clients à mettre en place
leurs stratégies. Réaliser des plateformes d'intelligence artificielle dédiée aux différents domaines
(finance, santé, éducation, transport...) est un objectif parmi tant d'autres pour SPIMOB.
Les réalisations d'applications SPIMOB se trouvent sur le site afrikamob.com. Parmi ses
réalisations web :
- www.engineer.tn
- www.oit.org.tn
- www.chatbot.tn
12
Chapitre 1 : Présentation générale et études préliminaire
Fiche technique
Téléphone : +216 51 11 91 11
E-mail : contact@spimob.com
Web : https://www.spimob.io/
13
Chapitre 1 : Présentation générale et études préliminaire
2.2.1 Problématique
De nos jours, grâce à l’évolution technologique la digitalisation devient un facteur fondamental
pour les personnes physiques et morales pour fournir un service de communication plus adopté.
D’où les chatbot ont fait ses preuves comme un outil solide pour effectuer cette tâche. Par contre
la personnalisation d’un tel outil est difficile ce qui empêche plusieurs individus à pouvoir utiliser
ce service.
Dans cette section, nous déterminons de façon détaillée et précise ce qu’est le chatbot et ce qui
devrait faire, ainsi que son rôle par rapport au service clientèle. Pour satisfaire de besoins réels qui
se font ressentir du côté client et aussi de côté société, la mise en place d’un chatbot est
indispensable.
1
Donner l'illusion qu'un programme pense par un dialogue sensé.
14
Chapitre 1 : Présentation générale et études préliminaire
Cet outil est aujourd’hui largement utilisé par le service client des marques et des commerçants
en ligne via la messagerie instantanée. Afin de répondre au mieux aux besoins spécifiques des
internautes, tels que l’obtention d’information sur un certain sujet, la réservation, la commande,
la recherche, etc.
Un chatbot est donc une application conçue pour automatiser des tâches ou simuler des
conversations. Grâce à un ensemble de réponses préenregistrées, ce programme informatique peut
donc lire des messages (email, SMS, Chat, etc.) et y répondre en quelque seconde
4. Etude de l’existant
L’étude de l’existant est une phase très importante dans le projet, elle consiste à mettre à plat de
façon aussi claire que possible le fonctionnement du système actuel. Cette étude permet de faciliter
la reconnaissance des besoins. Le but de cette section est de déduire les insuffisances ou problèmes
afin d’améliorer la qualité du service clientèle.
15
Chapitre 1 : Présentation générale et études préliminaire
16
Chapitre 1 : Présentation générale et études préliminaire
17
Chapitre 1 : Présentation générale et études préliminaire
Cette partie va servir à poser les bases du recueil des besoins du système à réaliser. Pour pouvoir
clarifier les besoins des utilisateurs de notre application, nous allons présenter les besoins
fonctionnels et les besoins non fonctionnels.
• Consulter les notifications : le client peut consulter les notifications concernant ses bots
(création, suppression…etc.)
• Consulter les nombres des abonnés : Le client peut consulter le nombre d’abonnés qui
utilisent sont bots.
• Gérer les chatbot :
- Le client peut construire un chatbot personnalisé. En effet, il choisit les éléments ajoutés
dans son chatBot selon son besoin.
- Le client peut configurer son chatbot par l’intégrer dans n’importe page Facebook qu’il
possède
- Le client peut automatiser son chatbot selon son choix en utilisant les éléments fournis par
l’application
- Le client peut ajouter/supprimer des chatbot selon son choix
• Demander des packs : le client peut acheter un pack de l’application afin d’améliorer le
service des bots.
2
Une technologie qui permet aux machines de comprendre la langue humaine grâce à l’intelligence artificielle
18
Chapitre 1 : Présentation générale et études préliminaire
6. Méthodologies de développement
Le choix d’une méthodologie de développement est une phase essentielle pour garantir la qualité
de travail et éviter tout problème au niveau des délais. C’est pour cela on doit adapter une
méthodologie efficace qui permet de gérer le cycle de vie d’un projet.
19
Chapitre 1 : Présentation générale et études préliminaire
20
Chapitre 1 : Présentation générale et études préliminaire
❖ Development team : C’est l’équipe ce qui est chargé de la réalisation du produit. Aucun
n’a un rôle particulier. Pour notre cas est Wassim Omrani et Zoubeyr Sahraoui.
7. Conclusion
21
Chapitre 2 : Etude
Conceptuelle
Chapitre 2 : Etude conceptuelle
1. Introduction
Après avoir identifié le cadre de notre projet et le choix de notre méthodologie de développement
« Scrum », on passe donc à présenter une conception générale qui est consacrée à l’architecture
générale de l’application et la conception UML [3], ainsi nous allons identifier les acteurs et
présenter les différents diagrammes.
2. L’architecture de l’application
Dans le premier chapitre, nous identifions Scrum comme notre méthodologie de développement,
la démarche de la conception sera conforme à l’architecture de l’application. Pour réussir un
développement professionnel, il faut choisir une architecture adéquate pour le système, dans notre
cas on choisit l’architecture MVC.
L’architecture MVC est donc composée de trois types de modules ayant trois responsabilités
distinctes :
✓ Modèle
Il contient les données de l’application. Les objets de modèle servent à stocker et récupérer l’état
du modèle en base de données.
✓ Vue
Elle représente l’interface utilisateur, grâce au modèle elle sert à afficher les données d’affichage
et permet également à l’utilisateur de les modifiées.
✓ Contrôleur
Il sert à assurer la synchronisation entre le modèle et les vues. D’une manière générale le contrôleur
dirige les requêtes entrantes et fait appel aux processus correspondants.
23
Chapitre 2 : Etude conceptuelle
Figure 9: Représentation des interactions entre le modèle, la vue et le contrôleur dans le cas d'une application web.
3. Méthodologie de conception
Le langage UML représente un ensemble de meilleures pratiques d'ingénierie qui ont fait leurs
preuves dans la modélisation de systèmes vastes et complexes. Le langage UML est une partie très
importante du développement de logiciels orientés objet et du processus de développement logiciel.
Le langage UML utilise principalement des notations graphiques pour exprimer la conception de
projets logiciels. L'utilisation du langage UML aide les équipes de projet à communiquer, à
explorer les conceptions potentielles et à valider la conception architecturale du logiciel.
24
Chapitre 2 : Etude conceptuelle
4. Conception détaillée
Aprés choisir le langage de modélisation UML, nous allons identifier les acteurs de notre système
ainsi que présenter une multitude de diagrammes UML : diagramme de cas d’utilisation,
diagramme de classe et diagramme de séquence
25
Chapitre 2 : Etude conceptuelle
26
Chapitre 2 : Etude conceptuelle
- Authentification
L’authentification est la première étape de notre application ou le tableau ci-dessous présente les
conditions pour ce cas d’utilisation ainsi que les scénarios et les exceptions.
Titre Authentification
Acteur Client
Pré-condition L’acteur doit s’identifier via Facebook
Scénario nominal 1. L’utilisateur demande la page
d’authentification
2. L’utilisateur se connecte via Facebook
et accepte l’utilisation de chatbot.tn
3. Le système vérifie la demande de
connexion
4. Le système affiche la page d’accueil
de client
Post-condition L’acteur se déconnecte ou choisit une autre
tâche
Exception Erreur de connexion :
Message d’erreur si la connexion via
Facebook est impossible
27
Chapitre 2 : Etude conceptuelle
Après la connexion de client, il sera réorienté vers la page d’accueil ou il peut consulter ses
notifications. Le tableau suivant décrit ce cas
28
Chapitre 2 : Etude conceptuelle
- Demander un pack
Après la connexion de client, il sera réorienté vers la page d’accueil ou il peut consulter ses
notifications. Le tableau suivant décrit ce cas
Titre Demander un pack
Acteur Client
Pré-condition L’acteur doit s’identifier via Facebook
Scénario nominal 1. Le client consulte la page des packs
2. Le client choisit son pack et la méthode
de paiement préféré
3. Le système vérifie le paiement
4. Le système active le pack ciblé par le
client
29
Chapitre 2 : Etude conceptuelle
IDChatbot
30
Chapitre 2 : Etude conceptuelle
31
Chapitre 2 : Etude conceptuelle
Total_Element Entier
Fréquence Entier
32
Chapitre 2 : Etude conceptuelle
33
Chapitre 2 : Etude conceptuelle
4.3.1 Authentification
Le diagramme ci-dessus présente tous les scénarii lors d’une tentative de connexion où l’utilisateur
demande de se connecter, le système le réoriente vers Facebook afin de se connecter si cette étape
est validée le système affiche la page d’accueil sinon il affiche la page d’authentification.
34
Chapitre 2 : Etude conceptuelle
35
Chapitre 2 : Etude conceptuelle
36
Chapitre 2 : Etude conceptuelle
5. Conclusion
Dans ce chapitre, on a réalisé la conception détaillée de tous les cas d’utilisations. Ensuite, on a
présenté le diagramme de classe et de séquence afin de tracer le chemin de notre projet à la phase
finale : la réalisation.
37
Chapitre3 : Réalisation de
projet
Chapitre 3 : Réalisation de projet
1. Introduction
Après avoir élaboré la phase de conception de notre application, nous aborderons dans ce chapitre
la dernière partie de ce rapport qui vise à décrire la phase d’achèvement et d’aboutissement du
projet. Afin de finaliser cette tâche avec succès, il nous doit choisir les bons et nécessaires outils à
utiliser.
Ce chapitre est divisé en deux parties : la première partie est dédié à présenter l’environnement
matériel que nous avons utilisé pour la réalisation du projet, la seconde partie décrit le
fonctionnement de notre application web.
2. Environnement de développement
Tout au long de la phase d’établissement de ce projet, nous avons utilisé deux machines dont les
caractéristiques sont les suivant :
39
Chapitre 3 : Réalisation de projet
• Framework Angular
Angular [4] est un Framework open source écrit en JavaScript qui permet la création
d’applications Web et plus particulièrement de ce qu’on appelle des « Single Page Applications » :
des applications web accessibles via une page web unique qui permet de fluidifier l’expérience
utilisateur et d’éviter les chargements de pages à chaque nouvelle action. Le Framework est basé
sur une architecture du type MVC et permet donc de séparer les données, le visuel et les actions
pour une meilleure gestion des responsabilités. Un type d’architecture qui a largement fait ses
preuves et qui permet une forte maintenabilité et une amélioration du travail collaboratif.
• NodeJS
Node.js [5] est une plateforme logicielle libre en JavaScript, orientée vers les applications réseau
événementielles hautement concurrentes qui doivent pouvoir monter en charge. Elle utilise la
machine virtuelle V8, la librairie libuv pour sa boucle d'évènements, et implémente sous licence
MIT les spécifications CommonJS.
40
Chapitre 3 : Réalisation de projet
• PostgreSQL
PostgreSQL [6] est un système de gestion de base de données relationnelle et objet. C'est un outil
libre disponible selon les termes d'une licence de type BSD. Ce système est concurrent d'autres
systèmes de gestion de base de données qu'ils soient libres, ou propriétaires.
• POSTMAN
Postman [7] est la plate-forme qui nous offre la possibilité de tester les requêtes HTTP avec ses
différentes méthodes. Cela est très important pour savoir les bons paramètres à passer que ce soit
à l’entête ou en corps des requêtes à envoyer.
41
Chapitre 3 : Réalisation de projet
• GANTTPROJECT
GanttProject [7] est un outil permettant de gérer vos projets sur le modèle des diagrammes de Gantt.
Cet outil permet de décomposer vos projets en arborescence et d’assigner des ressources à chacune
des taches prévues au planning. Il est possible de créer des dépendances entre les activités. Cette
fonctionnalité se révèle indispensable lorsque le travail accompli sur une tache est nécessaire pour
une autre partie du projet.
Dans la partie suivante, nous présenterons les différentes interfaces de notre application en nous
basant sur les différents cas d’utilisation déjà vus dans le chapitre étude préliminaire, en premier
lieu on présente le logo d’application.
42
Chapitre 3 : Réalisation de projet
43
Chapitre 3 : Réalisation de projet
44
Chapitre 3 : Réalisation de projet
45
Chapitre 3 : Réalisation de projet
46
Chapitre 3 : Réalisation de projet
4. Conclusion
A ce stade, nous avons présenté les différentes phases de la réalisation commençant par décrire les
différentes technologies utilisées ainsi que l’environnement matériel et logiciel de notre projet.
Enfin, nous avons donné une vue finale de projet grâce à des captures d’écran pour bien afficher
notre application.
47
Conclusion générale
Conclusion générale
Tout au long de ce projet, nous pouvons affirmer que ce stage nous a donné l’opportunité
d’apprendre des nouveaux langages de programmation tels que l’Angular, NodeJS, PostgreSQL,
…etc. De même, ce projet m’aider à appliquer tout ce que j’ai appris à l’ESST Hammam-Sousse.
En plus, on a eu la chance de s’intégrer à la vie professionnelle.
Ce modeste rapport est divisé en trois chapitres, le premier chapitre sert à définir l’établissement
de stage et d’une étude générale sur notre application. Le deuxième chapitre sert à une conception
profonde de l’application qui trace notre chemin de développement. Finalement le dernier chapitre
met en valeur la réalisation de notre projet ou il présente l’environnement de développement.
Ce travail répond aux besoins de l’entreprise et il peut être amélioré dans la future par l’ajout des
nouvelles fonctionnalités.
J’espère que le projet établi a été à la hauteur de la confiance qui m’a été donnée.
49
Annexe sur Traitement
automatique des langues
naturelles
Annexe sur Traitement automatique des langues naturelles
Le traitement automatique du Langage Naturel [8] est un des domaines de recherche les plus actifs
en science des données actuellement. C’est un domaine à l’intersection du Machine Learning et de
la linguistique. Il a pour but d’extraire des informations et une signification d’un contenu textuel.
Le TAL (traitement automatique du langage) est généralement composé de deux à trois grandes
étapes :
• Pré-traitement : une étape qui cherche à standardiser du texte afin de rendre son usage
plus facile.
• Représentation du texte comme un vecteur : Cette étape peut être effectuée via des
techniques de sac de mots (Bag of Words) ou Term Frequency-Inverse Document
Frequency (Tf-IdF). On peut également apprendre des représentations vectorielles
(embedding) par apprentissage profond.
• Classification, trouver la phrase la plus similaire… (optionnel).
51
Annexe sur Traitement automatique des langues naturelles
2. Définition du Spacy
spaCy (/speɪˈsiː/ spay-SEE) est une bibliothèque logicielle open source pour le traitement avancé
du langage naturel, écrite dans les langages de programmation Python et Cython.[9]
La bibliothèque est publiée sous licence MIT et ses principaux développeurs sont Matthew
Honnibal et Ines Montani, les fondateurs de la société de logiciels Explosion.
3. Installation
// i
import spacy
spacy.prefer_gpu()
nlp = spacy.load("en_core_web_sm")
//
La tokenisation cherche à transformer un texte en une série de tokens individuels. Dans l’idée,
chaque token représente un mot, et identifier des mots semble être une tâche relativement simple
52
Annexe sur Traitement automatique des langues naturelles
On peut également appliquer une tokenisation par phrase afin d’identifier les différentes phrases
d’un texte. Cette étape peut à nouveau sembler facile, puisque a priori, il suffit de couper chaque
phrase lorsqu’un point est rencontré (ou un point d’exclamation ou d’interrogation).
53
Annexe sur Traitement automatique des langues naturelles
54
Annexe sur Traitement automatique des langues naturelles
Le stemming consiste à réduire un mot dans sa forme « racine ». Le but du stemming est de
regrouper de nombreuses variantes d’un mot comme un seul et même mot.
55
Annexe sur Traitement automatique des langues naturelles
Avec SpaCy, on peut facilement récupérer le vecteur correspondant à chaque mot une fois passé
dans le modèle pré-entraîné
56
Annexe sur Traitement automatique des langues naturelles
57
Annexe sur Traitement automatique des langues naturelles
58
Bibliographie
Bibliographie
60
Résumé
L’objectif principal de ce travail de PFE consiste à Conception et Développement d’une application web
pour la personnalisation d’un chatbot Facebook
Cette application permet aux internautes de configurer un chatbot Facebook selon leurs besoins.
L’application inclut aussi une partie importante qui présente la consultation des notifications,nombre
d'abonnés et nombre de vues.
Mots clés: Angular, Node JS, PostgreSQL.
Abstract
The main objective of this PFE work is to Design and Development of a web application for the
personalization of a Facebook chatbot
This application allows Internet users to consult notifications,number of followers and number of views.
خالصة
يتمثل الهدف الرئيسي لعمل مشروع التخرج في تصميم وتطوير تطبيق ويب لتخصيص روبوت الدردشة على الفايسبوك
يتضمن التطبيق أيضًا جز ًءا مه ًما يتمثل.يتيح هذا التطبيق لمستخدمي اإلنترنت تكوين روبوت محادثة على الفايسبوك وفقًا الحتياجاتهم
.في متابعة اإلشعارات وعدد المشتركين وعدد المشاهدات