voice-clone-rvc / train_cli.py
AI Assistant
Fix noisereduce, UI progress, remove spaces.GPU for L4, and add train_cli.py
4401a6e
import argparse
import sys
import os
def main():
parser = argparse.ArgumentParser(description="Entrenamiento RVC por Consola")
parser.add_argument("--audio", required=True, help="Ruta al archivo de audio (WAV/MP3)")
parser.add_argument("--name", required=True, help="Nombre del modelo (sin espacios)")
parser.add_argument("--epochs", type=int, default=100, help="Número de epochs (defecto: 100)")
parser.add_argument("--batch_size", type=int, default=8, help="Tamaño de lote (defecto: 8 para L4)")
parser.add_argument("--f0_method", type=str, default="rmvpe", choices=["rmvpe", "crepe", "fcpe"], help="Método F0")
parser.add_argument("--save_every", type=int, default=10, help="Guardar checkpoint cada X epochs")
args = parser.parse_args()
# Import locally
from pipeline.rvc_training import train_rvc_model
print(f"\n🚀 Iniciando entrenamiento por consola para el modelo: {args.name}")
print(f"📊 Parámetros: Epochs={args.epochs}, Batch={args.batch_size}, F0={args.f0_method}\n")
status, download_path = train_rvc_model(
audio_path=args.audio,
model_name=args.name,
epochs=args.epochs,
batch_size=args.batch_size,
f0_method=args.f0_method,
save_every=args.save_every,
progress=None
)
print("\n✅ ESTADO FINAL:")
print(status)
if download_path:
print(f"📁 Archivo generado en: {download_path}")
if __name__ == "__main__":
main()