Instructions to use Code-Quasar/voxcpm-tn with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- VoxCPM
How to use Code-Quasar/voxcpm-tn with VoxCPM:
import soundfile as sf from voxcpm import VoxCPM model = VoxCPM.from_pretrained("Code-Quasar/voxcpm-tn") wav = model.generate( text="VoxCPM is an innovative end-to-end TTS model from ModelBest, designed to generate highly expressive speech.", prompt_wav_path=None, # optional: path to a prompt speech for voice cloning prompt_text=None, # optional: reference text cfg_value=2.0, # LM guidance on LocDiT, higher for better adherence to the prompt, but maybe worse inference_timesteps=10, # LocDiT inference timesteps, higher for better result, lower for fast speed normalize=True, # enable external TN tool denoise=True, # enable external Denoise tool retry_badcase=True, # enable retrying mode for some bad cases (unstoppable) retry_badcase_max_times=3, # maximum retrying times retry_badcase_ratio_threshold=6.0, # maximum length restriction for bad case detection (simple but effective), it could be adjusted for slow pace speech ) sf.write("output.wav", wav, 16000) print("saved: output.wav") - Notebooks
- Google Colab
- Kaggle
Upload README.md with huggingface_hub
Browse files
README.md
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
language: [ar]
|
| 3 |
+
license: apache-2.0
|
| 4 |
+
base_model: openbmb/VoxCPM2
|
| 5 |
+
pipeline_tag: text-to-speech
|
| 6 |
+
tags: [tunisian, derja, arabic-dialect, voxcpm, tts]
|
| 7 |
+
---
|
| 8 |
+
|
| 9 |
+
# Code-Quasar/voxcpm-tn
|
| 10 |
+
|
| 11 |
+
VoxCPM2 fine-tuned for **Tunisian Derja**.
|
| 12 |
+
|
| 13 |
+
- base: `openbmb/VoxCPM2` (2B, tokenizer-free, 48 kHz)
|
| 14 |
+
- method: full fine-tuning, 147 steps
|
| 15 |
+
- data: ~? h Tunisian read speech, 16 kHz mono
|
| 16 |
+
|
| 17 |
+
## Important: the dialect tag
|
| 18 |
+
|
| 19 |
+
Every training transcript was prefixed with `(Tunisian Dialect)`, so **untagged text is
|
| 20 |
+
out of distribution**. Always prefix it:
|
| 21 |
+
|
| 22 |
+
```python
|
| 23 |
+
from voxcpm import VoxCPM
|
| 24 |
+
|
| 25 |
+
model = VoxCPM.from_pretrained("Code-Quasar/voxcpm-tn", load_denoiser=False)
|
| 26 |
+
wav = model.generate(text="(Tunisian Dialect) عسلامة، شنوة أحوالك اليوم؟")
|
| 27 |
+
|
| 28 |
+
import soundfile as sf
|
| 29 |
+
sf.write("out.wav", wav, 48000)
|
| 30 |
+
```
|
| 31 |
+
|
| 32 |
+
On a GPU with under ~8 GB, disable compilation:
|
| 33 |
+
|
| 34 |
+
```python
|
| 35 |
+
import os
|
| 36 |
+
os.environ["TORCHDYNAMO_DISABLE"] = "1"
|
| 37 |
+
```
|
| 38 |
+
|
| 39 |
+
## Limitations
|
| 40 |
+
|
| 41 |
+
Trained on a small corpus of read speech, so expect limited prosodic range and
|
| 42 |
+
weaker long-form phrasing. Derived from source corpora with their own licence
|
| 43 |
+
terms; the voices belong to real speakers.
|