Skip to content
This repository was archived by the owner on Mar 21, 2026. It is now read-only.
pnnbao97Public archive

Repository files navigation

😻 Kani TTS Vie

GitHub Hugging Face

s83RYjg6BCrSPTNNXMu4u

Mô hình chuyển văn bản thành giọng nói tiếng Việt nhanh, rõ ràng và giàu biểu cảm, với điểm mạnh là inference cực nhanh và streaming mượt mà, xây dựng trên nền tảng Kani 370M. Kho lưu trữ này hỗ trợ cả script chạy cục bộ và các demo UI/API đi kèm với bản phát hành pnnbao-ump/kani-tts-370m-vie trên Hugging Face.

Điểm nổi bật

  • 🚀 Inference nhanh – khoảng 3 giây cho đoạn văn ngắn trên GPU đơn, hệ số thời gian thực ~0.1–0.3×.
  • 🎭 Đa giọng – 18 giọng đọc, bao gồm Tiếng Việt, Tiếng Anh, Hàn, Đức, Tây Ban Nha, Trung và Ả Rập. Lưu ý: bạn vẫn có thể dùng các giọng nước ngoài để đọc văn bản tiếng Việt.
  • 📓 Notebooks đi kèm – Hướng dẫn chi tiết inference, chuẩn bị dataset, và fine-tuning LoRA trong thư mục finetune/.

💝 Ủng hộ dự án

Kani TTS Vie là dự án mã nguồn mở hoàn toàn miễn phí. Tuy nhiên, việc fine-tuning mô hình TTS trên 500+ giờ dữ liệu đa vùng miền đòi hỏi chi phí GPU rất lớn.

Nếu dự án này hữu ích cho bạn, hãy cân nhắc ủng hộ để tiếp tục phát triển:

Buy Me a Coffee

Sự đóng góp của bạn sẽ giúp:

  • 💰 Trang trải chi phí GPU: Training model trên hàng trăm giờ dữ liệu tốn hàng nghìn USD
  • 🚀 Phát triển tính năng mới: Voice cloning, emotion control, speaking style
  • 📊 Mở rộng dataset: Thu thập thêm giọng đọc đa dạng (Bắc, Trung, Nam)
  • 🎯 Nâng cao chất lượng: Cải thiện độ tự nhiên và rõ ràng của giọng đọc
  • 🌍 Duy trì dự án: Cập nhật model, sửa lỗi, hỗ trợ cộng đồng

Mỗi đóng góp, dù nhỏ, đều có ý nghĩa rất lớn với dự án!
Cảm ơn bạn đã tin tưởng và ủng hộ! 🙏


Giọng đọc hỗ trợ

Nghe mẫu sample tại đây: https://huggingface.co/pnnbao-ump/kani-tts-370m-vie

Ngôn ngữ          Giọng đọc                                                                         
Tiếng Việt        Khoa (Nam Bắc), Hùng (Nam Nam), Trinh (Nữ Nam)                                     
Tiếng Anh          David (British), Puck (Gemini), Kore (Gemini), Andrew, Jenny (Irish), Simon, Katie
Tiếng Hàn          Seulgi                                                                             
Tiếng Đức          Bert, Thorsten (Hessisch)                                                         
Tiếng Tây Ban Nha Maria                                                                             
Tiếng Trung        Mei (Cantonese), Ming (Shanghai)                                                   
Tiếng Ả Rập        Karim, Nur                                                                         

Yêu cầu cài đặt

  1. Python 3.12
  2. GPU
    • VRAM: Cần tối thiểu 2 GB VRAM để inference (sinh giọng nói) được mượt mà và ổn định.
    • Driver & CUDA: Cần có Driver GPU và CUDA Toolkit tương thích với phiên bản PyTorch đang được sử dụng.
  3. Hệ điều hành
  4. ffmpeg

Cài đặt dependencies:

# Dùng uv (khuyến nghị)
uv sync

Cách sử dụng

⚠️ Lưu ý quan trọng: Văn bản đầu vào nên ngắn hơn 250 ký tự. Nếu dài hơn, quá trình inference có thể cho kết quả sai hoặc không ổn định. Gradio demo đã giới hạn sẵn, nhưng khi gọi API hoặc script riêng bạn cũng nên tuân thủ giới hạn này.

Local Installation

Đây là cách thiết lập môi trường cục bộ, khuyến nghị sử dụng uv để cài đặt và chạy:

# Clone repository
git clone https://github.com/pnnbao97/Kani-TTS-Vie
cd Kani-TTS-Vie

# Cài đặt dependencies (Sử dụng uv)
uv sync

# Chạy ứng dụng
uv run uvicorn server:app

Notebooks

  • finetune/prepare_dataset.ipynb – Chuẩn bị dữ liệu để tinh chỉnh (fine-tuning) giọng tùy chỉnh.
  • finetune/kani-tts-vi-finetune.ipynb – Code tinh chỉnh LoRA cho mô hình Kani TTS Vie.

Mở chúng bằng môi trường Jupyter sau khi kích hoạt virtual environment.

Gradio Demo

Screen.Recording.2025-11-11.202419.mp4

Nếu muốn thử nhanh giao diện web đơn giản, bạn có thể chạy ứng dụng Gradio đi kèm:

uv run python gradio_app.py

Ứng dụng sẽ khởi động tại http://0.0.0.0:7860 (hoặc cổng được cấu hình qua biến môi trường PORT). Chọn giọng đọc, nhập văn bản và bấm "🎵 Tạo giọng nói" để nghe kết quả.

Đóng góp

Chào đón mọi đóng góp!

  1. Fork repository.
  2. Tạo branch mới cho tính năng.
  3. Chạy lint/tests liên quan.
  4. Mở pull request mô tả cải tiến.

Giấy phép

Dự án này phát hành theo Apache License 2.0. Kiểm tra giấy phép các mô hình/dataset bên thứ ba trước khi phân phối lại.

Releases

Packages

Contributors

Languages