Cong123779 commited on
Commit
54dac83
·
verified ·
1 Parent(s): bddc7c2

docs: update comprehensive Model Card linked with GitHub

Browse files
Files changed (1) hide show
  1. README.md +165 -0
README.md ADDED
@@ -0,0 +1,165 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language:
3
+ - vi
4
+ license: mit
5
+ tags:
6
+ - text-to-speech
7
+ - tts
8
+ - matcha-tts
9
+ - vocos
10
+ - flow-matching
11
+ - speech
12
+ - vietnamese
13
+ datasets:
14
+ - custom
15
+ metrics:
16
+ - rtf
17
+ pipeline_tag: text-to-speech
18
+ ---
19
+
20
+ # 🍵 Matcha-TTS & Vocos Tiếng Việt (22,050 Hz)
21
+
22
+ <p align="center">
23
+ <a href="https://github.com/congkx123789/Matchtts_VI"><img src="https://img.shields.io/badge/GitHub-Matchtts__VI-181717?style=for-the-badge&logo=github" alt="GitHub Repository"></a>
24
+ <a href="https://huggingface.co/Cong123779/Matchtts_VI"><img src="https://img.shields.io/badge/HuggingFace-Model%20Weights-FFD21E?style=for-the-badge&logo=huggingface&logoColor=black" alt="Hugging Face Model"></a>
25
+ <img src="https://img.shields.io/badge/Sample%20Rate-22.05kHz%20PCM--16-blue?style=for-the-badge" alt="Audio Quality">
26
+ <img src="https://img.shields.io/badge/Speed-Up%20to%2080x%20Realtime-brightgreen?style=for-the-badge" alt="Inference Speed">
27
+ </p>
28
+
29
+ Hệ thống tổng hợp giọng nói tiếng Việt tốc độ cao độc lập, kết hợp giữa mô hình **Matcha-TTS** nguyên bản (Conditional Flow Matching + RoPE Encoder) và **Vocos Neural Vocoder**.
30
+
31
+ - 🔗 **GitHub Repository:** [https://github.com/congkx123789/Matchtts_VI](https://github.com/congkx123789/Matchtts_VI)
32
+ - 🤗 **Hugging Face Model Weights:** [https://huggingface.co/Cong123779/Matchtts_VI](https://huggingface.co/Cong123779/Matchtts_VI)
33
+
34
+ ---
35
+
36
+ ## ⚡ Điểm Nổi Bật
37
+
38
+ - **Tốc độ cực nhanh (Fast Inference):** Đạt từ **30x – 80x Real-time** (chỉ mất ~97ms trên CPU với `steps=1` và ~260ms với `steps=10`).
39
+ - **Phát âm chuẩn tiếng Việt:** Tích hợp bộ chuẩn hóa chữ số, ngày tháng, thời gian, đơn vị đo lường và ngữ cảnh đặc thù ([`vietnamese_text_normalizer.py`](https://github.com/congkx123789/Matchtts_VI/blob/main/vietnamese_text_normalizer.py)).
40
+ - **Xử lý ký tự đặc biệt & ngoại lai:** Bộ lọc và phiên âm ký tự lạ ([`foreign_symbols_translator.py`](https://github.com/congkx123789/Matchtts_VI/blob/main/foreign_symbols_translator.py)).
41
+ - **Âm thanh trung thực:** Tần số lấy mẫu **22,050 Hz (PCM-16)**, âm sắc rõ ràng và tròn vành rõ chữ.
42
+ - **Tùy biến ngắt nghỉ:** Hỗ trợ điều chỉnh độ trễ ngắt nghỉ qua file cấu hình hoặc Giao diện Web trực quan.
43
+
44
+ ---
45
+
46
+ ## 📁 Cấu Trúc Dự Án
47
+
48
+ ```text
49
+ Matchtts_VI/
50
+ ├── checkpoints/ # Thư mục lưu trữ trọng số mô hình (.pt, .ckpt)
51
+ │ ├── matcha_epoch10_clean.pt # Checkpoint Matcha-TTS (CFM)
52
+ │ └── vocos_tri_dataset_epoch05.ckpt # Checkpoint Vocos Vocoder
53
+ ├── matcha/ # Kiến trúc mạng cốt lõi Matcha-TTS
54
+ ├── vocos/ # Kiến trúc mạng Vocos Neural Vocoder
55
+ ├── dataset_pipeline.py # Pipeline nạp và xử lý tập dữ liệu âm thanh
56
+ ├── export_clean_tts_manifest.py # Script xuất manifest dữ liệu huấn luyện
57
+ ├── foreign_symbols_translator.py # Xử lý phiên âm ký tự đặc biệt & từ ngoại lai
58
+ ├── infer.py # Script CLI tổng hợp giọng nói (Inference)
59
+ ├── load_model.py # Module nạp trọn bộ mô hình lên GPU/CPU
60
+ ├── pause_config.json # Cấu hình thời gian ngắt nghỉ (dấu phẩy, chấm,...)
61
+ ├── pause_control_web.py # Dashboard Web trực quan điều khiển ngắt nghỉ
62
+ ├── train_full_22050.py # Pipeline huấn luyện Matcha-TTS 22.05kHz
63
+ ├── train_vocos_the_gioi_hoan_my.py # Script huấn luyện / tinh chỉnh Vocos Vocoder
64
+ ├── vietnamese_text_normalizer.py # Bộ chuẩn hóa văn bản tiếng Việt
65
+ ├── .env.example # Mẫu cấu hình Hugging Face token
66
+ └── README.md # Tài liệu hướng dẫn sử dụng
67
+ ```
68
+
69
+ ---
70
+
71
+ ## 🛠️ Cài Đặt Môi Trường
72
+
73
+ Khuyến nghị sử dụng Python 3.10+:
74
+
75
+ ```bash
76
+ # 1. Clone repository
77
+ git clone https://github.com/congkx123789/Matchtts_VI.git
78
+ cd Matchtts_VI
79
+
80
+ # 2. Cài đặt các thư viện cần thiết
81
+ pip install torch torchaudio soundfile omegaconf diffusers numpy scipy huggingface_hub
82
+ ```
83
+
84
+ ---
85
+
86
+ ## 📥 Tải Checkpoints Từ Hugging Face
87
+
88
+ Bạn có thể tự động tải toàn bộ trọng số mô hình từ Hugging Face Hub vào thư mục `checkpoints/`:
89
+
90
+ ```python
91
+ from huggingface_hub import hf_hub_download
92
+ import os
93
+
94
+ repo_id = "Cong123779/Matchtts_VI"
95
+ os.makedirs("checkpoints", exist_ok=True)
96
+
97
+ # Tải Matcha-TTS checkpoint
98
+ hf_hub_download(repo_id=repo_id, filename="checkpoints/matcha_epoch10_clean.pt", local_dir=".")
99
+
100
+ # Tải Vocos checkpoint
101
+ hf_hub_download(repo_id=repo_id, filename="checkpoints/vocos_tri_dataset_epoch05.ckpt", local_dir=".")
102
+ ```
103
+
104
+ Hoặc tải nhanh bằng CLI:
105
+ ```bash
106
+ huggingface-cli download Cong123779/Matchtts_VI --local-dir .
107
+ ```
108
+
109
+ ---
110
+
111
+ ## 🚀 Hướng Dẫn Sử Dụng
112
+
113
+ ### 1. Tổng Hợp Giọng Nói (CLI Inference)
114
+
115
+ Chạy lệnh tổng hợp âm thanh:
116
+
117
+ ```bash
118
+ python3 infer.py --text "Xin chào, đây là giọng đọc tiếng Việt từ mô hình Matcha-TTS." --out "output.wav"
119
+ ```
120
+
121
+ #### Bảng tham số:
122
+ | Tham số | Ý nghĩa | Mặc định | Gợi ý sử dụng |
123
+ |---|---|:---:|---|
124
+ | `--text` | Đoạn văn bản tiếng Việt cần đọc | - | Nhập câu bất kỳ |
125
+ | `--out` | Đường dẫn file wav đầu ra | `output_demo.wav` | File `.wav` |
126
+ | `--steps` | Số bước giải ODE (ODE Solver steps) | `10` | `1` (cực nhanh), `10` (chuẩn), `25` (chất lượng cao) |
127
+ | `--temp` | Nhiệt độ lấy mẫu (Temperature) | `0.667` | Khoảng `0.5` - `0.8` |
128
+ | `--speed` | Tốc độ đọc | `1.0` | `< 1.0` (chậm hơn), `> 1.0` (nhanh hơn) |
129
+
130
+ **Ví dụ chạy siêu tốc với 1 step (Real-time > 80x trên CPU):**
131
+ ```bash
132
+ python3 infer.py --text "Matcha-TTS xử lý câu dài cực kỳ nhanh chóng." --steps 1 --out "fast.wav"
133
+ ```
134
+
135
+ ---
136
+
137
+ ### 2. Giao Diện Web Điều Chỉnh Ngắt Nghỉ (Web UI)
138
+
139
+ Khởi động giao diện điều khiển ngắt nghỉ âm thanh theo từng dấu câu:
140
+
141
+ ```bash
142
+ python3 pause_control_web.py
143
+ ```
144
+ Mở trình duyệt truy cập vào địa chỉ hiển thị trên terminal để tinh chỉnh chi tiết độ dài ngắt nghỉ.
145
+
146
+ ---
147
+
148
+ ### 3. Huấn Luyện & Tinh Chỉnh (Training)
149
+
150
+ - **Huấn luyện Matcha-TTS (22.05kHz):**
151
+ ```bash
152
+ python3 train_full_22050.py
153
+ ```
154
+ - **Huấn luyện Vocos Vocoder:**
155
+ ```bash
156
+ python3 train_vocos_the_gioi_hoan_my.py
157
+ ```
158
+
159
+ ---
160
+
161
+ ## 📜 Giấy Phép & Đóng Góp
162
+
163
+ - **Mã nguồn:** [MIT License](https://github.com/congkx123789/Matchtts_VI/blob/main/LICENSE)
164
+ - **Mô hình pre-trained:** Tự do nghiên cứu và sử dụng phi thương mại / thương mại có ghi nguồn tác giả.
165
+ - Mọi đóng góp (pull request, issue) đều được hoan nghênh trên [GitHub Repository](https://github.com/congkx123789/Matchtts_VI)!