ASI-Engineer commited on
Commit
0822174
·
verified ·
1 Parent(s): 3cabed9

Upload folder using huggingface_hub

Browse files
Files changed (2) hide show
  1. README.md +46 -0
  2. requirements.txt +113 -15
README.md CHANGED
@@ -39,6 +39,52 @@ model_path = hf_hub_download(
39
  model = mlflow.sklearn.load_model(str(Path(model_path).parent))
40
  ```
41
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  ## 📈 Métriques
43
 
44
  - **F1-Score**: 0.5136
 
39
  model = mlflow.sklearn.load_model(str(Path(model_path).parent))
40
  ```
41
 
42
+ ## 🛠️ Installation & Développement
43
+
44
+ ### Prérequis
45
+ - Python 3.12+
46
+ - Poetry (gestionnaire de dépendances)
47
+
48
+ ### Installation avec Poetry
49
+
50
+ ```bash
51
+ # Installer Poetry (si pas déjà fait)
52
+ curl -sSL https://install.python-poetry.org | python3 -
53
+
54
+ # Installer les dépendances
55
+ poetry install
56
+
57
+ # Activer l'environnement virtuel
58
+ poetry shell
59
+
60
+ # Lancer le pipeline d'entraînement
61
+ poetry run python main.py
62
+
63
+ # Lancer l'interface Gradio
64
+ poetry run python app.py
65
+ ```
66
+
67
+ ### Export pour HF Spaces
68
+
69
+ HuggingFace Spaces nécessite un `requirements.txt`. Pour le générer depuis Poetry :
70
+
71
+ ```bash
72
+ ./scripts/export_requirements.sh
73
+ ```
74
+
75
+ ### Tests et Linting
76
+
77
+ ```bash
78
+ # Formater le code
79
+ poetry run black .
80
+
81
+ # Linter
82
+ poetry run flake8 .
83
+
84
+ # Tests
85
+ poetry run pytest --cov=ml_model tests/
86
+ ```
87
+
88
  ## 📈 Métriques
89
 
90
  - **F1-Score**: 0.5136
requirements.txt CHANGED
@@ -1,16 +1,114 @@
1
- # Core dependencies
2
- black==25.11.0
3
- flake8==7.3.0
4
- pytest==9.0.1
5
- pytest-cov==7.0.0
6
 
7
- # ML dependencies
8
- scikit-learn==1.6.1
9
- xgboost==2.1.4
10
- imbalanced-learn==0.13.0
11
- scipy==1.14.1
12
- numpy==2.0.2
13
- pandas==2.2.3
14
- joblib==1.4.2
15
- mlflow==3.8.0
16
- gradio==5.9.1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This file is auto-generated from pyproject.toml using Poetry
2
+ # To update: run ./scripts/export_requirements.sh
 
 
 
3
 
4
+ aiofiles==23.2.1 ; python_version >= "3.12" and python_version < "4.0"
5
+ alembic==1.17.2 ; python_version >= "3.12" and python_version < "4.0"
6
+ annotated-doc==0.0.4 ; python_version >= "3.12" and python_version < "4.0"
7
+ annotated-types==0.7.0 ; python_version >= "3.12" and python_version < "4.0"
8
+ anyio==4.12.0 ; python_version >= "3.12" and python_version < "4.0"
9
+ audioop-lts==0.2.2 ; python_version >= "3.13" and python_version < "4.0"
10
+ blinker==1.9.0 ; python_version >= "3.12" and python_version < "4.0"
11
+ cachetools==6.2.4 ; python_version >= "3.12" and python_version < "4.0"
12
+ certifi==2025.11.12 ; python_version >= "3.12" and python_version < "4.0"
13
+ cffi==2.0.0 ; python_version >= "3.12" and python_version < "4.0" and platform_python_implementation != "PyPy"
14
+ charset-normalizer==3.4.4 ; python_version >= "3.12" and python_version < "4.0"
15
+ click==8.3.1 ; python_version >= "3.12" and python_version < "4.0"
16
+ cloudpickle==3.1.2 ; python_version >= "3.12" and python_version < "4.0"
17
+ colorama==0.4.6 ; python_version >= "3.12" and python_version < "4.0" and platform_system == "Windows"
18
+ contourpy==1.3.3 ; python_version >= "3.12" and python_version < "4.0"
19
+ cryptography==46.0.3 ; python_version >= "3.12" and python_version < "4.0"
20
+ cycler==0.12.1 ; python_version >= "3.12" and python_version < "4.0"
21
+ databricks-sdk==0.76.0 ; python_version >= "3.12" and python_version < "4.0"
22
+ docker==7.1.0 ; python_version >= "3.12" and python_version < "4.0"
23
+ fastapi==0.123.4 ; python_version >= "3.12" and python_version < "4.0"
24
+ ffmpy==1.0.0 ; python_version >= "3.12" and python_version < "4.0"
25
+ filelock==3.20.1 ; python_version >= "3.12" and python_version < "4.0"
26
+ flask-cors==6.0.2 ; python_version >= "3.12" and python_version < "4.0"
27
+ flask==3.1.2 ; python_version >= "3.12" and python_version < "4.0"
28
+ fonttools==4.61.1 ; python_version >= "3.12" and python_version < "4.0"
29
+ fsspec==2025.12.0 ; python_version >= "3.12" and python_version < "4.0"
30
+ gitdb==4.0.12 ; python_version >= "3.12" and python_version < "4.0"
31
+ gitpython==3.1.45 ; python_version >= "3.12" and python_version < "4.0"
32
+ google-auth==2.45.0 ; python_version >= "3.12" and python_version < "4.0"
33
+ gradio-client==1.7.0 ; python_version >= "3.12" and python_version < "4.0"
34
+ gradio==5.14.0 ; python_version >= "3.12" and python_version < "4.0"
35
+ graphene==3.4.3 ; python_version >= "3.12" and python_version < "4.0"
36
+ graphql-core==3.2.7 ; python_version >= "3.12" and python_version < "4.0"
37
+ graphql-relay==3.2.0 ; python_version >= "3.12" and python_version < "4.0"
38
+ greenlet==3.2.4 ; python_version >= "3.12" and python_version < "4.0" and (platform_machine == "aarch64" or platform_machine == "ppc64le" or platform_machine == "x86_64" or platform_machine == "amd64" or platform_machine == "AMD64" or platform_machine == "win32" or platform_machine == "WIN32")
39
+ gunicorn==23.0.0 ; python_version >= "3.12" and python_version < "4.0" and platform_system != "Windows"
40
+ h11==0.16.0 ; python_version >= "3.12" and python_version < "4.0"
41
+ httpcore==1.0.9 ; python_version >= "3.12" and python_version < "4.0"
42
+ httpx==0.28.1 ; python_version >= "3.12" and python_version < "4.0"
43
+ huey==2.5.5 ; python_version >= "3.12" and python_version < "4.0"
44
+ huggingface-hub==0.27.1 ; python_version >= "3.12" and python_version < "4.0"
45
+ idna==3.11 ; python_version >= "3.12" and python_version < "4.0"
46
+ imbalanced-learn==0.13.0 ; python_version >= "3.12" and python_version < "4.0"
47
+ importlib-metadata==8.7.1 ; python_version >= "3.12" and python_version < "4.0"
48
+ itsdangerous==2.2.0 ; python_version >= "3.12" and python_version < "4.0"
49
+ jinja2==3.1.6 ; python_version >= "3.12" and python_version < "4.0"
50
+ joblib==1.5.3 ; python_version >= "3.12" and python_version < "4.0"
51
+ kiwisolver==1.4.9 ; python_version >= "3.12" and python_version < "4.0"
52
+ mako==1.3.10 ; python_version >= "3.12" and python_version < "4.0"
53
+ markdown-it-py==4.0.0 ; python_version >= "3.12" and python_version < "4.0" and sys_platform != "emscripten"
54
+ markupsafe==2.1.5 ; python_version >= "3.12" and python_version < "4.0"
55
+ matplotlib==3.10.8 ; python_version >= "3.12" and python_version < "4.0"
56
+ mdurl==0.1.2 ; python_version >= "3.12" and python_version < "4.0" and sys_platform != "emscripten"
57
+ mlflow-skinny==3.8.0 ; python_version >= "3.12" and python_version < "4.0"
58
+ mlflow-tracing==3.8.0 ; python_version >= "3.12" and python_version < "4.0"
59
+ mlflow==3.8.0 ; python_version >= "3.12" and python_version < "4.0"
60
+ numpy==2.4.0 ; python_version >= "3.12" and python_version < "4.0"
61
+ nvidia-nccl-cu12==2.28.9 ; python_version >= "3.12" and python_version < "4.0" and platform_system == "Linux" and platform_machine != "aarch64"
62
+ opentelemetry-api==1.39.1 ; python_version >= "3.12" and python_version < "4.0"
63
+ opentelemetry-proto==1.39.1 ; python_version >= "3.12" and python_version < "4.0"
64
+ opentelemetry-sdk==1.39.1 ; python_version >= "3.12" and python_version < "4.0"
65
+ opentelemetry-semantic-conventions==0.60b1 ; python_version >= "3.12" and python_version < "4.0"
66
+ orjson==3.11.5 ; python_version >= "3.12" and python_version < "4.0"
67
+ packaging==25.0 ; python_version >= "3.12" and python_version < "4.0"
68
+ pandas==2.3.3 ; python_version >= "3.12" and python_version < "4.0"
69
+ pillow==11.3.0 ; python_version >= "3.12" and python_version < "4.0"
70
+ protobuf==6.33.2 ; python_version >= "3.12" and python_version < "4.0"
71
+ pyarrow==22.0.0 ; python_version >= "3.12" and python_version < "4.0"
72
+ pyasn1-modules==0.4.2 ; python_version >= "3.12" and python_version < "4.0"
73
+ pyasn1==0.6.1 ; python_version >= "3.12" and python_version < "4.0"
74
+ pycparser==2.23 ; python_version >= "3.12" and python_version < "4.0" and platform_python_implementation != "PyPy" and implementation_name != "PyPy"
75
+ pydantic-core==2.41.5 ; python_version >= "3.12" and python_version < "4.0"
76
+ pydantic==2.12.5 ; python_version >= "3.12" and python_version < "4.0"
77
+ pydub==0.25.1 ; python_version >= "3.12" and python_version < "4.0"
78
+ pygments==2.19.2 ; python_version >= "3.12" and python_version < "4.0" and sys_platform != "emscripten"
79
+ pyparsing==3.3.1 ; python_version >= "3.12" and python_version < "4.0"
80
+ python-dateutil==2.9.0.post0 ; python_version >= "3.12" and python_version < "4.0"
81
+ python-dotenv==1.2.1 ; python_version >= "3.12" and python_version < "4.0"
82
+ python-multipart==0.0.21 ; python_version >= "3.12" and python_version < "4.0"
83
+ pytz==2025.2 ; python_version >= "3.12" and python_version < "4.0"
84
+ pywin32==311 ; python_version >= "3.12" and python_version < "4.0" and sys_platform == "win32"
85
+ pyyaml==6.0.3 ; python_version >= "3.12" and python_version < "4.0"
86
+ requests==2.32.5 ; python_version >= "3.12" and python_version < "4.0"
87
+ rich==14.2.0 ; python_version >= "3.12" and python_version < "4.0" and sys_platform != "emscripten"
88
+ rsa==4.9.1 ; python_version >= "3.12" and python_version < "4.0"
89
+ ruff==0.14.10 ; python_version >= "3.12" and python_version < "4.0" and sys_platform != "emscripten"
90
+ safehttpx==0.1.7 ; python_version >= "3.12" and python_version < "4.0"
91
+ scikit-learn==1.6.1 ; python_version >= "3.12" and python_version < "4.0"
92
+ scipy==1.16.3 ; python_version >= "3.12" and python_version < "4.0"
93
+ semantic-version==2.10.0 ; python_version >= "3.12" and python_version < "4.0"
94
+ shellingham==1.5.4 ; python_version >= "3.12" and python_version < "4.0" and sys_platform != "emscripten"
95
+ six==1.17.0 ; python_version >= "3.12" and python_version < "4.0"
96
+ sklearn-compat==0.1.5 ; python_version >= "3.12" and python_version < "4.0"
97
+ smmap==5.0.2 ; python_version >= "3.12" and python_version < "4.0"
98
+ sqlalchemy==2.0.44 ; python_version >= "3.12" and python_version < "4.0"
99
+ sqlparse==0.5.5 ; python_version >= "3.12" and python_version < "4.0"
100
+ starlette==0.50.0 ; python_version >= "3.12" and python_version < "4.0"
101
+ threadpoolctl==3.6.0 ; python_version >= "3.12" and python_version < "4.0"
102
+ tomlkit==0.13.3 ; python_version >= "3.12" and python_version < "4.0"
103
+ tqdm==4.67.1 ; python_version >= "3.12" and python_version < "4.0"
104
+ typer==0.21.0 ; python_version >= "3.12" and python_version < "4.0" and sys_platform != "emscripten"
105
+ typing-extensions==4.15.0 ; python_version >= "3.12" and python_version < "4.0"
106
+ typing-inspection==0.4.2 ; python_version >= "3.12" and python_version < "4.0"
107
+ tzdata==2025.2 ; python_version >= "3.12" and python_version < "4.0"
108
+ urllib3==2.6.2 ; python_version >= "3.12" and python_version < "4.0"
109
+ uvicorn==0.38.0 ; python_version >= "3.12" and python_version < "4.0"
110
+ waitress==3.0.2 ; python_version >= "3.12" and python_version < "4.0" and platform_system == "Windows"
111
+ websockets==14.2 ; python_version >= "3.12" and python_version < "4.0"
112
+ werkzeug==3.1.4 ; python_version >= "3.12" and python_version < "4.0"
113
+ xgboost==2.1.4 ; python_version >= "3.12" and python_version < "4.0"
114
+ zipp==3.23.0 ; python_version >= "3.12" and python_version < "4.0"