Ce projet implémente un assistant email intelligent utilisant Ollama pour générer des réponses automatiques aux emails entrants. Le système apprend continuellement des interactions passées pour améliorer ses réponses futures.
- Lecture des Emails : Connexion à un serveur IMAP pour lire les emails non lus.
- Génération de Réponses : Utilisation d'Ollama pour créer des réponses pertinentes basées sur le contenu de l'email et le contexte historique.
- Brouillons Intelligents : Sauvegarde des réponses générées comme brouillons pour révision humaine.
- Apprentissage Continu : Extraction et utilisation des paires email/réponse pour améliorer les futures générations.
- Gestion de Contexte : Maintien d'un contexte global pour des réponses plus cohérentes.
- Copiez
.env.template
en.env
et remplissez les variables :
IMAP_SERVER=mail.example.com
SMTP_SERVER=mail.example.com
SMTP_PORT=587
EMAIL=votre@email.com
PASSWORD=votremotdepasse
SENTDIR=INBOX.Sent
DRAFTDIR=INBOX.Draft
OLLAMA_API_URL=http://localhost:11434
MODEL=llama2
CONTEXT=./context.txt
- Chemin de stockage des embeddings
# 'ln -s'
mkdir emails
- Assurez-vous qu'Ollama est installé et en cours d'exécution sur votre système.
pip install -r requirements.txt
Exécutez le script principal :
python email3llama.py
Le script effectuera les actions suivantes en boucle :
- Lire les nouveaux emails
- Générer des réponses avec Ollama
- Sauvegarder les réponses comme brouillons
- Mettre à jour le dataset d'apprentissage avec les emails envoyés
- Régénérer les embeddings du dataset
- Les emails non lus sont traités automatiquement.
- Les réponses générées sont sauvegardées comme brouillons dans le dossier spécifié (DRAFTDIR).
- L'utilisateur peut modifier et envoyer les brouillons manuellement.
- Les emails envoyés sont utilisés pour mettre à jour le dataset d'apprentissage.
- Le système utilise ce dataset mis à jour pour améliorer ses futures réponses.
Les contributions sont les bienvenues. Veuillez ouvrir une issue ou un pull request pour toute suggestion ou amélioration.
AGPL