Comparação de Checkpoint e LoRA com Seed Fixo
Metodologia prática para comparar modelos Stable Diffusion com justiça — controle variáveis e leia grids honestamente.
On this page
Comparação de Checkpoint e LoRA com Seed Fixo
TL;DR
- O card de teste izolight exige parâmetros fixos em todas as avaliações — seed, sampler, steps, CFG, resolução e VAE devem ser idênticos para cada teste de checkpoint/LoRA. Para mais contexto sobre extração de trigger words de LoRA, o node ComfyUI é a fonte autoritativa.
- v3 usa LoRA Auto Trigger — tags canônicas são extraídas automaticamente da API do Civitai ou dos metadados do modelo.
- v2 muda para conditionings médios — para as categorias Portrait e Close-up, o node
ConditioningAveragedo ComfyUI mescla embeddings de texto em vez de concatenar prompts. - 30 LoRAs testadas — cobrindo Lava Style, Liquid Flow, Chrome Style, Bubblegum e outras categorias de estilo. Veja também nosso guia de workflow ComfyUI.
Origem: Da Ideia no Reddit ao Workflow ComfyUI
O artigo da izolight abre com uma referência direta: "A few days ago I stumbled upon a reddit post with a model testing card", linkando para r/StableDiffusion [[1]](https://civitai.com/articles/4474). Esse post (r/StableDiffusion/comments/1b39b07) é a semente de toda a metodologia.
O autor então construiu uma implementação ComfyUI com duas melhorias explícitas sobre o conceito do Reddit:
- Parâmetros controlados centralmente — "I decided to improve this a bit with centrally controlled parameters for the generation" [[1]](https://civitai.com/articles/4474)
- Suporte a LoRA e Lightning LoRA — "...and support for LoRA and Lightning LoRA" [[1]](https://civitai.com/articles/4474)
O workflow resultante posiciona "all the input parameters on the left side with the final output (as a preview that can be saved) there too" [[1]](https://civitai.com/articles/4474). Esse layout mantém a superfície de controle visível enquanto o grid de comparação renderiza.
Núcleo Metodológico: Um Conjunto de Parâmetros, Muitos Modelos
O princípio central: toda variável que possa afetar a saída deve ser travada identicamente em todas as células de teste. Para um tratamento mais aprofundado, veja avaliação de checkpoint SDXL.
O que o Card Realmente Testou
O workflow avaliou três checkpoints SDXL, todos usando os mesmos parâmetros de geração:
Checkpoint | Base | Versão | Parâmetros Principais | Fonte
|---|---|---|---|---
Realities Edge XL | SDXL Lightning | V7 (BakedVAE) | CFG 7, steps 25, DPM++ 2M SDE, seed 1 | https://civitai.com/images/7804518 Juggernaut XL | SDXL | V9 + RunDiffusionPhoto 2 | CFG 7, steps 25, DPM++ 2M SDE, seed 1 | https://civitai.com/images/7804589 Albedo Base XL | SDXL | V2.1 | CFG 7, steps 25, DPM++ 2M SDE, seed 1 | https://civitai.com/images/7805074
Metadados de geração de cada modelo confirmam valores idênticos: cfgScale:7, steps:25, sampler:DPM++ 2M SDE, seed:1 [[2]](https://civitai.com/images/7804518) [[3]](https://civitai.com/images/7804589) [[4]](https://civitai.com/images/7805074). Todos os três usam arquitetura SDXL-base — confirmado pelos parâmetros consistentes em todas as amostras publicadas.
Suite de Testes de LoRA
As 30 LoRAs abrangem categorias de estilo, de Lava Style a Chrome Style, cobrindo:
- Estilos artísticos: Lava Style, Liquid Flow Style, Chocolate Wet Style, Midas Magic Grimoire, Tempest Magic Grimoire, Hedgerow Style, Wooden Blocks Style, Cardboard, Dataviz, Dippers Style
- Estilos técnicos/efeitos: Clockwork/Steampunk, Wisp Elementals, Gaelic/Celtic Patterns, Eldritch Palette Knife Painting, GlowNeon, KaleidoShatter, Lelo, Line Art, Mechanarion
- Estilos avançados/compostos: Neo Futuristic Tech, Animal Exoskeleton Style, Ember Glut Style, Bling Style, Extinction/fading, Bubblegum Style, Carbon Fiber Style, Chrome Style
Cada uma foi testada com injeção automática de trigger words via node LoRA Auto Trigger [[1]](https://civitai.com/articles/4474).
Erros comuns e correções
Erro | Causa | Correção | Fonte
|---|---|---|---|
Células produzem composições totalmente diferentes | A seed varia entre células | Trave uma única seed em todas as células; o card izolight usa seed 1 [[2]](https://civitai.com/images/7804518) | https://civitai.com/images/7804518 Uma LoRA não mostra efeito visível | Trigger word ausente ou com erro | Use LoRA Auto Trigger (v3) para injetar tags canônicas da API Civitai ou de metadados [[5]](https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words) | https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words Prompts de portrait diluem detalhes do sujeito | Concatenação de prompt cria penalidades de comprimento de token | Mude para ConditioningAverage para mesclar prompts (comportamento v2) [[1]](https://civitai.com/articles/4474) | https://civitai.com/articles/4474 Resultados variam entre execuções de teste | Sampler, steps ou CFG diferem por modelo | Defina os parâmetros centralmente uma vez; propague a todas as células | https://civitai.com/articles/4474 VAE diferente altera as cores | VAE distinto por checkpoint | Use o VAE baked de cada checkpoint; mantenha todos os outros parâmetros idênticos | https://civitai.com/articles/4474
Detalhe Técnico: Arquitetura do LoRA Auto Trigger
O projeto LoRA Auto Trigger é um fork de Extraltodeus/LoadLoraWithTags e adiciona suporte a LoRAs empilhadas de jags111/efficiency-nodes-comfyui [[5]](https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words). Ele extrai trigger words de duas fontes:
- API do Civitai — para modelos hospedados no Civitai
- Metadados de treinamento do modelo — embutidos em arquivos
.safetensorsquando disponíveis
Essa abordagem de duas fontes garante cobertura mesmo para LoRAs distribuídas fora do Civitai. O node retorna tanto civitai_tags_list quanto meta_tags_list como listas Python, que podem ser filtradas e ponderadas via node TagsSelector [[5]](https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words). Isso dá flexibilidade na seleção de trigger words para cada tipo de LoRA.
Evolução de Versão: Três Iterações
v1 — Baseline com Parâmetros Controlados Centralmente
O lançamento inicial estabeleceu a arquitetura central: um único workflow ComfyUI onde todos os parâmetros de geração são definidos uma vez e propagados a cada célula. Isso eliminou a fonte mais comum de artefatos de comparação — drift de parâmetros entre células.
v2 — De Concatenação para Conditionings Médios
O tratamento original de prompts concatenava strings de texto: "portrait of a woman" + "soft window light". Isso criava uma única sequência de tokens onde a atenção poderia diluir entre conceitos não relacionados.
A v2 introduziu conditionings médios para categorias Portrait e Close-up [[1]](https://civitai.com/articles/4474). O node ConditioningAverage do ComfyUI computa embeddings de texto separados para cada componente do prompt, depois os mescla em um único vetor antes de alimentar o U-Net. Isso preserva a direção semântica de cada prompt enquanto evita penalidades de comprimento de token.
Nota: O artigo menciona a mudança mas não explica o mecanismo. O descrito acima é o comportamento padrão do ConditioningAverage do ComfyUI.
v3 — Injeção Automatizada de Trigger Words
A v3 implementou LoRA Auto Trigger [[1]](https://civitai.com/articles/4474) [[5]](https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words). Em vez de trigger words manuais, o node extrai tags canônicas de duas fontes: API do Civitai e metadados de treinamento .safetensors.
Por que isso importa: Ao comparar LoRAs lado a side, inconsistência manual de trigger words introduz viés. Uma LoRA recebe seu trigger canônico exato; outra recebe um trigger com erro ou omitido. Auto-trigger padroniza o que ativa cada LoRA, isolando o modelo em si como única variável.
O que a Fonte Não Revela
Mesmo com um card de teste detalhado, lacunas metodológicas permanecem:
- Conteúdo dos prompts — prompts estão embutidos no anexo SVG/JSON (não acessíveis publicamente). O artigo nota que "better prompts for photo/anime comparison" poderiam melhorar a variedade [[1]](https://civitai.com/articles/4474).
- Layout do grid — o anexo codifica o mapeamento de células, mas o artigo não descreve contagem de linhas/colunas ou atribuição de checkpoint/LoRA.
- Contagem de seeds — apenas seed 1 aparece nos metadados publicados. Seeds adicionais podem ou não ter sido testados por célula.
- Detalhes de Lightning LoRA — o artigo menciona suporte mas não explica como a avaliação de Lightning LoRA difere de LoRA padrão.
- Racional de seleção de modelos — todos três são modelos SDXL fotorrealistas; os critérios de seleção não são especificados.
- Post original do Reddit — o post r/StableDiffusion retornou apenas um SVG de verificação quando acessado; o conteúdo do post não pôde ser lido.
FAQ
Como comparar dois checkpoints Stable Diffusion de forma justa?
Trave toda variável que possa afetar a saída: seed, sampler, steps, CFG, resolução e VAE. Use o mesmo conjunto de prompts nos dois modelos. O card de teste izolight impõe isso via parâmetros controlados centralmente [[1]](https://civitai.com/articles/4474).
Quais parâmetros devem ser mantidos constantes ao comparar LoRAs?
Seed, sampler, steps, CFG, resolução, VAE e checkpoint base. Trigger words também devem ser padronizadas via LoRA Auto Trigger (v3) para evitar o viés de inconsistência manual [[5]](https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words).
Por que usar seed fixa em grids de comparação de modelos?
Uma seed fixa elimina a variância estocástica entre células, então diferenças visuais podem ser atribuídas ao modelo em vez de ruído aleatório. O card izolight usa seed 1 em todas as amostras publicadas [[2]](https://civitai.com/images/7804518).
O que é average conditioning vs concatenação no ComfyUI?
Concatenação junta strings de prompt em uma sequência de tokens; average conditioning (o node ConditioningAverage) computa embeddings separados para cada componente do prompt, depois os mescla em um único vetor. A v2 do card usa média para as categorias Portrait e Close-up [[1]](https://civitai.com/articles/4474).
Como o LoRA Auto Trigger funciona?
O node extrai trigger words canônicas da API do Civitai (para LoRAs hospedadas no Civitai) e dos metadados de treinamento .safetensors. Retorna civitai_tags_list e meta_tags_list como listas Python filtráveis. Um fork de Extraltodeus/LoadLoraWithTags com suporte a LoRAs empilhadas de jags111/efficiency-nodes-comfyui [[5]](https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words).
Armadilhas Comuns de Avaliação vs. Design do Card
Essas armadilhas são amplamente reconhecidas na comunidade Stable Diffusion. O card resolve várias delas pelo design:
Armadilha | Correção do Card
|---|---
Seeds diferentes por célula | Seed única fixa propagada a todas as células Samplers/steps/CFG diferentes por modelo | Parâmetros controlados centralmente Inconsistência manual de trigger words | LoRA Auto Trigger (v3) Veredito com prompt único | Múltiplas categorias de teste (Portrait, Close-up, etc.) VAE diferente | Cada checkpoint usa seu VAE baked; parâmetros idênticos nos demais