Spaces:
Sleeping
Sleeping
metadata
title: Wellness Activity Recommendation API
emoji: π§ββοΈ
colorFrom: indigo
colorTo: purple
sdk: docker
sdk_version: latest
app_file: app.py
pinned: false
Health & Wellness Activity Recommendation API
API untuk prediksi rekomendasi aktivitas wellness berdasarkan profil pengguna menggunakan Random Forest Classifier.
Deskripsi Model
Model ini memprediksi aktivitas wellness favorit pengguna berdasarkan karakteristik berikut:
- Umur: Usia pengguna (angka)
- Jenis Kelamin: "Laki-laki" atau "Perempuan"
- Kota: Kota asal pengguna
- Frekuensi: Frekuensi aktivitas ("Sekali sebulan", "Setiap tahun", dll.)
- Anggaran/Kunjungan (IDR): Budget per kunjungan dalam Rupiah
- Kemauan Bepergian: "Domestik", "Regional", atau "Internasional"
- Metode Pemesanan: Cara booking yang disukai
- Tujuan Utama: Tujuan utama wellness
- Yang Dicari: Aspek yang dicari dari aktivitas wellness
Target Prediksi
Model dapat memprediksi 6 jenis aktivitas wellness:
- Pemandian Air Panas
- Pijat Terapi
- Retret Kesehatan
- Retret Yoga
- Spa
- Terapi Herbal
API Endpoints
1. Home - GET /
Menampilkan informasi dasar API.
2. Health Check - GET /health
Mengecek status kesehatan API dan model.
3. Model Info - GET /model_info
Menampilkan informasi tentang model dan fitur yang digunakan.
4. Single Prediction - POST /predict
Request Body:
{
"Umur": 35,
"Jenis Kelamin": "Laki-laki",
"Kota": "Bandung",
"Frekuensi": "Setiap tiga bulan",
"Anggaran/Kunjungan (IDR)": 1500000,
"Kemauan Bepergian": "Domestik",
"Metode Pemesanan": "Website",
"Tujuan Utama": "Relaksasi",
"Yang Dicari": "Relaksasi"
}
Response:
{
"all_probabilities": {
"Pemandian Air Panas": 0.2359067587323272,
"Pijat Terapi": 0.7094768120137803,
"Retret Kesehatan": 0.0,
"Retret Yoga": 0.0007123315432161314,
"Spa": 0.0539040977106761,
"Terapi Herbal": 0.0
},
"confidence": 0.7094768120137803,
"input_data": {
"Anggaran/Kunjungan (IDR)": 1500000,
"Frekuensi": "Setiap tiga bulan",
"Jenis Kelamin": "Laki-laki",
"Kemauan Bepergian": "Domestik",
"Kota": "Bandung",
"Metode Pemesanan": "Website",
"Tujuan Utama": "Relaksasi",
"Umur": 35,
"Yang Dicari": "Relaksasi"
},
"prediction": "Pijat Terapi"
}
Testing dengan Postman
Base URL:
https://your-space-name-your-username.hf.space
Dalam kasus ini, dapat menggunakan:https://rifatmon-rfc-infinitelearning.hf.spacesebagai {base_url}Test Health Check:
- Method: GET
- URL:
{base_url}/health
Test Single Prediction:
- Method: POST
- URL:
{base_url}/predict - Headers:
Content-Type: application/json - Body: JSON data contoh di atas
Local Development
Menjalankan Lokal
# Install dependencies
pip install -r requirements.txt
# Copy dataset ke folder Deployment
cp ../dataset_user_2.csv .
# Jalankan aplikasi
python app.py
API akan berjalan di http://localhost:7860
Contoh Input pada JSON Body saat melakukan request
Jenis Kelamin
- "Laki-laki"
- "Perempuan"
Kota
- "Jakarta"
- "Bali"
- "Yogyakarta"
- "Surabaya"
- "Bandung"
- Dan kota lainnya
Frekuensi
- "Sekali sebulan"
- "Setiap tahun"
- "Setiap tiga bulan"
- "Dua kali setahun"
- "Sekali setiap 2 bulan"
Kemauan Bepergian
- "Domestik"
- "Regional"
- "Internasional"
Metode Pemesanan
- "Aplikasi Seluler"
- "Pemesanan Email"
- "Media Sosial"
- "Website"
- "Telepon"
Tujuan Utama
- "Relaksasi"
- "Kesehatan"
- "Spiritual"
- "Kecantikan"
- "Detoks"
Yang Dicari
- "Kecantikan"
- "Kesehatan"
- "Relaksasi"
- "Spiritual"
- "Detoks"