ArtificialGuyBR

Home / Blog / Training LoRAs

Treinamento SDXL LoRA: Colab vs Treinadores Hospedados

Compare GPUs T4 grátis no Colab vs Kaggle para treinamento SDXL LoRA, entenda timeouts de sessão e descubra alternativas de treinadores hospedados.

11 sources cited Training LoRAs

Treinamento SDXL LoRA: Colab vs Treinadores Hospedados

TL;DR

  • GPU T4 grátis: Colab e Kaggle oferecem NVIDIA T4 (16 GB VRAM). Kaggle fornece 2× T4 para treinamento multi-GPU; Colab dá 1× T4.
  • Limites de sessão: Colab desconecta após 90 minutos ocioso e limita a 12 horas. Kaggle sessões interativas caem após 20 minutos e tempo máximo é 12 horas.
  • Persistência: Colab usa montagem do Google Drive (sobrevive à terminação da VM). Kaggle salva /kaggle/working (20 GB) como saída do notebook; encadeie notebooks para reutilizar arquivos.
  • SDXL no T4: Use --full_fp16 para caber estados do otimizador na VRAM; adicione --cache_latents --cache_latents_to_disk para grande aceleração.
  • Alternativas hospedadas: Civitai, Tensor.Art, Replicate e Hugging Face AutoTrain oferecem treinamento LoRA via web com preço por segundo.

Para mais sobre persistência em notebooks Kaggle, veja guia de encadeamento de notebooks Kaggle.

Colab vs. Kaggle: Hardware GPU e Cotas

Tier | Tipo GPU | VRAM | Timeout Ocioso | Duração Máxima | Horas GPU/Semana

|------|----------|------|---------------------|-------------------|------------------

Colab (grátis) | Tesla T4 | 16 GB | 90 minutos | 12 horas | Varia (sem cota fixa) Colab Pro | Tesla T4 | 16–40 GB | 90 minutos | 24 horas | Unidades de computação ilimitadas Kaggle (grátis) | 2× Tesla T4 | 16 GB cada | 20 minutos | 12 horas | 30 horas / semana Kaggle notebooks docs

Ambas plataformas baseiam usuários em GPUs NVIDIA T4, mas o acelerador "T4 x2" do Kaggle provisiona duas T4 físicas em um único container, dando 29 GB RAM e a capacidade de rodar treinamento multi-GPU. O tier grátis do Colab fornece uma T4 única. Nenhuma plataforma garante modelos GPU específicos — a FAQ do Colab afirma que "tipos de GPU variam" dependendo de disponibilidade FAQ do Colab.

Verificação de telefone obrigatória: Kaggle exige verificação de número de telefone para liberar acesso GPU. Contas não verificadas recebem apenas sessões CPU.


Timeouts de Sessão e Persistência

Colab: Montagem do Drive sobre Sistema de Arquivos

O runtime do Colab termina após 90 minutos de inatividade, mas seus arquivos sobrevivem pelo Google Drive. Monte seu Drive em /content/drive/MyDrive/ e armazene checkpoints lá:

from google.colab import drive
drive.mount('/content/drive')

A próxima sessão remonta o mesmo caminho. Esse padrão funciona para qualquer armazenamento: LoRAs, dados de treinamento ou pesos de modelo FurkanGozukara A1111 tutorial.

Kaggle: Diretório de Trabalho vs. Armazenamento Temporário

Notebooks Kaggle oferecem duas zonas de armazenamento:

  • /kaggle/working — 20 GB auto-salvos. Arquivos aqui viram saída versionada; anexe-os como entradas a notebooks futuros Kaggle notebooks docs.
  • /kaggle/temp — até 75 GB de espaço temporário, apagado no fim da sessão.

Baixe modelos grandes em /kaggle/temp/models/ para economizar espaço, mas sempre copie LoRAs finais para /kaggle/working/ antes da sessão expirar.

Encadeando Notebooks para Continuidade

O recurso "chain notebooks" do Kaggle permite anexar a saída /kaggle/working de qualquer notebook como entrada de dataset. É a única forma de preservar arquivos grandes entre sessões. Salve seu checkpoint LoRA, então crie um novo notebook que o importe como dado.


Configurações de Treinamento SDXL para VRAM Limitada

Para ajuste detalhado de hiperparâmetros, veja guia de treinamento SDXL.

Por que --full_fp16 É Necessário

O UNet do SDXL tem ~2,6 bilhões de parâmetros. Em fp32, só os pesos precisam de 10,4 GB. Some ativações e estados do otimizador AdamW (8 bytes/parâmetro) e você excede 16 GB VRAM.

--full_fp16 armazena estados do otimizador em fp16 (2 bytes/parâmetro), cortando pico de memória aproximadamente pela metade. O notebook do Kohya trainer habilita isso automaticamente para sessões T4 Linaqruf/kohya-trainer XL notebook.

Cache de Latentes no Disco

As flags --cache_latents --cache_latents_to_disk pré-computam e armazenam embeddings latentes no disco em vez de recalculá-los a cada passo de treinamento. O notebook nota que isso dá um "huge speed up" FurkanGozukara SDXL tutorial. Configuração | Efeito

|---------|--------

--cache_latents | Mantém latentes na RAM (mais rápido) --cache_latents_to_disk | Descarrega latentes no SSD (economiza RAM)

Use ambos juntos no T4 para evitar OOM mantendo velocidade razoável.

O Patch --lowram

Quando o notebook detecta GPU T4, ele patcha library/model_util.py para mudar cuda→cpu durante carregamento do modelo. Isso habilita offload para CPU na carga inicial, prevenindo OOM antes do treino começar kohya-ss/sd-scripts README.


Tipos de LoRA: O que o Treinador Suporta de Fato

O dropdown network_category do Kohya trainer (v14.6) oferece quatro opções Linaqruf/kohya-trainer README. Tipo | Descrição | Uso Típico

|------|-------------|-------------

LoRA | Camadas Linear + 1×1 Conv | Padrão; compatível com a maioria das Web UIs LoCon | Adiciona 3×3 Conv LoRA | Melhor para features espaciais LoCon_Lycoris | Variante LyCORIS do LoCon | Experimental LoHa | Representação produto Hadamard | Treinamento mais lento

Tipos adicionais (IA³, LoKR, DyLoRA-Lycoris) existem no ecossistema Kohya, mas exigem configuração manual de network_module + network_args e não estão no dropdown da UI.


Treinadores Hospedados: Alternativas Baseadas na Web

Quando sessões na nuvem dão timeout, considere treinadores hospedados que gerenciam computação para você.

Para mergulhos na arquitetura, leia detalhes de implementação LoRA.

Treinamento On-Site do Civitai

Civitai fornece treinador LoRA embutido. Em qualquer página de modelo, clique no botão "Train" para lançar job de treinamento no pool GPU do Civitai. Você paga com créditos de computação Civitai Train page.

Treinamento Online do Tensor.Art

Tensor.Art oferece cota diária gratuita para treinamento LoRA/LoCon. Faça upload do dataset, defina parâmetros e a plataforma treina em GPUs dedicadas. Resultados baixam automaticamente Tensor.Art.

API Replicate

O modelo ostris/sdxl-lora-trainer no Replicate permite treinar via API. Pague por segundo de uso GPU (A100/H100). Ideal para automação ou integração em pipelines Replicate ostris/sdxl-lora-trainer.

Hugging Face AutoTrain

AutoTrain Advanced suporta treinamento SDXL LoRA nos clusters GPU do HF. Aponte para seu dataset, escolha hiperparâmetros e deixe o HF cuidar da computação Hugging Face AutoTrain.


Erros Comuns e Correções

Sintoma | Causa | Correção

|---------|-------|---------

CUDA out of memory | otimizador fp32 excede 16 GB | Ative --full_fp16 ValueError: fp16 mixed precision requires a GPU | Config Accelerate não vê GPU | Na Q6, responda 0 (não all) Modelo falha ao carregar no T4 | Default carrega na GPU antes do treino | Aplique patch lowram (sed -i 's@cpu@cuda@' library/model_util.py) Sessão Kaggle morre, /kaggle/working perdido | Usou /kaggle/temp para saídas | Escreva checkpoints em /kaggle/working; encadeie notebooks Montagem Drive Colab falha | OAuth bloqueado ou escopo errado | Use drive.mount('/content/drive', force_remount=True)


Perguntas Frequentes

Por que meu Colab desconecta após 90 minutos? O tier grátis do Colab mata sessões ociosas após 90 minutos. Ative "Keep alive" no menu ou use extensão de navegador para fazer ping no runtime. Para jobs longos, divida o treino em pedaços menores e salve checkpoints frequentemente.

Como mantenho meus checkpoints LoRA após fim de sessão Kaggle? Salve checkpoints em /kaggle/working/ em vez de /kaggle/temp/. Após a sessão, os arquivos persistem como saída do notebook. Anexe essa saída a um novo notebook como dataset para continuar treinando.

Por que Kohya mostra o dobro de epochs que configurei? O mecanismo exato não é documentado. A UI pode logar passos do otimizador em vez de epochs, ou contar passes do text-encoder e UNet. Verifique o log de treino para contagem real de passos.

Posso treinar tipos IA³ ou LoKR no Colab Linaqruf? Não pelo dropdown network_category. Esses tipos exigem configuração manual de network_module e network_args. O sd-scripts subjacente pode suportá-los, mas o notebook Colab não os expõe.

SDXL 0.9 ainda está disponível no Hugging Face? SDXL 0.9 (stabilityai/stable-diffusion-xl-base-0.9) está depreciado. Modelos base atuais são SDXL 1.0 (stabilityai/stable-diffusion-xl-base-1.0) e finetunes da comunidade como AnimagineXL.

Qual a diferença entre --cache_latents e --cache_latents_to_disk? --cache_latents mantém todos latentes na RAM (mais rápido, usa VRAM). --cache_latents_to_disk escreve no SSD, liberando RAM. Use ambos juntos em GPUs T4 de 16 GB para evitar OOM.

Quanto espaço em disco preciso para treino no Kaggle? /kaggle/working dá 20 GB auto-salvos. Use /kaggle/temp para até 75 GB temporários. Baixe modelos grandes em /kaggle/temp/models/, mas salve LoRAs finais em /kaggle/working/.