Đồ án Nhập môn Học máy - Trường ĐH Khoa học Tự nhiên, ĐHQG TP.HCM
Ứng dụng web chuyển đổi giọng nói tiếng Việt thành văn bản sử dụng 3 mô hình AI:
| Mô hình | WER | Mô tả |
|---|---|---|
| Wav2Vec2 | 11.28% | Mô hình nhẹ, nhanh - Fine-tuned trên VIVOS |
| PhoWhisper | 32.89% | Tối ưu cho tiếng Việt bởi VinAI |
| OpenAI Whisper | ~85% | Mô hình đa ngôn ngữ (zero-shot) |
git clone https://github.com/DuyHieu251005/NMHM_SpeechToText.git
cd NMHM_SpeechToText/app
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
pip install -r requirements.txt
Lưu ý: Package
imageio-ffmpegsẽ tự động cài đặt FFmpeg bundled, không cần cài FFmpeg thủ công!
python app.py
Mở trình duyệt và truy cập: http://localhost:5000
| Yêu cầu | Tối thiểu | Khuyến nghị |
|---|---|---|
| Python | 3.8+ | 3.10 hoặc 3.11 |
| RAM | 8GB | 16GB |
| GPU | Không bắt buộc | NVIDIA với CUDA |
| Dung lượng | ~5GB | ~10GB |
Không bắt buộc! Ứng dụng đã sử dụng
imageio-ffmpegđể xử lý audio tự động.
Nếu muốn cài đặt FFmpeg hệ thống để hỗ trợ thêm:
winget install --id Gyan.FFmpeg -e --source winget
sudo apt update && sudo apt install ffmpeg
brew install ffmpeg
Nếu bạn có GPU NVIDIA và muốn tăng tốc inference:
pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu118
| Lỗi | Nguyên nhân | Giải pháp |
|---|---|---|
CUDA out of memory | GPU không đủ VRAM | Set device = "cpu" trong app.py |
No module named 'xxx' | Thiếu thư viện | pip install -r requirements.txt |
| Microphone không hoạt động | Trình duyệt chưa cấp quyền | Nhấn 🔒 trên thanh địa chỉ → Cho phép Microphone |
Model loading error | Thiếu bộ nhớ | Đóng các ứng dụng khác, tăng RAM |
NMHM_SpeechToText/
├── app/
│ ├── app.py # Flask backend
│ ├── requirements.txt # Dependencies
│ └── templates/
│ └── index.html # Giao diện web
├── Wav2Vec2/
│ ├── checkpoint-3645/ # Model fine-tuned (WER 11.28%)
│ └── *.py # Scripts training/evaluation
├── PhoWhisper/
│ ├── phowhisper-finetuned-local/ # LoRA adapters
│ └── *.py # Scripts training/evaluation
├── Whisper/
│ └── *.csv # Kết quả đánh giá
├── report_final/ # Báo cáo LaTeX
└── README.md
| Method | Endpoint | Mô tả |
|---|---|---|
| GET | / | Trang chủ |
| POST | /transcribe | Chuyển đổi audio → văn bản |
| GET | /health | Kiểm tra trạng thái server |
| Họ tên | MSSV |
|---|---|
| Đặng Anh Kiệt | 23127077 |
| Phạm Minh Triết | 23127132 |
| Trần Quang Phúc | 23127302 |
| Kiều Duy Hiếu | 23127365 |
GVHD: Bùi Tiến Lên, Lê Nhựt Nam, Võ Nhật Tân
MIT License
Đồ án Nhập môn Học máy - Trường ĐH Khoa học Tự nhiên, ĐHQG TP.HCM
Ứng dụng web chuyển đổi giọng nói tiếng Việt thành văn bản sử dụng 3 mô hình AI:
| Mô hình | WER | Mô tả |
|---|---|---|
| Wav2Vec2 | 11.28% | Mô hình nhẹ, nhanh - Fine-tuned trên VIVOS |
| PhoWhisper | 32.89% | Tối ưu cho tiếng Việt bởi VinAI |
| OpenAI Whisper | ~85% | Mô hình đa ngôn ngữ (zero-shot) |
git clone https://github.com/DuyHieu251005/NMHM_SpeechToText.git
cd NMHM_SpeechToText/app
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
pip install -r requirements.txt
Lưu ý: Package
imageio-ffmpegsẽ tự động cài đặt FFmpeg bundled, không cần cài FFmpeg thủ công!
python app.py
Mở trình duyệt và truy cập: http://localhost:5000
| Yêu cầu | Tối thiểu | Khuyến nghị |
|---|---|---|
| Python | 3.8+ | 3.10 hoặc 3.11 |
| RAM | 8GB | 16GB |
| GPU | Không bắt buộc | NVIDIA với CUDA |
| Dung lượng | ~5GB | ~10GB |
Không bắt buộc! Ứng dụng đã sử dụng
imageio-ffmpegđể xử lý audio tự động.
Nếu muốn cài đặt FFmpeg hệ thống để hỗ trợ thêm:
winget install --id Gyan.FFmpeg -e --source winget
sudo apt update && sudo apt install ffmpeg
brew install ffmpeg
Nếu bạn có GPU NVIDIA và muốn tăng tốc inference:
pip install torch torchaudio --index-url https://download.pytorch.org/whl/cu118
| Lỗi | Nguyên nhân | Giải pháp |
|---|---|---|
CUDA out of memory | GPU không đủ VRAM | Set device = "cpu" trong app.py |
No module named 'xxx' | Thiếu thư viện | pip install -r requirements.txt |
| Microphone không hoạt động | Trình duyệt chưa cấp quyền | Nhấn 🔒 trên thanh địa chỉ → Cho phép Microphone |
Model loading error | Thiếu bộ nhớ | Đóng các ứng dụng khác, tăng RAM |
NMHM_SpeechToText/
├── app/
│ ├── app.py # Flask backend
│ ├── requirements.txt # Dependencies
│ └── templates/
│ └── index.html # Giao diện web
├── Wav2Vec2/
│ ├── checkpoint-3645/ # Model fine-tuned (WER 11.28%)
│ └── *.py # Scripts training/evaluation
├── PhoWhisper/
│ ├── phowhisper-finetuned-local/ # LoRA adapters
│ └── *.py # Scripts training/evaluation
├── Whisper/
│ └── *.csv # Kết quả đánh giá
├── report_final/ # Báo cáo LaTeX
└── README.md
| Method | Endpoint | Mô tả |
|---|---|---|
| GET | / | Trang chủ |
| POST | /transcribe | Chuyển đổi audio → văn bản |
| GET | /health | Kiểm tra trạng thái server |
| Họ tên | MSSV |
|---|---|
| Đặng Anh Kiệt | 23127077 |
| Phạm Minh Triết | 23127132 |
| Trần Quang Phúc | 23127302 |
| Kiều Duy Hiếu | 23127365 |
GVHD: Bùi Tiến Lên, Lê Nhựt Nam, Võ Nhật Tân
MIT License