Ce script nettoie les labels récupéré apres le premier tour de labels avec l'IA. Il parcourt une liste de labels issus de 1. premiere vague labels
, les analyse à l'aide du modèle Mistral, et génère une sortie catégorisée dans un fichier JSON.
-
Analyse de labels : Le script prend en entrée des labels et les attribue à l'une des catégories suivantes :
commercial
newsletter
personnel
service
autre
(pour les labels ne correspondant à aucune des catégories principales)- Les spams sont automatiquement classés comme
commercial
.
-
Enregistrement des résultats : Les résultats sont enregistrés dans un fichier
labels_apres.json
, incluant les informations suivantes :- Label initial (
label_premierTour
) - Thread ID
- Label catégorisé après analyse (
label_deuxiemeTour
).
- Label initial (
Avant d'exécuter ce script, assurez-vous d'avoir :
- Python 3.x installé.
- La bibliothèque
mistralai
installée :pip install mistralai
- Un fichier labels_avant.py contenant les données
LABELS
récupérés depuis firebase - Une clé API valide pour le modèle Mistral.
- Clonez ce dépôt ou copiez le script.
- Placez votre clé API dans la variable api_key du script.
- Vérifiez que le fichier
labels_avant.py
est structuré comme suit :
LABELS = {
"mail_id_1": {"label_premierTour": "label1", "threadId": "thread1"},
"mail_id_2": {"label_premierTour": "label2", "threadId": "thread2"},
...
}
- Lancez le script en exécutant la commande suivante dans votre terminal :
python main.py
- Processus : Chaque label dans
labels_avant.py
est analysé avec le modèle Mistral via l'API. Une pause de 1 seconde est incluse entre chaque requête pour éviter les dépassements de limite de l'API. Les résultats sont enregistrés dans le fichierlabels_apres.json
. - Format de sortie : Exemple de structure dans
labels_apres.json
:
{
"mail_id_1": {
"label_premierTour": "label1",
"threadId": "thread1",
"label_deuxiemeTour": "newsletter"
},
"mail_id_2": {
"label_premierTour": "label2",
"threadId": "thread2",
"label_deuxiemeTour": "commercial"
}
}