Ce projet vise à développer un système de prédiction de prêts à l'aide de modèles d'apprentissage automatique. Il est divisé en deux parties principales : une API construite avec FastAPI pour le back-end et une application Web Django pour le front-end.
Le projet est organisé en deux grandes parties :
-
API (FastAPI) :
- Dossiers de notebooks pour le nettoyage, l'EDA (Exploratory Data Analysis) et la modélisation.
- Implémentation d'une API utilisant FastAPI pour servir les prédictions de prêt.
-
Application Web (Django) :
- Trois applications distinctes :
main: Pages accessibles sans connexion, avec des fonctionnalités d'affichage.functionalities: Pages nécessitant une connexion, telles que le formulaire de prédiction de prêt.accounts: Gestion de l'inscription, de la connexion, des emails de confirmation et de la réinitialisation du mot de passe utilisant Mailjet.
- Trois applications distinctes :
- Assurez-vous d'avoir Docker et Docker Compose installés sur votre système.
- Clonez ce dépôt.
- Naviguez vers le répertoire racine du projet.
- Exécutez
docker-compose up -d --buildpour construire et lancer les conteneurs.
Si vous préférez ne pas utiliser Docker Compose, vous pouvez exécuter chaque composant individuellement. Consultez les README dans les dossiers API et Web pour des instructions détaillées.
- Assurez-vous d'avoir Docker installé et connecté à Docker Hub.
- Exécutez le script
deploy.shpour construire et pousser les images Docker vers Docker Hub. - Pour le déploiement sur Azure, assurez-vous d'avoir un compte Azure et le CLI Azure installé.
- Utilisez le CLI Azure pour déployer les conteneurs sur Azure Container Instances ou Azure Kubernetes Service, selon vos besoins.
https://drive.google.com/file/d/1vdNaWcJgMzUnlaDVA4FuZRFYinO8UsPQ/view?usp=drive_link
Pour générer les datasets et modèles, veuillez suivre les instructions ci-dessous :
-
Ouvrez le notebook
0_Cleaning.ipynbsitué dans le répertoireapi/Model_pret/Modelisation/pour effectuer le nettoyage des données. -
Suivez les étapes nécessaires dans les notebooks
2_et3_pour la génération des données et des modèles respectivement, situés dans le répertoireapi/Model_pret/Modelisation/.
Pour configurer votre fichier .env pour le projet Web, veuillez inclure les variables suivantes :
SECRET_KEY=Votre_Cle_Secrete
DEBUG=True # Ou False en production
API_KEY=Votre_Cle_API
MAILJET_SECRET_KEY=Votre_Cle_Secrete_Mailjet
MAILJET_API_KEY=Votre_Cle_API_Mailjet
MAILJET_SENDER=Votre_Adresse_Email_Mailjet
FRONTEND_URL=URL_de_votre_application_Frontend
POSTGRES_DB=Nom_de_votre_base_de_données
POSTGRES_PASSWORD=Votre_Mot_de_Passe_PostgreSQL
POSTGRES_USER=Votre_Utilisateur_PostgreSQL
POSTGRES_HOST=Adresse_de_votre_hôte_PostgreSQL
POSTGRES_PORT=Port_de_votre_base_de_données_PostgreSQL
POSTGRES_RDY=True # Ou False pour indiquer l'état prêt de votre base de données PostgreSQL
Assurez-vous de remplacer les valeurs fictives par vos propres valeurs dans le fichier .env.