Guia de Início Rápido do Kandinsky 5.0 Image¶
Neste exemplo, vamos treinar um LoRA do Kandinsky 5.0 Image.
Requisitos de hardware¶
Kandinsky 5.0 usa um enorme encoder de texto Qwen2.5-VL de 7B parâmetros além de um encoder CLIP padrão e o VAE do Flux. Isso coloca uma demanda significativa tanto em VRAM quanto em RAM do sistema.
Apenas carregar o encoder Qwen exige cerca de 14GB de memória por si só. Ao treinar um LoRA rank 16 com gradient checkpointing completo:
- 24GB de VRAM é o mínimo confortável (RTX 3090/4090).
- 16GB de VRAM é possível, mas exige offload agressivo e provavelmente quantização
int8do modelo base.
Você vai precisar:
- RAM do sistema: Pelo menos 32GB, idealmente 64GB, para lidar com o carregamento inicial do modelo sem travar.
- GPU: NVIDIA RTX 3090 / 4090 ou placas profissionais (A6000, A100, etc.).
Offload de memória (recomendado)¶
Defina "offload_during_startup": true no seu config.json para reduzir uso de VRAM durante a inicialização e cache. Isso garante que o encoder de texto e o VAE não sejam carregados ao mesmo tempo.
Pré-requisitos¶
Certifique-se de que você tem Python instalado; o SimpleTuner funciona bem com 3.10 até 3.12.
Você pode verificar executando:
Se você não tem o Python 3.12 instalado no Ubuntu, pode tentar o seguinte:
Instalação¶
Instale o SimpleTuner via pip:
pip install 'simpletuner[cuda]'
# CUDA 13 / Blackwell users (NVIDIA B-series GPUs)
pip install 'simpletuner[cuda13]' --extra-index-url https://download.pytorch.org/whl/cu130
Para instalação manual ou setup de desenvolvimento, veja a documentação de instalação.
Configurando o ambiente¶
Método da interface web¶
A WebUI do SimpleTuner torna a configuração bastante direta. Para rodar o servidor:
Acesse em http://localhost:8001.
Método manual / linha de comando¶
Para rodar o SimpleTuner via linha de comando, você precisará configurar um arquivo de configuração, os diretórios de dataset e modelo, e um arquivo de configuração do dataloader.
Arquivo de configuração¶
Um script experimental, configure.py, pode ajudar você a pular esta seção:
Se você preferir configurar manualmente:
Copie config/config.json.example para config/config.json:
Você precisará modificar as seguintes variáveis:
model_type:loramodel_family:kandinsky5-imagemodel_flavour:t2i-lite-sft: (Padrão) Checkpoint SFT padrão. Melhor para fine-tuning de estilos/personagens.t2i-lite-pretrain: Checkpoint de pré-treino. Melhor para ensinar conceitos totalmente novos do zero.i2i-lite-sft/i2i-lite-pretrain: Para treino imagem-para-imagem. Requer imagens de condicionamento no seu dataset.output_dir: onde salvar seus checkpoints.train_batch_size: comece com1.gradient_accumulation_steps: use1ou maior para simular batches maiores.validation_resolution:1024x1024é o padrão para este modelo.validation_guidance:5.0é o padrão recomendado para Kandinsky 5.flow_schedule_shift:1.0é o padrão. Ajustar isso muda como o modelo prioriza detalhes vs composição (veja abaixo).
Prompts de validação¶
Dentro de config/config.json está o "prompt de validação principal". Você também pode criar uma biblioteca de prompts em config/user_prompt_library.json:
Ver exemplo de config
Habilite adicionando isto ao config.json:
Ajuste de schedule de flow¶
Kandinsky 5 é um modelo de flow-matching. O parâmetro shift controla a distribuição de ruído durante treino e inferência.
- Shift 1.0 (Padrão): Treino equilibrado.
- Shift baixo (< 1.0): Foca mais em detalhes de alta frequência (textura, ruído).
- Shift alto (> 1.0): Foca mais em detalhes de baixa frequência (composição, cor, estrutura).
Se o modelo aprende estilos bem, mas falha na composição, tente aumentar o shift. Se aprende composição, mas falta textura, tente diminuir.
Treino com modelo quantizado¶
Você pode reduzir significativamente a VRAM quantizando o transformer para 8 bits.
No config.json:
Ver exemplo de config
Nota: Não recomendamos quantizar os encoders de texto (
no_change), pois o Qwen2.5-VL é sensível a quantização e já é a parte mais pesada do pipeline.
Recursos experimentais avançados¶
Mostrar detalhes experimentais avançados
SimpleTuner inclui recursos experimentais que podem melhorar significativamente a estabilidade e o desempenho do treinamento. * **[Scheduled Sampling (Rollout)](../experimental/SCHEDULED_SAMPLING.md):** reduz viés de exposição e melhora a qualidade ao permitir que o modelo gere suas próprias entradas durante o treinamento. > ⚠️ Esses recursos aumentam o overhead computacional do treinamento. #### Considerações sobre o dataset Você precisará de um arquivo de configuração de dataset, por exemplo, `config/multidatabackend.json`.[
{
"id": "my-image-dataset",
"type": "local",
"dataset_type": "image",
"instance_data_dir": "datasets/my_images",
"caption_strategy": "textfile",
"resolution": 1024,
"crop": true,
"crop_aspect": "square",
"repeats": 10
},
{
"id": "text-embeds",
"type": "local",
"dataset_type": "text_embeds",
"default": true,
"cache_dir": "cache/text/kandinsky5",
"disabled": false
}
]