Pular para o conteúdo principal

FLUX.1 Dev LoRA: monte um briefing de estilo que mantém a cena útil

Rode um FLUX.1 Dev LoRA sem perder o assunto: controle sem adaptador, valores de escala e guidance para começar e quando trocar para edição com máscara.

Autor
Lydia
Publicado
Leitura
12 min de leitura
Atualizado
Dois adultos em uma mesa de ateliê de cerâmica olhando para um jarro cobalto sobre linho creme

Para rodar um FLUX.1 Dev LoRA pela API, envie a URL dos pesos e uma escala na lista loras. Para manter o assunto intacto, rode a cena uma vez sem adaptador e depois acrescente o arquivo com a mesma seed, o mesmo guidance e os mesmos passos, mudando apenas a escala da LoRA. Um ponto de partida que funciona é escala 1, guidance 3.5, 28 passos e quadro quadrado. Arquivos de realismo costumam ficar melhores com guidance entre 2.5 e 3. Um controle mais três degraus de escala dão quatro imagens a $0,018 cada, ou $0,072. Guarde o resultado em que os objetos ainda funcionam, não o de aparência mais forte.

A cena trabalhada é um jarro fictício cobalto fosco com uma alça em formato de crescente sobre linho creme.

Decida o que o adaptador deve contribuir

A cena precisa de um jarro legível, um bico curto, uma alça aberta e contato com o linho, com luz suave e textura de cerâmica contida. Se o adaptador acrescentar brilho dramático ou ornamento trabalhado, ele pode estar funcionando e ainda assim estar errado para este briefing.

Para uma versão com personagem adulto, troque o jarro por um adulto fictício de 35 anos, de camisa marinho abotoada, ao lado de uma parede de estúdio lisa, e mantenha pose e roupa idênticas em todas as condições.

Jarro de cerâmica cobalto com a abertura da alça visível sobre linho creme

Ilustração, não é um resultado do FLUX: o assunto-alvo, com um corpo, uma abertura de alça e um bico curto.

Escolha um arquivo compatível com o FLUX.1 Dev

Um arquivo compatível cita o FLUX.1 Dev como base de treinamento. Uma LoRA de outro lançamento do FLUX, de arquitetura específica para edição, de SDXL, Z-Image ou Qwen-Image vai carregar e quase não mudar nada, então verifique a base primeiro. Use em path um link direto para o arquivo de pesos, não a página que o descreve: uma URL de página é recusado no envio, e um repositório bloqueado que exige login também é recusado no envio.

Por exemplo, o model card de fotorrealismo da XLabs cita o FLUX.1 Dev como base, e o link direto de arquivo usado no código abaixo termina em /resolve/main/lora.safetensors (cerca de 22 MB). O card aplica a licença não comercial do FLUX.1 Dev ao próprio arquivo; leia os termos antes de usar as saídas em trabalho para clientes.

Se o card documentar uma frase-gatilho, coloque-a primeiro no prompt exatamente como está escrita (o card da XLabs não documenta nenhuma). Se ele indicar uma força recomendada, comece por ela; caso contrário use a escada abaixo.

Teste primeiro no Playground

Abra FLUX.1 Dev LoRA texto para imagem na aba Playground, na visão Form, e entre com uma conta com saldo para rodar. Comece pelo controle, uma execução sem pesos:

  1. Cole o prompt abaixo em Prompt. O FLUX segue prompts longos e específicos, então escreva frases completas. Não há campo de prompt negativo, então diga o que você quer ("one handle", "no lettering") em vez de listar exclusões.
  2. Defina Aspect ratio como 1:1.
  3. Em Style LoRAs, pressione Remove item até a lista ficar vazia.
  4. Abra Advanced parameters e defina Prompt adherence como 3.5, Sampling steps como 28, Output format como PNG e Seed como 17231.
  5. Rode o modelo e salve a imagem.

One matte cobalt ceramic pitcher with a rounded body, short spout and one crescent handle on cream linen. Whole vessel visible, open handle against a quiet cream wall, oak stool behind without overlap. Soft daylight from the left, natural ceramic texture, contact shadow. Square composition, no lettering or extra vessels.

Se esse controle tiver duas alças ou a base flutuando, corrija a cena primeiro: afaste o banquinho da abertura da alça, peça uma vista de três quartos mais clara ou remova o banquinho. Um prompt alterado muda a imagem mesmo com a mesma seed, então mantenha o texto idêntico em todas as execuções seguintes.

Depois acrescente um adaptador. Pressione Add item, cole o link direto dos pesos em LoRA file (um arquivo alcançável e que você tem autorização para usar) e defina Strength como 1. Não mude mais nada e rode de novo. A força 1 aplica o arquivo como seu autor o treinou, e o campo aceita de 0 a 4. Rode 0.8, 1.0 e 1.2 como escada (acrescente 0.5 se 0.8 ainda estiver forte demais): desça na direção de 0.8 se a aparência estiver pesada; estilos de ilustração fortes podem precisar de um pouco acima de 1. Não empilhe três arquivos antes de um deles se provar. Se o arquivo precisar de gatilho, rode também o gatilho sozinho, sem LoRA; o texto sozinho já pode deslocar a imagem base.

Se um arquivo de realismo parecer encerado ou nítido demais, refaça a melhor força com Prompt adherence em 2.5 e a mesma seed. Prompt adherence define o quanto a imagem segue o prompt; não é a força do adaptador.

Depois rode pelo código

O mesmo controle e os três degraus de força, com a seed e todos os outros campos constantes. Instale o Python SDK (pip install spicyapi), defina SPICY_API_KEY no ambiente do servidor e rode:

python
import uuid
from spicyapi import SpicyClient, output_assets

client = SpicyClient()  # reads SPICY_API_KEY from the environment

PROMPT = ("One matte cobalt ceramic pitcher with a rounded body, short spout and one crescent handle "
          "on cream linen. Whole vessel visible, open handle against a quiet cream wall, oak stool "
          "behind without overlap. Soft daylight from the left, natural ceramic texture, contact "
          "shadow. Square composition, no lettering or extra vessels.")
WEIGHTS = "https://huggingface.co/XLabs-AI/flux-RealismLora/resolve/main/lora.safetensors"  # XLabs realism, FLUX.1 Dev; swap in your own file
# 4 images x $0.018 = $0.072

for scale in (None, 0.8, 1.0, 1.2):  # None = control with no adapter
    task = client.create_task(
        model="black-forest-labs/flux-1-dev-lora/text-to-image",
        input_data={
            "prompt": PROMPT,
            "aspect_ratio": "1:1",
            "loras": [] if scale is None else [{"path": WEIGHTS, "scale": scale}],
            "guidance_scale": 3.5,
            "steps": 28,
            "seed": 17231,
            "output_format": "png",
        },
        idempotency_key=str(uuid.uuid4()),
    )
    final = client.wait_for_terminal(task["taskId"])
    if final["state"] != "succeeded":
        raise RuntimeError(f"{task['taskId']} ended as {final['state']}: {final.get('errorCode')}")
    assets = output_assets(final)
    if not assets or any(a.get("pending") or a.get("unavailable") or not a.get("url") for a in assets):
        raise RuntimeError(f"Task {task['taskId']} has no ready output; check this task before running more images")
    print(scale, assets[0]["url"])  # copy the image to your own storage now

Criação, espera, download, novas tentativas e códigos de erro estão no guia de tasks e na referência do Python SDK. Os pesos são baixados em cada job, então a primeira chamada com um arquivo grande é mais lenta que uma execução comum (veja Rode sua própria LoRA em uma API hospedada).

Ou deixe um Agent rodar

Quando um assistente deve fazer a comparação, as três ferramentas oficiais mostram o preço e pedem confirmação antes de uma chamada paga.

  • CLI. Coloque o objeto input de uma condição em input.json e então:

``bash spicyapi tasks create --model black-forest-labs/flux-1-dev-lora/text-to-image --input-file input.json --wait ``

Veja a documentação da CLI; npx @spicyapi/cli funciona sem instalar.

  • Servidor MCP. Adicione o servidor MCP ao seu assistente e peça: "Run FLUX.1 Dev LoRA with this prompt, seed 17231, no LoRA, then again with this weights link at strength 0.8, 1 and 1.2." Ele chama spicyapi_task_create, que para na confirmação de preço, e depois spicyapi_task_wait.
  • Skill. npx skills add spicyapi-ai/spicy-skill instala o Agent Skill, que faz um assistente de programação ler o esquema real do modelo em vez de adivinhar campos.

Não confunda os controles

ControleFaixa na tarefa de texto para imagemUso nesta comparação
loras (Style LoRAs)até 3, cada um com path e scaleComece com um; o controle sem arquivo usa []
Escala da LoRA (Strength)0–4, 1 aplica o arquivo como treinadoVarie este valor mantendo as demais configurações
guidance_scale (Prompt adherence)0–20, padrão 3.5Deixe em 3.5; tente 2.5 para realismo encerado
steps (Sampling steps)1–50, padrão 28Deixe em 28 para evitar outra condição variável
seed0–2147483647Mantenha 17231 para as execuções continuarem comparáveis
FormatosJPEG (padrão), PNG, WebPPNG

A tarefa oferece nove proporções de tela (de 21:9 a 9:21, todas com cerca de um megapixel e o mesmo preço), mas não tem resolução nem campos independentes de largura e altura, não tem entrada de imagem nem máscara. Uma entrada com scale: 0 ainda pode buscar o arquivo, então não substitui o controle com lista vazia.

Conserte um experimento de adaptador que falhou

ProblemaPróximo passo concreto
Requisição recusada ou falha depoisConfirme se path retorna o arquivo .safetensors sem login, e não uma página de model card. Um host digitado errado ou um arquivo que some depois é aceito no envio e falha em seguida.
A imagem quase não mudaConfirme se a base do arquivo é FLUX.1 Dev e se o gatilho exigido está no início do prompt; depois aumente a escala em 0.2.
O estilo sufoca o objetoReduza a escala na direção de 0.8 ou 0.6.
O realismo parece enceradoBaixe o guidance para 2.5 com a mesma seed.
A alça fica maciça ou duplicadaBaixe a escala ou rejeite esse arquivo para este assunto.
O gatilho sozinho produz a aparênciaA aparência vem das palavras, não do arquivo; julgue o arquivo só pelo que ele acrescenta além da imagem com apenas o gatilho.
O estilo é útil, mas a forma do produto mudaUse o editor com máscara (próxima seção) ou componha a camada do produto.

Compare o recipiente, a borda da alça e a parede no mesmo tamanho de exibição e escolha pelo tratamento e pela estrutura utilizável, não por quanto mudou.

Use o editor quando uma fonte precisa guiar a imagem

FLUX.1 Dev LoRA edição é uma segunda tarefa no mesmo modelo, também a $0,018 por imagem. Exige image_url e prompt e aceita a mesma lista loras, o mesmo guidance e os mesmos passos. Dois controles são novos: strength (de 0 a 1, padrão 0.8), que define o quanto o resultado se afasta da fonte, e um mask_url opcional, uma imagem em preto e branco do mesmo tamanho em que o branco é redesenhado e o preto é mantido. Fonte e máscara são limitadas a 10 MB cada, e ambas podem ser um link público para o arquivo.

No padrão 0.8 a pose e o layout se mantêm; por volta de 0.95 o modelo redesenha quase tudo. Comece em 0.8 e avance em passos de 0.05, mudando por execução apenas a força ou a escala da LoRA: se a fonte aparecer, aumente; se a forma derivar, reduza. Com máscara, use de 0.9 a 1 para que a área branca realmente mude, e descreva apenas o que pertence à área branca.

Um uso prático para este briefing: mantenha o jarro que você aprovou e reestilize tudo ao redor dele. No Playground, abra a tarefa de edição, coloque a imagem de controle em Input image, pinte a parede e o linho de branco e o jarro de preto em uma imagem do mesmo tamanho e adicione-a em Advanced parameters como Mask, depois defina Transformation strength como 0.95, acrescente seus pesos em Style LoRAs e use um prompt apenas para o novo tratamento: "Cream linen with deep folds and a quiet plaster wall, soft daylight from the left, restrained film grain." Mantenha a seed, Prompt adherence em 3.5 e Sampling steps em 28 do controle. Em requisições de API os mesmos campos são image_url, mask_url, strength e loras no modelo black-forest-labs/flux-1-dev-lora/edit.

Suavize a borda da máscara ou siga o contorno do objeto; um retângulo duro deixa uma emenda visível. A edição segue a forma da fonte, então não há campo aspect_ratio, e o resultado volta com cerca de 0.7 megapixels (uma fonte de 1024 x 1536 volta como 672 x 1008), menor que um quadro de texto para imagem. Quando os pixels exatos do produto forem obrigatórios, mantenha a camada original do produto sobre um fundo preparado separadamente e trate essa composição como acabamento.

Mãos organizando uma fotografia de um jarro cobalto, um desenho a lápis e uma placa de esmalte numa mesa de oficina

Materiais de referência do briefing: uma fotografia, um desenho e amostras de esmalte.

Conteúdo adulto: o que a LoRA muda e o que não muda

O FLUX.1 Dev LoRA é um caminho sem censura: a SpicyAPI não adiciona filtro de conteúdo da plataforma, e LoRAs voltadas a adultos carregam e são renderizadas. Carregar uma LoRA não define o escopo de conteúdo; o modelo base ainda decide o que volta. Com base nos nossos testes de setembro de 2026, o modelo puro entregou imagens NSFW sugestivas e de tronco superior a partir de texto, e suavizou pedidos de figura inteira e de duas pessoas. Com uma LoRA para adultos carregada, o teste mais forte produziu imagens NSFW avançadas, mas nunca a cena de intensidade máxima. Na edição, um pedido de tronco superior sobre um retrato vestido voltou como pedido em strength 0.95 (com ou sem LoRA) e em 1 com máscara, mas foi suavizado em 0.85, então aumente a strength antes de trocar de modelo. FLUX é sem censura? traz os resultados nível por nível.

Uma LoRA de estilo fotográfico muda a aparência, não o escopo de conteúdo. Use apenas adultos fictícios ou pessoas com consentimento documentado.

Para onde ir depois

Deixe a LoRA de fora se a execução pura já atende ao briefing. Para verificar um arquivo novo quanto a links quebrados e pesos inertes em toda uma biblioteca, veja Rode sua própria LoRA em uma API hospedada. Para o mesmo método de controle primeiro em outra base, veja o teste Z-Image Turbo LoRA com a mesma seed.

Também em English · 日本語 · 한국어 · Deutsch · Français · Español · Русский · Italiano · Polski

Coloque este guia em prática

Experimente você mesmo

Você paga só pelo que executar — sem plano e sem assinatura.

Feito com MiniMax H3 · ByteDance Seedance 2.0 Fast