🚀Détection de Spam avec LLM et Analyse d’Emails : Un Projet Streamlit + Docker + DeepSeek
🎯 Objectif du Projet
🚀Détection de Spam avec LLM et Analyse d’Emails : Un Projet Streamlit + Docker + DeepSeek
🎯 Objectif du Projet
Ce projet a pour but de créer une application web intelligente capable de :
- Détecter automatiquement les emails suspects (SPAM) à l’aide d’un modèle LLM.
- Analyser les tendances de spam dans des fichiers CSV d’emails.
- Utiliser le modèle open-source DeepSeek-R1 dans un environnement Dockerisé via Ollama.
Une solution complète, clé en main, pour mieux comprendre et filtrer ses emails entrants grâce à l’intelligence artificielle.
🧱 Stack Technologique
Voici les outils principaux utilisés dans ce projet :

📁 Structure du Projet
project/ ├── Dockerfile ├── docker-compose.yml ├── requirements.txt ├── home.py ├── Detection_spam.py ├── Analyse_des_tendances.py └── pages/ ├── 1_Détection_de_Spam.py └── 2_Analyse_des_Tendances.py
🚀 Mise en place du projet depuis GitHub 🔗
Pour récupérer les fichiers du projet et préparer l’environnement local, suivez les étapes ci-dessous :
Étape 1 : Cloner le repo GitHub
Ouvrez votre terminal et exécutez :
git clone https://github.com/yassir156/data_mining_avance.git
cd data_mining_avance
Étape 2 : Vérifier la structure du projet
Assurez-vous que tous les fichiers requis sont bien présents :
ls
Vous devriez voir une structure similaire à celle-ci :
Dockerfile
docker-compose.yml
requirements.txt
home.py
Detection_spam.py
Analyse_des_tendances.py
pages/
⚙️ Déploiement
Option 1 — via Docker (recommandé)
docker-compose up - build
Option 2 — en local
pip install -r requirements.txt
ollama run deepseek-r1
streamlit run home.py
🔐 N’oubliez pas de sécuriser vos identifiants email via un fichier .env :
EMAIL_ACCOUNT=youremail@gmail.com
EMAIL_PASSWORD=yourapppassword
🧪 Module 1 : Détection de SPAM avec LLM
Ce module effectue une analyse automatique des 10 derniers emails de votre boîte de réception en suivant ces étapes :
- Connexion sécurisée via IMAP.
- Extraction des entêtes et contenus des emails.
- Envoi des prompts au modèle DeepSeek-R1.
- Affichage d’un score (0 à 100) et d’un label : SPAM ou NON SPAM.
Exemple de prompt :
Voici un email :
E x p d i t e u r : spam@promo . com
Objet : VOUS AVEZ G A G N
Contenu : Cliquez ici ...
Donne un score de SPAM entre 0 et 100.
📊 Module 2 : Analyse des Tendances
Ce second module permet d’importer un fichier .csv contenant un historique d’emails pour en extraire des tendances globales.
Fonctionnalités :
- Chargement du fichier CSV.
- Traitement en batchs de 15 lignes.
- Résumé automatique généré par le LLM.
📄 Format CSV attendu :
Expéditeur,Objet,Contenu,Score,Label
a@spam.com,"Promo","Clique ici",95,SPAMcc
🖼️ Interface Utilisateur (UI)
L’application Streamlit est divisée en deux modules facilement accessibles via une barre latérale.
1. Accueil — Détection de SPAM
Permet d’analyser instantanément les 10 derniers emails reçus en un seul clic.

2. Détail d’un Email
Affichage complet de l’expéditeur, du contenu, du score de détection, et du verdict SPAM ou NON SPAM.

3. Analyse des Tendances
Permet d’importer un fichier CSV et de lancer une analyse globale de tous les emails qu’il contient.


lignes
🔐 Recommandations Sécurité
- Intégration de Streamlit Authenticator pour la protection par mot de passe.
- Chiffrement HTTPS (via proxy ou configuration Render).
- Logging avec
loguru. - Export des résultats vers une base PostgreSQL (optionnel).
☁️ Déploiement Render.com (Bonus)
Pour déployer votre app sur le cloud, vous pouvez utiliser Render.com :
- Connectez votre dépôt GitHub.
- Ajoutez un fichier
start.sh:
ollama serve &
sleep 5
streamlit run home.py --server.port=10000
🔗 Ressources utiles
💬 Conclusion
Grâce à ce projet, vous pouvez détecter automatiquement les spams, visualiser des tendances globales sur vos emails, et tirer parti d’un LLM performant — le tout dans une interface simple et responsive.
메타데이터
- post_id
- 983039a2acbd
- slug
- détection-de-spam-avec-llm-et-analyse-demails-un-projet-streamlit-docker-deepseek-983039a2acbd
- url
- https://medium.com/@mohamed.sebnet/d%C3%A9tection-de-spam-avec-llm-et-analyse-demails-un-projet-streamlit-docker-deepseek-983039a2acbd
- canonical_url
- https://medium.com/@mohamed.sebnet/d%C3%A9tection-de-spam-avec-llm-et-analyse-demails-un-projet-streamlit-docker-deepseek-983039a2acbd
- author_url
- https://medium.com/@mohamed.sebnet
- status
- ok
- fetched_at
- 2026-07-28 06:17:56