Spaces:
Running
on
Zero
Running
on
Zero
metadata
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
- Clarity Score (40%): Kejelasan pengucapan berdasarkan model confidence
- Energy Score (25%): Kualitas volume dan energi suara
- Duration Score (15%): Kesesuaian durasi pengucapan
- 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
- Upload atau record audio Anda
- Pilih target vokal (A, I, U, E, O)
- (Optional) Set expected duration
- Klik "Nilai Pengucapan"
- Lihat hasil penilaian dengan grade dan feedback
Local Development
# 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
# 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
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