sob111 commited on
Commit
b009c70
·
verified ·
1 Parent(s): b18ec73

Update finetune_xtts_hf.py

Browse files
Files changed (1) hide show
  1. finetune_xtts_hf.py +20 -18
finetune_xtts_hf.py CHANGED
@@ -2,39 +2,41 @@ import os
2
  import subprocess
3
  from huggingface_hub import HfApi, HfFolder
4
 
5
- # ======== CONFIGURACIÓN ========
6
- HF_TOKEN = os.environ.get("HF_TOKEN", "").strip()
7
- REPO_ID = os.environ.get("HF_REPO", "sob111/xttsv2-voxpopuli-es-500")
 
8
  CONFIG_PATH = "./config.json"
9
 
10
- # ======== GUARDAR TOKEN ========
11
- if HF_TOKEN:
12
- print("=== Guardando token de Hugging Face ===")
13
- HfFolder.save_token(HF_TOKEN)
14
- else:
15
- raise RuntimeError("No se encontró HF_TOKEN. Configúralo como variable de entorno.")
16
 
17
- # ======== ENTRENAMIENTO XTTSv2 ========
18
  print("=== Iniciando entrenamiento XTTSv2 ===")
19
  try:
20
  subprocess.run(
21
- ["tts", "--config_path", CONFIG_PATH],
 
 
 
 
22
  check=True
23
  )
24
  except subprocess.CalledProcessError:
25
- raise RuntimeError("El entrenamiento XTTSv2 falló. Revisa los logs anteriores.")
 
26
  print("=== Entrenamiento finalizado ===")
27
 
28
- # ======== SUBIR MODELO A HUGGING FACE ========
29
  print("=== Subiendo modelo fine-tune a Hugging Face ===")
30
  api = HfApi()
31
- output_dir = "./output_model"
32
-
33
  api.upload_folder(
34
- folder_path=output_dir,
35
- repo_id=REPO_ID,
36
  repo_type="model",
37
  token=HF_TOKEN
38
  )
39
 
40
- print(f"=== Modelo subido correctamente a https://huggingface.co/{REPO_ID} ===")
 
2
  import subprocess
3
  from huggingface_hub import HfApi, HfFolder
4
 
5
+ # === Configuración ===
6
+ HF_TOKEN = os.environ.get("HF_TOKEN") # asegúrate de tenerlo en Secrets del Space
7
+ HF_REPO_ID = "sob111/xttsv2-es-finetuned" # cambia por tu repo destino
8
+ OUTPUT_PATH = "./output_model"
9
  CONFIG_PATH = "./config.json"
10
 
11
+ # === Guardar token de Hugging Face ===
12
+ print("=== Guardando token de Hugging Face ===")
13
+ HfFolder.save_token(HF_TOKEN)
 
 
 
14
 
15
+ # === Iniciar entrenamiento XTTSv2 ===
16
  print("=== Iniciando entrenamiento XTTSv2 ===")
17
  try:
18
  subprocess.run(
19
+ [
20
+ "python",
21
+ "TTS/bin/train_tts.py",
22
+ "--config_path", CONFIG_PATH
23
+ ],
24
  check=True
25
  )
26
  except subprocess.CalledProcessError:
27
+ raise RuntimeError("El entrenamiento XTTSv2 falló. Revisa los logs anteriores.")
28
+
29
  print("=== Entrenamiento finalizado ===")
30
 
31
+ # === Subir modelo fine-tune a Hugging Face ===
32
  print("=== Subiendo modelo fine-tune a Hugging Face ===")
33
  api = HfApi()
34
+ api.create_repo(repo_id=HF_REPO_ID, exist_ok=True, token=HF_TOKEN)
 
35
  api.upload_folder(
36
+ folder_path=OUTPUT_PATH,
37
+ repo_id=HF_REPO_ID,
38
  repo_type="model",
39
  token=HF_TOKEN
40
  )
41
 
42
+ print(f" Fine-tuning completado y subido a {HF_REPO_ID}")