From 7225896d62ba15c8e5011b6b32458fc8d795791b Mon Sep 17 00:00:00 2001 From: quentinformatique Date: Mon, 19 May 2025 11:18:49 +0200 Subject: [PATCH 1/3] fox: change requirements --- requirements.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 11a4222..2416e46 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,5 +6,4 @@ scikit-learn joblib pandas pytest -coverage -contextlib \ No newline at end of file +coverage \ No newline at end of file From 5b2af24139a3d25febaca55fb4a358ca15f35f90 Mon Sep 17 00:00:00 2001 From: quentinformatique Date: Mon, 19 May 2025 11:24:00 +0200 Subject: [PATCH 2/3] fix: change file path in CI --- .github/workflows/ci.yml | 4 +- .gitignore | 3 - app/model/train_color_model.py | 4 +- color_model.pkl | Bin 0 -> 33510 bytes dataset.csv | 601 +++++++++++++++++++++++++++++++++ tests/images/dummy.jpg | Bin 0 -> 4590 bytes 6 files changed, 605 insertions(+), 7 deletions(-) create mode 100644 color_model.pkl create mode 100644 dataset.csv create mode 100644 tests/images/dummy.jpg diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f9808fc..700ee39 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,8 +24,8 @@ jobs: - name: Generate synthetic dataset run: | - python generate_synthetic_dataset.py - python train_color_model.py + python data/generate_synthetic_dataset.py + python app/model/train_color_model.py - name: Run tests run: | diff --git a/.gitignore b/.gitignore index 2d099ff..24402ae 100644 --- a/.gitignore +++ b/.gitignore @@ -38,8 +38,5 @@ Thumbs.db ehthumbs.db Desktop.ini -# Images and data -tests/images/ - # Logs *.log \ No newline at end of file diff --git a/app/model/train_color_model.py b/app/model/train_color_model.py index 6cedb5c..0f37b82 100644 --- a/app/model/train_color_model.py +++ b/app/model/train_color_model.py @@ -6,7 +6,7 @@ import os # Load dataset -df = pd.read_csv('../../data/dataset.csv') +df = pd.read_csv('./data/dataset.csv') X = df[['H', 'S', 'V']].values y = df['label'].values @@ -18,7 +18,7 @@ model.fit(X_train, y_train) # Save model -os.makedirs('', exist_ok=True) +os.makedirs('./', exist_ok=True) joblib.dump(model, 'color_model.pkl') print("✅ Model trained and saved to app/model/color_model.pkl") diff --git a/color_model.pkl b/color_model.pkl new file mode 100644 index 0000000000000000000000000000000000000000..cd8eabeed4ed0160abca361cd4afcf0866f40e78 GIT binary patch literal 33510 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 IIhT|F0rzBg@&Et; literal 0 HcmV?d00001 From 57a532c0c4d78717fecd5f4e8f94b897737de503 Mon Sep 17 00:00:00 2001 From: quentinformatique Date: Mon, 19 May 2025 11:33:20 +0200 Subject: [PATCH 3/3] feat(CI): remove coverage --- .github/workflows/ci.yml | 8 +------- color_model.pkl | Bin 33510 -> 0 bytes requirements.txt | 3 +-- 3 files changed, 2 insertions(+), 9 deletions(-) delete mode 100644 color_model.pkl diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 700ee39..68b389a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,10 +29,4 @@ jobs: - name: Run tests run: | - pytest tests/ - - - name: Check test coverage - run: | - pip install coverage - coverage run -m pytest tests/ - coverage report + pytest tests/ \ No newline at end of file diff --git a/color_model.pkl b/color_model.pkl deleted file mode 100644 index cd8eabeed4ed0160abca361cd4afcf0866f40e78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33510 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