You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: documentation/OPTIONS.es.md
+175Lines changed: 175 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -171,6 +171,16 @@ Donde `foo` es tu entorno de configuración; o simplemente usa `config/config.js
171
171
-**Qué**: Ruta al modelo Gemma preentrenado o su identificador en <https://huggingface.co/models>.
172
172
-**Por qué**: Al entrenar modelos basados en Gemma (por ejemplo LTX-2, Sana o Lumina2), puedes apuntar a un checkpoint Gemma compartido sin cambiar la ruta del modelo base de difusión.
173
173
174
+
### `--custom_text_encoder_intermediary_layers`
175
+
176
+
-**Qué**: Sobrescribe qué capas de estado oculto extraer del encoder de texto para modelos FLUX.2.
177
+
-**Formato**: Array JSON de índices de capas, ej: `[10, 20, 30]`
178
+
-**Por defecto**: Se usan los valores por defecto específicos del modelo cuando no se establece:
179
+
- FLUX.2-dev (Mistral-3): `[10, 20, 30]`
180
+
- FLUX.2-klein (Qwen3): `[9, 18, 27]`
181
+
-**Por qué**: Permite experimentar con diferentes combinaciones de estados ocultos del encoder de texto para alineación personalizada o propósitos de investigación.
182
+
-**Nota**: Esta opción es experimental y solo aplica a modelos FLUX.2. Cambiar los índices de capas invalidará los embeddings de texto en caché y requerirá regenerarlos. El número de capas debe coincidir con la entrada esperada por el modelo (3 capas).
183
+
174
184
### `--gradient_checkpointing`
175
185
176
186
-**Qué**: Durante el entrenamiento, los gradientes se calcularán por capa y se acumularán para ahorrar en los requisitos máximos de VRAM a costa de un entrenamiento más lento.
@@ -393,6 +403,30 @@ Esto es útil para herramientas de monitoreo que reciben webhooks de múltiples
393
403
-**Qué**: El nombre del modelo en Huggingface Hub y el directorio de resultados locales.
394
404
-**Por qué**: Este valor se usa como nombre de directorio bajo la ubicación especificada como `--output_dir`. Si se proporciona `--push_to_hub`, este se convertirá en el nombre del modelo en Huggingface Hub.
395
405
406
+
### `--modelspec_comment`
407
+
408
+
-**Qué**: Texto incorporado en los metadatos del archivo safetensors como `modelspec.comment`
409
+
-**Por defecto**: None (deshabilitado)
410
+
-**Notas**:
411
+
- Visible en visualizadores de modelos externos (ComfyUI, herramientas de info de modelos)
412
+
- Acepta una cadena o un array de cadenas (unidas con saltos de línea)
413
+
- Soporta marcadores `{env:VAR_NAME}` para sustitución de variables de entorno
414
+
- Cada checkpoint usa el valor de configuración actual en el momento del guardado
415
+
416
+
**Ejemplo (cadena)**:
417
+
```json
418
+
"modelspec_comment": "Entrenado en mi dataset personalizado v2.1"
419
+
```
420
+
421
+
**Ejemplo (array para múltiples líneas)**:
422
+
```json
423
+
"modelspec_comment": [
424
+
"Ejecución de entrenamiento: experiment-42",
425
+
"Dataset: custom-portraits-v2",
426
+
"Notas: {env:TRAINING_NOTES}"
427
+
]
428
+
```
429
+
396
430
### `--disable_benchmark`
397
431
398
432
-**Qué**: Desactiva la validación/benchmark de arranque que ocurre en el paso 0 sobre el modelo base. Estas salidas se concatenan al lado izquierdo de tus imágenes de validación del modelo entrenado.
@@ -612,6 +646,79 @@ Muchas configuraciones se establecen a través del [dataloader config](DATALOADE
612
646
-**Qué**: Desactiva el cálculo de pérdida de evaluación durante la validación.
613
647
-**Por qué**: Cuando se configura un dataset de eval, la pérdida se calcula automáticamente. Si la evaluación CLIP también está habilitada, ambas se ejecutarán. Este flag te permite desactivar selectivamente la pérdida de eval manteniendo la evaluación CLIP habilitada.
614
648
649
+
### `--validation_using_datasets`
650
+
651
+
-**Qué**: Usa imágenes de datasets de entrenamiento para validación en lugar de generación pura de texto a imagen.
652
+
-**Por qué**: Habilita el modo de validación imagen-a-imagen (img2img) donde el modelo des-ruido parcialmente imágenes de entrenamiento en lugar de generar desde ruido puro. Útil para:
653
+
- Probar modelos de edición/inpainting que requieren imágenes de entrada
654
+
- Evaluar qué tan bien el modelo preserva la estructura de imagen
655
+
- Modelos que soportan flujos duales texto-a-imagen E imagen-a-imagen (ej., Flux2, LTXVideo2)
656
+
-**Notas**:
657
+
- Requiere que el modelo tenga un pipeline `IMG2IMG` registrado
658
+
- Puede combinarse con `--eval_dataset_id` para obtener imágenes de un dataset específico
659
+
- La fuerza de des-ruido se controla con los ajustes normales de timestep de validación
660
+
661
+
### `--eval_dataset_id`
662
+
663
+
-**Qué**: ID de dataset específico a usar para obtener imágenes de evaluación/validación.
664
+
-**Por qué**: Al usar `--validation_using_datasets` o validación basada en conditioning, controla qué dataset provee las imágenes de entrada:
665
+
- Sin esta opción, las imágenes se seleccionan aleatoriamente de todos los datasets de entrenamiento
666
+
- Con esta opción, solo se usa el dataset especificado para entradas de validación
667
+
-**Notas**:
668
+
- El ID de dataset debe coincidir con un dataset configurado en tu config de dataloader
669
+
- Útil para mantener evaluación consistente usando un dataset de eval dedicado
670
+
- Para modelos de conditioning, los datos de conditioning del dataset (si existen) también se usarán
671
+
672
+
---
673
+
674
+
## Entendiendo Modos de Conditioning y Validación
675
+
676
+
SimpleTuner soporta tres paradigmas principales para modelos que usan entradas de conditioning (imágenes de referencia, señales de control, etc.):
677
+
678
+
### 1. Modelos que REQUIEREN Conditioning
679
+
680
+
Algunos modelos no pueden funcionar sin entradas de conditioning:
681
+
682
+
-**Flux Kontext**: Siempre necesita imágenes de referencia para entrenamiento estilo edición
683
+
-**Entrenamiento ControlNet**: Requiere imágenes de señal de control
684
+
685
+
Para estos modelos, un dataset de conditioning es obligatorio. La WebUI mostrará opciones de conditioning como requeridas, y el entrenamiento fallará sin ellas.
686
+
687
+
### 2. Modelos que SOPORTAN Conditioning Opcional
688
+
689
+
Algunos modelos pueden operar en modos texto-a-imagen E imagen-a-imagen:
690
+
691
+
-**Flux2**: Soporta entrenamiento dual T2I/I2I con imágenes de referencia opcionales
692
+
-**LTXVideo2**: Soporta T2V e I2V (imagen-a-video) con conditioning de primer frame opcional
693
+
-**LongCat-Video**: Soporta conditioning de frames opcional
694
+
695
+
Para estos modelos, PUEDES agregar datasets de conditioning pero no es obligatorio. La WebUI mostrará opciones de conditioning como opcionales.
696
+
697
+
### 3. Modos de Validación
698
+
699
+
| Modo | Flag | Comportamiento |
700
+
|------|------|----------------|
701
+
|**Texto-a-Imagen**| (por defecto) | Genera solo desde prompts de texto |
702
+
|**Basado en Dataset**|`--validation_using_datasets`| Des-ruido parcial de imágenes de datasets (img2img) |
703
+
|**Basado en Conditioning**| (auto cuando se configura conditioning) | Usa entradas de conditioning durante validación |
704
+
705
+
**Combinando modos**: Cuando un modelo soporta conditioning Y `--validation_using_datasets` está habilitado:
706
+
- El sistema de validación obtiene imágenes de datasets
707
+
- Si esos datasets tienen datos de conditioning, se usan automáticamente
708
+
- Usa `--eval_dataset_id` para controlar qué dataset provee entradas
709
+
710
+
### Tipos de Datos de Conditioning
711
+
712
+
Diferentes modelos esperan diferentes datos de conditioning:
713
+
714
+
| Tipo | Modelos | Configuración de Dataset |
715
+
|------|---------|-------------------------|
716
+
|`conditioning`| ControlNet, Control |`type: conditioning` en config de dataset |
717
+
|`image`| Flux Kontext |`type: image` (dataset de imagen estándar) |
718
+
|`latents`| Flux, Flux2 | Conditioning se codifica con VAE automáticamente |
719
+
720
+
---
721
+
615
722
### `--caption_strategy`
616
723
617
724
-**Qué**: Estrategia para derivar captions de imagen. **Opciones**: `textfile`, `filename`, `parquet`, `instanceprompt`
@@ -930,6 +1037,61 @@ CREPA es una técnica de regularización para fine-tuning de modelos de difusió
930
1037
-**Por qué**: Los modelos DINOv2 funcionan mejor a su resolución de entrenamiento. El modelo gigante usa 518x518.
931
1038
-**Predeterminado**: `518`
932
1039
1040
+
### `--crepa_scheduler`
1041
+
1042
+
-**Qué**: Programa para el decaimiento del coeficiente CREPA durante el entrenamiento.
1043
+
-**Por qué**: Permite reducir la fuerza de regularización CREPA a medida que avanza el entrenamiento, previniendo el sobreajuste en características profundas del encoder.
-**Qué**: Número de pasos para incrementar linealmente el peso CREPA desde 0 hasta `crepa_lambda`.
1050
+
-**Por qué**: Un calentamiento gradual puede ayudar a estabilizar el entrenamiento temprano antes de que la regularización CREPA entre en efecto.
1051
+
-**Predeterminado**: `0`
1052
+
1053
+
### `--crepa_decay_steps`
1054
+
1055
+
-**Qué**: Pasos totales para el decaimiento (después del calentamiento). Establece a 0 para decaer durante todo el entrenamiento.
1056
+
-**Por qué**: Controla la duración de la fase de decaimiento. El decaimiento comienza después de que se completa el calentamiento.
1057
+
-**Predeterminado**: `0` (usa `max_train_steps`)
1058
+
1059
+
### `--crepa_lambda_end`
1060
+
1061
+
-**Qué**: Peso CREPA final después de que se completa el decaimiento.
1062
+
-**Por qué**: Establecerlo a 0 desactiva efectivamente CREPA al final del entrenamiento, útil para text2video donde CREPA puede causar artefactos.
1063
+
-**Predeterminado**: `0.0`
1064
+
1065
+
### `--crepa_power`
1066
+
1067
+
-**Qué**: Factor de potencia para el decaimiento polinomial. 1.0 = lineal, 2.0 = cuadrático, etc.
1068
+
-**Por qué**: Valores más altos causan un decaimiento inicial más rápido que se ralentiza hacia el final.
1069
+
-**Predeterminado**: `1.0`
1070
+
1071
+
### `--crepa_cutoff_step`
1072
+
1073
+
-**Qué**: Paso de corte duro después del cual CREPA se desactiva.
1074
+
-**Por qué**: Útil para desactivar CREPA después de que el modelo ha convergido en el alineamiento temporal.
1075
+
-**Predeterminado**: `0` (sin corte basado en pasos)
1076
+
1077
+
### `--crepa_similarity_threshold`
1078
+
1079
+
-**Qué**: Umbral de EMA de similitud en el cual se activa el corte de CREPA.
1080
+
-**Por qué**: Cuando el promedio móvil exponencial de similitud alcanza este valor, CREPA se desactiva para prevenir el sobreajuste en características profundas del encoder. Esto es particularmente útil para entrenamiento text2video.
1081
+
-**Predeterminado**: None (desactivado)
1082
+
1083
+
### `--crepa_similarity_ema_decay`
1084
+
1085
+
-**Qué**: Factor de decaimiento del promedio móvil exponencial para el seguimiento de similitud.
1086
+
-**Por qué**: Valores más altos proporcionan un seguimiento más suave (0.99 ≈ ventana de 100 pasos), valores más bajos reaccionan más rápido a los cambios.
1087
+
-**Predeterminado**: `0.99`
1088
+
1089
+
### `--crepa_threshold_mode`
1090
+
1091
+
-**Qué**: Comportamiento cuando se alcanza el umbral de similitud.
1092
+
-**Opciones**: `permanent` (CREPA permanece desactivado una vez que se alcanza el umbral), `recoverable` (CREPA se reactiva si la similitud cae)
0 commit comments