Spaces:
Running
on
Zero
Running
on
Zero
File size: 3,737 Bytes
ef08a8e 78c30f0 4aa23ee ef08a8e 78c30f0 ef08a8e 4aa23ee |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 |
---
title: Vocal Articulation Assessment v2
emoji: π€
colorFrom: purple
colorTo: pink
sdk: gradio
sdk_version: 5.0.0
app_file: app.py
pinned: false
license: mit
---
# π€ Sistem Penilaian Vokal Indonesia
Sistem penilaian artikulasi vokal bahasa Indonesia menggunakan deep learning dan audio signal processing.
## π Fitur
### Multi-Metric Assessment
1. **Clarity Score (40%)**: Kejelasan pengucapan berdasarkan model confidence
2. **Energy Score (25%)**: Kualitas volume dan energi suara
3. **Duration Score (15%)**: Kesesuaian durasi pengucapan
4. **Pitch Score (20%)**: Stabilitas pitch/nada suara
### Vokal yang Didukung
- **A** - Vokal terbuka depan
- **I** - Vokal tertutup depan
- **U** - Vokal tertutup belakang
- **E** - Vokal tengah depan
- **O** - Vokal tengah belakang
## π Cara Menggunakan
### Di HuggingFace Spaces
1. Upload atau record audio Anda
2. Pilih target vokal (A, I, U, E, O)
3. (Optional) Set expected duration
4. Klik "Nilai Pengucapan"
5. Lihat hasil penilaian dengan grade dan feedback
### Local Development
```bash
# Install dependencies
pip install -r requirements.txt
# Run Gradio App
python app.py
# Or run FastAPI server
python api.py
```
## π Sistem Penilaian
| Grade | Score Range | Keterangan |
| ----- | ----------- | -------------------------------------------------- |
| A | 90-100 | Sempurna - pengucapan sangat jelas dan akurat |
| B | 80-89 | Bagus - pengucapan cukup jelas dengan minor errors |
| C | 70-79 | Cukup - ada beberapa kesalahan |
| D | 60-69 | Kurang - banyak kesalahan |
| E | <60 | Perlu latihan lebih banyak |
## π§ Teknologi
- **Model**: HuBERT/Wav2Vec2 fine-tuned untuk klasifikasi vokal Indonesia
- **Backend**: FastAPI
- **Frontend**: Gradio
- **Audio Processing**: librosa, torchaudio
- **Deployment**: HuggingFace Spaces with ZeroGPU
## π Struktur Project
```
.
βββ app.py # Gradio interface (HF Spaces)
βββ api.py # FastAPI server
βββ scoring_system.py # Core scoring logic
βββ latihan_dasar.py # Advanced articulation system
βββ model_vokal/ # Model checkpoint
β βββ config.json
β βββ model.safetensors
β βββ preprocessor_config.json
βββ requirements.txt # Dependencies
βββ README.md # Documentation
```
## π― Roadmap
### Level 1: Pengenalan Vokal β
- A, I, U, E, O (Current)
### Level 2-5: Expansi (Coming Soon)
- Level 2: Konsonan Dasar (BA, PA, DA, TA, dll)
- Level 3: Kombinasi Suku Kata (BA-BE-BI-BO-BU, dll)
- Level 4: Kata Sulit (PSIKOLOGI, STRATEGI, dll)
- Level 5: Kalimat Kompleks
## π API Documentation
### FastAPI Endpoints
```bash
# Health check
GET /health
# Get supported labels
GET /labels
# Score single audio
POST /score
- audio: file (required)
- target_label: string (optional)
- expected_duration: float (optional)
# Batch scoring
POST /batch_score
- audios: files (required)
- target_labels: string (optional, comma-separated)
```
### Example cURL
```bash
curl -X POST "http://localhost:8000/score" \
-F "[email protected]" \
-F "target_label=a" \
-F "expected_duration=0.8"
```
## π€ Contributing
Contributions are welcome! Terutama untuk:
- Menambah dataset vokal
- Implementasi Level 2-5
- Optimasi model
- UI/UX improvements
## π License
MIT License
## π₯ Author
Dibuat untuk Latihan Dasar Artikulasi Vokal Indonesia
## π Acknowledgments
- Model base: HuBERT/Wav2Vec2
- Audio processing: librosa
- Framework: FastAPI & Gradio
- Deployment: HuggingFace Spaces
|