| # π Cara Meletakkan File Model Anda | |
| ## File yang Anda Punya (dari Google Drive) | |
| Dari screenshot yang Anda berikan, Anda memiliki file-file ini: | |
| ``` | |
| Output_DenseNetSVM/ | |
| βββ svm_densenet201_rbf.joblib (5.2 MB) | |
| βββ metadata.json (353 byte) | |
| βββ features_train_densenet201.csv (81.1 MB) | |
| βββ features_test_densenet201.csv (10.2 MB) | |
| βββ features_val_densenet201.csv (10.1 MB) | |
| ``` | |
| ## β File yang DIPERLUKAN untuk API | |
| Hanya 2 file ini yang diperlukan: | |
| 1. β **svm_densenet201_rbf.joblib** - Model SVM Anda | |
| 2. β **metadata.json** - Informasi tentang kelas | |
| File CSV features TIDAK diperlukan untuk inference/prediksi. | |
| ## π Dimana Meletakkan File | |
| ### Struktur Folder yang Benar: | |
| ``` | |
| project/ | |
| βββ python-api/ | |
| βββ app.py | |
| βββ requirements.txt | |
| βββ Dockerfile | |
| βββ README.md | |
| βββ models/ β Folder ini | |
| βββ svm_densenet201_rbf.joblib β Letakkan file JOBLIB di sini | |
| βββ metadata.json β Letakkan file JSON di sini | |
| ``` | |
| ### Langkah-Langkah: | |
| #### 1. Download File dari Google Drive | |
| Dari folder `Output_DenseNetSVM` di Google Drive Anda, download: | |
| - `svm_densenet201_rbf.joblib` | |
| - `metadata.json` | |
| #### 2. Copy ke Folder models/ | |
| **Cara Manual:** | |
| ``` | |
| 1. Buka folder project Anda | |
| 2. Masuk ke folder: python-api/models/ | |
| 3. Copy kedua file ke folder ini | |
| ``` | |
| **Via Terminal:** | |
| ```bash | |
| # Dari folder Downloads (atau dimana Anda download file) | |
| cp svm_densenet201_rbf.joblib /path/to/project/python-api/models/ | |
| cp metadata.json /path/to/project/python-api/models/ | |
| ``` | |
| **Via Google Colab (jika file masih di Drive):** | |
| ```python | |
| # Mount Google Drive | |
| from google.colab import drive | |
| drive.mount('/content/drive') | |
| # Copy files ke local download | |
| import shutil | |
| source_dir = "/content/drive/MyDrive/Output_DenseNetSVM" | |
| dest_dir = "/content/models" | |
| # Create folder | |
| !mkdir -p /content/models | |
| # Copy files | |
| shutil.copy(f"{source_dir}/svm_densenet201_rbf.joblib", | |
| f"{dest_dir}/svm_densenet201_rbf.joblib") | |
| shutil.copy(f"{source_dir}/metadata.json", | |
| f"{dest_dir}/metadata.json") | |
| # Download ke komputer | |
| from google.colab import files | |
| files.download('/content/models/svm_densenet201_rbf.joblib') | |
| files.download('/content/models/metadata.json') | |
| ``` | |
| #### 3. Verifikasi File Ada | |
| **Windows:** | |
| ```cmd | |
| dir python-api\models | |
| ``` | |
| **Mac/Linux:** | |
| ```bash | |
| ls -lh python-api/models/ | |
| ``` | |
| Anda harus melihat: | |
| ``` | |
| -rw-r--r-- 1 user staff 5.2M metadata.json | |
| -rw-r--r-- 1 user staff 353B svm_densenet201_rbf.joblib | |
| ``` | |
| ## π Cek Isi metadata.json | |
| Buka file `metadata.json` dan pastikan berisi: | |
| ```json | |
| { | |
| "class_names": ["3 Bulan", "6 Bulan", "9 Bulan"], | |
| "img_size": 224 | |
| } | |
| ``` | |
| **PENTING:** Nama kelas harus sama persis dengan yang Anda gunakan saat training! | |
| Jika `class_names` berbeda (misalnya dalam bahasa Inggris atau format lain), edit file ini sesuai dengan nama kelas asli Anda. | |
| ## π§ͺ Test Local (Opsional) | |
| Setelah file di tempat, test apakah model bisa diload: | |
| ```bash | |
| cd python-api | |
| # Install dependencies | |
| pip install -r requirements.txt | |
| # Run server | |
| python app.py | |
| ``` | |
| Jika berhasil, Anda akan melihat: | |
| ``` | |
| Using device: cpu | |
| β SVM model loaded successfully | |
| β Metadata loaded: ['3 Bulan', '6 Bulan', '9 Bulan'] | |
| * Running on http://0.0.0.0:5000 | |
| ``` | |
| ## β Jika Model Tidak Ditemukan | |
| Jika Anda melihat: | |
| ``` | |
| β Model file not found at models/svm_densenet201_rbf.joblib | |
| Using simulation mode until model is uploaded | |
| ``` | |
| **Checklist:** | |
| - [ ] File ada di folder `python-api/models/` | |
| - [ ] Nama file PERSIS: `svm_densenet201_rbf.joblib` (case sensitive!) | |
| - [ ] File tidak corrupt (coba download ulang jika perlu) | |
| - [ ] Folder structure benar (lihat diagram di atas) | |
| ## π Setelah File Siap | |
| Sekarang Anda siap untuk deploy! Lanjutkan ke: | |
| 1. Baca `README.md` untuk instruksi deployment | |
| 2. Atau baca `DEPLOYMENT_GUIDE.md` untuk panduan lengkap | |
| ## π‘ Tips | |
| 1. **Backup File Model**: Selalu simpan backup di Google Drive | |
| 2. **Version Control**: Jangan commit file model ke git (sudah ada di .gitignore) | |
| 3. **Update Model**: Untuk update model, cukup replace file dan restart server | |
| 4. **Metadata**: Jika mengubah kelas, update metadata.json | |
| ## π Troubleshooting | |
| ### File terlalu besar untuk upload | |
| - Gunakan Git LFS untuk file besar | |
| - Atau upload langsung ke platform deployment (Hugging Face support large files) | |
| ### Format file salah | |
| - Pastikan file dari `joblib.dump()`, bukan pickle | |
| - Versi scikit-learn harus kompatibel | |
| ### Permission denied | |
| - Check file permissions: `chmod 644 models/*.joblib` | |
| - Pastikan Anda punya akses ke folder | |