Ứng dụng web chuyển đổi giọng nói tiếng Anh thành văn bản và dịch sang tiếng Việt, sử dụng Whisper AI và Google Translator.
Tác giả: tanbaycu

- Nhận dạng giọng nói tiếng Anh với độ chính xác cao (Whisper AI)
- Dịch tự động sang tiếng Việt (Google Translator)
- Hỗ trợ nhiều định dạng: MP3, WAV, M4A, MP4, AAC, FLAC, OGG (tối đa 100MB)
- Đồng bộ âm thanh với văn bản khi phát lại
- Tải xuống kết quả dưới dạng file TXT
- Quản lý phiên với URL riêng cho mỗi lần dịch
- Giao diện responsive, hỗ trợ dark mode
- Xử lý nhanh với GPU acceleration (tùy chọn)
- Retry thông minh không cần upload lại
- Python 3.10+
- RAM: Tối thiểu 4GB (khuyến nghị 8GB+)
- Ổ cứng: 2GB trống cho model
- GPU NVIDIA với CUDA (tùy chọn, để tăng tốc)
- Clone repository:
git clone https://github.com/tanbaycu/voiceflow.git
cd voiceflow- Cài đặt dependencies:
pip install -r requirements.txt- Khởi chạy ứng dụng:
python app.py --web- Truy cập:
http://127.0.0.1:5000
- Chọn file âm thanh (nhấn nút hoặc kéo thả)
- Hệ thống tự động xử lý và hiển thị kết quả
- Nghe lại audio với tính năng highlight từ đang phát
- Nhấn "Dịch ngay" để chuyển sang tiếng Việt
- Copy hoặc download kết quả
Xử lý file đơn giản:
python app.py input.mp3Với tùy chọn nâng cao:
python app.py input.mp3 --model medium --device cuda --out-en english.txt --out-vi vietnamese.txtCác tùy chọn:
--model: Kích thước model (tiny, base, small, medium, large) - mặc định: small--device: Thiết bị xử lý (cpu, cuda) - mặc định: cpu--out-en: File output tiếng Anh--out-vi: File output tiếng Việt--web: Khởi chạy web server
GET /- Giao diện chínhGET /<session_id>- Truy cập phiên cụ thể
POST /upload- Upload và nhận dạng filePOST /translate- Dịch văn bảnPOST /retry- Thử lại xử lýGET /api/session/<session_id>- Lấy thông tin phiênGET /uploads/<filename>- Download file audioGET /outputs/<filename>- Download file văn bản
voiceflow/
├── app.py # File chính
├── requirements.txt # Dependencies
├── README.md # Tài liệu
├── index.html # Hướng dẫn (GitHub Pages)
├── templates/
│ └── index.html # Template web
├── uploads/ # File âm thanh (tự động tạo)
├── outputs/ # File văn bản (tự động tạo)
└── sessions/ # Session data (tự động tạo)- Backend: Flask 3.0+
- AI/ML: Whisper AI (faster-whisper), Google Translator (deep-translator)
- Frontend: HTML5, CSS3, JavaScript, Tailwind CSS, Lucide Icons
- Processing: PyTorch, NumPy
Tùy chỉnh qua biến môi trường:
| Biến | Mô Tả | Mặc Định |
|---|---|---|
WHISPER_MODEL |
Kích thước model | small |
MAX_CONTENT_LENGTH_MB |
Kích thước file tối đa (MB) | 100 |
PORT |
Cổng server | 5000 |
HOST |
Địa chỉ host | 127.0.0.1 |
Ví dụ:
export WHISPER_MODEL=medium
export MAX_CONTENT_LENGTH_MB=200
python app.py --web
Tăng tốc độ:
- Sử dụng GPU với
--device cuda - Chọn model nhỏ hơn (tiny, base)
Cải thiện độ chính xác:
- Sử dụng file âm thanh chất lượng cao, ít nhiễu
- Giọng nói rõ ràng
- Sử dụng model lớn hơn (medium, large)
Quản lý session:
- Mỗi session có URL riêng (ví dụ:
/abc123) - Bookmark URL để quay lại sau
- Sử dụng "Thử lại" để xử lý lại mà không cần upload lại
- Chạy hoàn toàn local, không gửi dữ liệu ra ngoài
- Không thu thập dữ liệu người dùng
- File được lưu cục bộ trên máy
- Bạn có toàn quyền quản lý và xóa dữ liệu
Mọi đóng góp đều được hoan nghênh! Vui lòng tạo issue hoặc pull request trên GitHub.
- GitHub: @tanbaycu
- Issues: GitHub Issues
- Live Preview: voiceFlow
Phát triển bởi tanbaycu