TP4 : synthese (reponses 1.1-4.4) + section README
This commit is contained in:
31
README.md
31
README.md
@@ -102,3 +102,34 @@ curl -s -X POST localhost:8000/predict/batch \
|
||||
## Livrable TP03
|
||||
|
||||
Reponses aux questions et recap : `SYNTHESE_TP03.md`.
|
||||
|
||||
---
|
||||
|
||||
# TP04 - Automatiser le pipeline avec la CI/CD (pipeline.py + Forgejo Actions)
|
||||
|
||||
Prolonge les TP precedents : les etapes manuelles (split -> entrainement -> enregistrement/promotion
|
||||
Registry) sont orchestrees en une seule commande, puis rejouees automatiquement en CI.
|
||||
|
||||
## Pipeline (Parties 2-3)
|
||||
|
||||
`pipeline.py` (racine) enchaine, via des sous-processus (`check=True`, arret au premier echec) :
|
||||
|
||||
```bash
|
||||
set -a; source .env; set +a
|
||||
python pipeline.py # split -> train full --register -> promote champion
|
||||
```
|
||||
|
||||
- 1. `lab.split.cli` : (re)cree `data/{train,validation,test}.parquet` (deterministe) ;
|
||||
- 2. `lab.modeling.cli full --register` : entraine + `log_model` + nouvelle version au Registry ;
|
||||
- 3. `lab.registry.cli promote` : repointe l'alias `champion` sur cette version.
|
||||
|
||||
`requirements.txt` fige les dependances runtime (env de reference de la VM, Python 3.14).
|
||||
|
||||
## CI/CD (Partie 4)
|
||||
|
||||
`.forgejo/workflows/pipeline.yml` : declenche sur **pull_request vers `main`**, installe les
|
||||
dependances puis lance `pipeline.py`. Execute par les runners du **Forgejo de la VM**
|
||||
(`forgejo.192-168-122-143.nip.io`), mode docker sur `mlops-net` (les donnees `/data/modelling` et la
|
||||
CA du host sont montees en lecture seule). Secrets (MLflow + S3 Garage) dans les secrets Actions du repo.
|
||||
|
||||
Livrable : `SYNTHESE_TP04.md`.
|
||||
|
||||
Reference in New Issue
Block a user