UNRN
/

Text-to-Speech
Spanish
coqui
marianbasti commited on
Commit
1b881b4
0 Parent(s):

Duplicate from marianbasti/XTTS-v2-argentinian-spanish

Browse files
Files changed (6) hide show
  1. .gitattributes +35 -0
  2. LICENSE +84 -0
  3. README.md +69 -0
  4. config.json +204 -0
  5. model.pth +3 -0
  6. vocab.json +0 -0
.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
LICENSE ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Coqui Public Model License 1.0.0
2
+ https://coqui.ai/cpml.txt
3
+
4
+
5
+ This license allows only non-commercial use of a machine learning model and its outputs.
6
+
7
+
8
+ ## Acceptance
9
+
10
+
11
+ In order to get any license under these terms, you must agree to them as both strict obligations and conditions to all your licenses.
12
+
13
+
14
+ ## Licenses
15
+
16
+
17
+ The licensor grants you a copyright license to do everything you might do with the model that would otherwise infringe the licensor's copyright in it, for any non-commercial purpose. The licensor grants you a patent license that covers patent claims the licensor can license, or becomes able to license, that you would infringe by using the model in the form provided by
18
+ the licensor, for any non-commercial purpose.
19
+
20
+
21
+ ## Non-commercial Purpose
22
+
23
+
24
+ Non-commercial purposes include any of the following uses of the model or its output, but only so far as you do not receive any direct or indirect payment arising from the use of the model or its output.
25
+
26
+
27
+ ### Personal use for research, experiment, and testing for the benefit of public knowledge, personal study, private entertainment, hobby projects, amateur pursuits, or religious
28
+ observance.
29
+
30
+
31
+ ### Use by commercial or for-profit entities for testing, evaluation, or non-commercial research and development. Use of the model to train other models for commercial use is not a non-commercial purpose.
32
+
33
+
34
+ ### Use by any charitable organization for charitable purposes, or for testing or evaluation. Use for revenue-generating activity, including projects directly funded by government grants, is not a non-commercial purpose.
35
+
36
+
37
+ ## Notices
38
+
39
+
40
+ You must ensure that anyone who gets a copy of any part of the model, or any modification of the model, or their output, from you also gets a copy of these terms or the URL for them above.
41
+
42
+
43
+ ## No Other Rights
44
+
45
+
46
+ These terms do not allow you to sublicense or transfer any of your licenses to anyone else, or prevent the licensor from granting licenses to anyone else. These terms do not imply
47
+ any other licenses.
48
+
49
+
50
+ ## Patent Defense
51
+
52
+
53
+ If you make any written claim that the model infringes or contributes to infringement of any patent, your licenses for the model granted under these terms ends immediately. If your company makes such a claim, your patent license ends immediately for work on behalf of your company.
54
+
55
+
56
+ ## Violations
57
+
58
+
59
+ The first time you are notified in writing that you have violated any of these terms, or done anything with the model or its output that is not covered by your licenses, your licenses can nonetheless continue if you come into full compliance with these terms, and take practical steps to correct past violations, within 30 days of receiving notice. Otherwise, all your licenses
60
+ end immediately.
61
+
62
+
63
+ ## No Liability
64
+
65
+
66
+ ***As far as the law allows, the model and its output come as is, without any warranty or condition, and the licensor will not be liable to you for any damages arising out of these terms or the use or nature of the model or its output, under any kind of legal claim. If this provision is not enforceable in your jurisdiction, your licenses are void.***
67
+
68
+
69
+ ## Definitions
70
+
71
+
72
+ The **licensor** is the individual or entity offering these terms, and the **model** is the model the licensor makes available under these terms, including any documentation or similar information about the model.
73
+
74
+
75
+ **You** refers to the individual or entity agreeing to these terms.
76
+
77
+
78
+ **Your company** is any legal entity, sole proprietorship, or other kind of organization that you work for, plus all organizations that have control over, are under the control of, or are under common control with that organization. **Control** means ownership of substantially all the assets of an entity, or the power to direct its management and policies by vote, contract, or otherwise. Control can be direct or indirect.
79
+
80
+
81
+ **Your licenses** are all the licenses granted to you under these terms.
82
+
83
+
84
+ **Use** means anything you do with the model or its output requiring one of your licenses.
README.md ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: other
3
+ license_name: coqui-public-model-license
4
+ license_link: https://coqui.ai/cpml
5
+ library_name: coqui
6
+ pipeline_tag: text-to-speech
7
+ datasets:
8
+ - ylacombe/google-argentinian-spanish
9
+ language:
10
+ - es
11
+ ---
12
+ # ⓍTTS 🇦🇷
13
+ ⓍTTS is a Voice generation model that lets you clone voices into different languages by using just a quick 6-second audio clip. There is no need for an excessive amount of training data that spans countless hours.
14
+
15
+ This model was trained by IdeaLab in [CITECCA](https://mapatecnologico.rionegro.gov.ar/detail/citecca-centro-interdisciplinario-de-telecomunicaciones-electronica-computacion-y-ciencia-aplicada-unrn), in the [Universidad Nacional de Rio Negro](https://www.unrn.edu.ar/home)
16
+
17
+ ### Language
18
+ This model's Spanish language has been finetuned using [ylacombe's google argentinian spanish dataset](https://huggingface.co/datasets/ylacombe/google-argentinian-spanish) to archieve an argentinian accent.
19
+
20
+ ### Training Parameters
21
+
22
+ ```
23
+ batch_size=8,
24
+ grad_accum_steps=96,
25
+ batch_group_size=48,
26
+ eval_batch_size=8,
27
+ num_loader_workers=8,
28
+ eval_split_max_size=256,
29
+ optimizer="AdamW",
30
+ optimizer_wd_only_on_weights=True,
31
+ optimizer_params={"betas": [0.9, 0.96], "eps": 1e-8, "weight_decay": 1e-2},
32
+ lr=5e-06,
33
+ lr_scheduler="MultiStepLR",
34
+ lr_scheduler_params={"milestones": [50000 * 18, 150000 * 18, 300000 * 18], "gamma": 0.5, "last_epoch": -1},
35
+ ```
36
+
37
+ ### License
38
+ This model is licensed under [Coqui Public Model License](https://coqui.ai/cpml). There's a lot that goes into a license for generative models, and you can read more of [the origin story of CPML here](https://coqui.ai/blog/tts/cpml).
39
+
40
+ Using 🐸TTS Command line:
41
+
42
+ ```console
43
+ tts --model_name /path/to/xtts/ \
44
+ --text "Che boludo, vamos a tomar unos mates." \
45
+ --speaker_wav /path/to/target/speaker.wav \
46
+ --language_idx es \
47
+ --use_cuda true
48
+ ```
49
+
50
+ Using the model directly:
51
+
52
+ ```python
53
+ from TTS.tts.configs.xtts_config import XttsConfig
54
+ from TTS.tts.models.xtts import Xtts
55
+
56
+ config = XttsConfig()
57
+ config.load_json("/path/to/xtts/config.json")
58
+ model = Xtts.init_from_config(config)
59
+ model.load_checkpoint(config, checkpoint_dir="/path/to/xtts/", eval=True)
60
+ model.cuda()
61
+
62
+ outputs = model.synthesize(
63
+ "Che boludo, vamos a tomar unos mates.",
64
+ config,
65
+ speaker_wav="/data/TTS-public/_refclips/3.wav",
66
+ gpt_cond_len=3,
67
+ language="es",
68
+ )
69
+ ```
config.json ADDED
@@ -0,0 +1,204 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "output_path": "train",
3
+ "logger_uri": null,
4
+ "run_name": "GPT_XTTS_v2.0_argentine",
5
+ "project_name": "XTTS_argentine",
6
+ "run_description": "\n GPT XTTS training\n ",
7
+ "print_step": 50,
8
+ "plot_step": 100,
9
+ "model_param_stats": false,
10
+ "wandb_entity": null,
11
+ "dashboard_logger": "tensorboard",
12
+ "save_on_interrupt": true,
13
+ "log_model_step": 1000,
14
+ "save_step": 10000,
15
+ "save_n_checkpoints": 1,
16
+ "save_checkpoints": true,
17
+ "save_all_best": false,
18
+ "save_best_after": 0,
19
+ "target_loss": null,
20
+ "print_eval": false,
21
+ "test_delay_epochs": 0,
22
+ "run_eval": true,
23
+ "run_eval_steps": null,
24
+ "distributed_backend": "nccl",
25
+ "distributed_url": "tcp://localhost:54321",
26
+ "mixed_precision": false,
27
+ "precision": "fp16",
28
+ "epochs": 1000,
29
+ "batch_size": 8,
30
+ "eval_batch_size": 8,
31
+ "grad_clip": 0.0,
32
+ "scheduler_after_epoch": true,
33
+ "lr": 5e-06,
34
+ "optimizer": "AdamW",
35
+ "optimizer_params": {
36
+ "betas": [
37
+ 0.9,
38
+ 0.96
39
+ ],
40
+ "eps": 1e-08,
41
+ "weight_decay": 0.01
42
+ },
43
+ "lr_scheduler": "MultiStepLR",
44
+ "lr_scheduler_params": {
45
+ "milestones": [
46
+ 900000,
47
+ 2700000,
48
+ 5400000
49
+ ],
50
+ "gamma": 0.5,
51
+ "last_epoch": -1
52
+ },
53
+ "use_grad_scaler": false,
54
+ "allow_tf32": false,
55
+ "cudnn_enable": true,
56
+ "cudnn_deterministic": false,
57
+ "cudnn_benchmark": false,
58
+ "training_seed": 1,
59
+ "model": "xtts",
60
+ "num_loader_workers": 8,
61
+ "num_eval_loader_workers": 0,
62
+ "use_noise_augment": false,
63
+ "audio": {
64
+ "sample_rate": 22050,
65
+ "output_sample_rate": 24000,
66
+ "dvae_sample_rate": 22050
67
+ },
68
+ "use_phonemes": false,
69
+ "phonemizer": null,
70
+ "phoneme_language": null,
71
+ "compute_input_seq_cache": false,
72
+ "text_cleaner": null,
73
+ "enable_eos_bos_chars": false,
74
+ "test_sentences_file": "",
75
+ "phoneme_cache_path": null,
76
+ "characters": null,
77
+ "add_blank": false,
78
+ "batch_group_size": 48,
79
+ "loss_masking": null,
80
+ "min_audio_len": 1,
81
+ "max_audio_len": Infinity,
82
+ "min_text_len": 1,
83
+ "max_text_len": Infinity,
84
+ "compute_f0": false,
85
+ "compute_energy": false,
86
+ "compute_linear_spec": false,
87
+ "precompute_num_workers": 0,
88
+ "start_by_longest": false,
89
+ "shuffle": false,
90
+ "drop_last": false,
91
+ "datasets": [
92
+ {
93
+ "formatter": "",
94
+ "dataset_name": "",
95
+ "path": "",
96
+ "meta_file_train": "",
97
+ "ignored_speakers": null,
98
+ "language": "",
99
+ "phonemizer": "",
100
+ "meta_file_val": "",
101
+ "meta_file_attn_mask": ""
102
+ }
103
+ ],
104
+ "test_sentences": [
105
+ {
106
+ "text": "Loco, no puede ser! Cuanta memoria necesito para entrenar este modelo?",
107
+ "speaker_wav": [
108
+ "./dataset/wavs/female_0.wav"
109
+ ],
110
+ "language": "es"
111
+ },
112
+ {
113
+ "text": "Ademàs hay que tener un dataset piola para que salga potable el entrenamiento.",
114
+ "speaker_wav": [
115
+ "/dataset/wavs/female_0.wav"
116
+ ],
117
+ "language": "es"
118
+ }
119
+ ],
120
+ "eval_split_max_size": 256,
121
+ "eval_split_size": 0.01,
122
+ "use_speaker_weighted_sampler": false,
123
+ "speaker_weighted_sampler_alpha": 1.0,
124
+ "use_language_weighted_sampler": false,
125
+ "language_weighted_sampler_alpha": 1.0,
126
+ "use_length_weighted_sampler": false,
127
+ "length_weighted_sampler_alpha": 1.0,
128
+ "model_args": {
129
+ "gpt_batch_size": 1,
130
+ "enable_redaction": false,
131
+ "kv_cache": true,
132
+ "gpt_checkpoint": "",
133
+ "clvp_checkpoint": null,
134
+ "decoder_checkpoint": null,
135
+ "num_chars": 255,
136
+ "tokenizer_file": "train/XTTS_v2.0_original_model_files/vocab.json",
137
+ "gpt_max_audio_tokens": 605,
138
+ "gpt_max_text_tokens": 402,
139
+ "gpt_max_prompt_tokens": 70,
140
+ "gpt_layers": 30,
141
+ "gpt_n_model_channels": 1024,
142
+ "gpt_n_heads": 16,
143
+ "gpt_number_text_tokens": 6681,
144
+ "gpt_start_text_token": 261,
145
+ "gpt_stop_text_token": 0,
146
+ "gpt_num_audio_tokens": 1026,
147
+ "gpt_start_audio_token": 1024,
148
+ "gpt_stop_audio_token": 1025,
149
+ "gpt_code_stride_len": 1024,
150
+ "gpt_use_masking_gt_prompt_approach": true,
151
+ "gpt_use_perceiver_resampler": true,
152
+ "input_sample_rate": 22050,
153
+ "output_sample_rate": 24000,
154
+ "output_hop_length": 256,
155
+ "decoder_input_dim": 1024,
156
+ "d_vector_dim": 512,
157
+ "cond_d_vector_in_each_upsampling_layer": true,
158
+ "duration_const": 102400,
159
+ "min_conditioning_length": 66150,
160
+ "max_conditioning_length": 132300,
161
+ "gpt_loss_text_ce_weight": 0.01,
162
+ "gpt_loss_mel_ce_weight": 1.0,
163
+ "debug_loading_failures": false,
164
+ "max_wav_length": 255995,
165
+ "max_text_length": 200,
166
+ "mel_norm_file": "train/XTTS_v2.0_original_model_files/mel_stats.pth",
167
+ "dvae_checkpoint": "train/XTTS_v2.0_original_model_files/dvae.pth",
168
+ "xtts_checkpoint": "train/XTTS_v2.0_original_model_files/model.pth",
169
+ "vocoder": ""
170
+ },
171
+ "model_dir": null,
172
+ "languages": [
173
+ "en",
174
+ "es",
175
+ "fr",
176
+ "de",
177
+ "it",
178
+ "pt",
179
+ "pl",
180
+ "tr",
181
+ "ru",
182
+ "nl",
183
+ "cs",
184
+ "ar",
185
+ "zh-cn",
186
+ "hu",
187
+ "ko",
188
+ "ja",
189
+ "hi"
190
+ ],
191
+ "temperature": 0.85,
192
+ "length_penalty": 1.0,
193
+ "repetition_penalty": 2.0,
194
+ "top_k": 50,
195
+ "top_p": 0.85,
196
+ "num_gpt_outputs": 1,
197
+ "gpt_cond_len": 12,
198
+ "gpt_cond_chunk_len": 4,
199
+ "max_ref_len": 10,
200
+ "sound_norm_refs": false,
201
+ "optimizer_wd_only_on_weights": true,
202
+ "weighted_loss_attrs": null,
203
+ "weighted_loss_multipliers": null
204
+ }
model.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cc4ff33a7e6e45737fa7e8024d06df6a632f72d0c4083aec92228710c743472d
3
+ size 5607927317
vocab.json ADDED
The diff for this file is too large to render. See raw diff