marintosti12 commited on
Commit
2dd02fe
·
1 Parent(s): b726611

feat(readme): add readme

Browse files
Files changed (1) hide show
  1. README.md +74 -0
README.md CHANGED
@@ -8,3 +8,77 @@ sdk_version: "latest"
8
  app_file: "app.py"
9
  pinned: false
10
  ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
  app_file: "app.py"
9
  pinned: false
10
  ---
11
+
12
+ # 🚀 Deploy Machine Learning API
13
+
14
+ API pour la prédiction attrition employé avec **FastAPI**, **SQLAlchemy** et **SQLite/PostgreSQL**.
15
+ Elle permet de :
16
+
17
+ - 📊 **Lister** les modèles ML disponibles (`/`)
18
+ - 🤖 **Prédire** avec un modèle donné (`/predict`)
19
+ - 🗄️ **Sauvegarder** automatiquement les inputs et outputs en base
20
+ - 📚 **Documentation Swagger/OpenAPI** générée automatiquement
21
+
22
+ ---
23
+
24
+ ## 📦 Prérequis
25
+
26
+ - Python 3.12+
27
+ - [Poetry](gestion des dépendances)
28
+ - Docker (PostgreSQL local via Compose)
29
+
30
+ ---
31
+
32
+ ## Installation
33
+
34
+ ### 1. Cloner le dépôt
35
+ ~~~bash
36
+ git clone https://github.com/ton-compte/deploy-machine-learning.git
37
+ cd deploy-machine-learning
38
+ ~~~
39
+
40
+
41
+ ### 2. Créer un environnement virtuel avec Poetry
42
+ ~~~bash
43
+ poetry install
44
+ ~~~
45
+
46
+ ### 3. Configurer l’environnement
47
+
48
+ Crée un fichier **.env** à la racine :
49
+
50
+ ~~~env
51
+ # PostgreSQL
52
+ DATABASE_URL=postgresql+psycopg2://futu:futu_pass@localhost:5432/futurisys
53
+ # Hugging Face
54
+ HF_TOKEN= Token Hugging Face
55
+ ~~~
56
+
57
+
58
+ ## 4. Base de données (PostgreSQL)
59
+
60
+ ### Démarrer la base
61
+ ~~~bash
62
+ docker compose up -d db
63
+ ~~~
64
+
65
+
66
+ ### 5. Lancer l’API
67
+
68
+ ~~~bash
69
+ poetry run uvicorn src.main:app --reload
70
+ ~~~
71
+
72
+
73
+ ### 🧹 Qualité de code
74
+
75
+ **Lint :**
76
+ ~~~bash
77
+ poetry run ruff check .
78
+ ~~~
79
+
80
+ ### 🧪 Tests & Couverture
81
+
82
+ **Lancer les tests :**
83
+ ```bash
84
+ poetry run pytest --maxfail=1 --disable-warnings -q