FLUX.1-Kontext-dev: Modelo de IA para Aumento de Imagens
Modelo de IA para aprimorar imagens com instruções textuais
A Black Forest Labs lançou o FLUX.1-Kontext-dev, um modelo avançado de IA para transformação de imagem em imagem que aprimora imagens existentes usando instruções de texto.
Diferente do FLUX.1-dev, que gera imagens apenas a partir de texto, o FLUX.1-Kontext-dev utiliza tanto uma imagem de entrada quanto um prompt de texto para criar versões modificadas, preservando elementos-chave.
Esta imagem demonstra a capacidade do FLUX.1-Kontext-dev de aprimorar imagens.
A imagem original do mascote Go:

foi transformada com a instrução this gopher rides on the bicycle on the hilly road. Um resultado decente, não é?
O que é o FLUX.1-Kontext-dev?
O FLUX.1-Kontext-dev foi desenvolvido para geração e edição de imagens em contexto. Suas principais funcionalidades incluem:
- Consistência de Personagens: Preserva elementos únicos (como personagens ou objetos) em várias cenas
- Edição Local: Modifica partes específicas de uma imagem sem afetar o restante
- Referência de Estilo: Gera novas cenas mantendo os estilos de imagens de referência
- Aumento de Imagem: Transforma imagens com base em instruções de texto
Instalação
Pré-requisitos
Você precisará de:
- 16GB+ de VRAM na sua GPU (NVIDIA RTX recomendada)
- Python 3.8+ com pip
- Acesso ao Hugging Face (conta e token)
Etapas de Configuração
-
Crie uma conta no Hugging Face em huggingface.co caso ainda não tenha uma
-
Acesse a página do modelo: https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev
-
Aceite o acordo de licença (uso não comercial)
-
Crie um token de acesso de escrita em https://huggingface.co/settings/tokens
-
Baixe o modelo:
git clone https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev
Ou use o caminho do modelo diretamente no seu código.
Instalação
Instale os pacotes Python necessários:
pip install -U diffusers torch transformers pillow accelerate sentencepiece
Ou usando o uv:
cd tools/fkon
uv sync
Uso
Script Python Básico
Aqui está um exemplo completo usando o FLUX.1-Kontext-dev:
import torch
from diffusers import FluxKontextPipeline
from PIL import Image
# Carregar o modelo
model_path = "/path/to/FLUX.1-Kontext-dev"
pipe = FluxKontextPipeline.from_pretrained(
model_path,
torch_dtype=torch.bfloat16
)
# Habilitar offloading para CPU para economizar VRAM
pipe.enable_model_cpu_offload()
pipe.enable_sequential_cpu_offload()
# Carregar sua imagem de entrada
input_image = Image.open("path/to/your/image.png").convert("RGB")
# Defina seu prompt de aumento
prompt = "this gopher rides on the bicycle on the hilly road"
# Gerar imagem aumentada
result = pipe(
prompt=prompt,
image=input_image,
height=496,
width=680,
guidance_scale=3.5,
num_inference_steps=60,
max_sequence_length=512,
generator=torch.Generator("cpu").manual_seed(42)
)
# Salvar o resultado
output_image = result.images[0]
output_image.save("augmented_image.jpg")
Tratamento de Dimensões
O FLUX.1-Kontext-dev possui requisitos específicos de dimensões:
- Múltiplos de 16: As dimensões devem ser múltiplas de 16
- Ajuste automático: O modelo pode ajustar as dimensões para atender aos seus requisitos
- Redimensionamento de saída: Nossa ferramenta redimensiona automaticamente a saída de volta para as dimensões solicitadas
A ferramenta lida com isso da seguinte forma:
- Arredondando as dimensões solicitadas para múltiplos de 16
- Redimensionando a imagem de entrada para as dimensões arredondadas
- Gerando a imagem (o modelo pode ajustar ainda mais)
- Redimensionando a saída de volta para as dimensões solicitadas
Casos de Uso Exemplo
- Transformação de Personagens
Transforme um personagem mantendo a consistência:
prompt = "this gopher rides on the bicycle on the hilly road"
- Remoção de Objetos
Remova elementos indesejados:
prompt = "please remove the human dressed as minnie mouse from this photo"
Dicas e Melhores Práticas
- Gerenciamento de VRAM: Use
enable_model_cpu_offload()se tiver VRAM limitada - Planejamento de Dimensões: Solicite dimensões que sejam múltiplos de 16 para minimizar ajustes
- Clareza no Prompt: Seja específico nas instruções de texto para obter melhores resultados
- Geração em Lote: Gere várias variações (
--n 4) para obter o melhor resultado - Controle de Seed: Use seeds manuais para resultados reproduzíveis
Limitações
- Licença não comercial: Requer licença comercial para uso empresarial
- Intensivo em hardware: Necessita de uma GPU potente com VRAM significativa
- Restrições de dimensão: Pode ajustar dimensões automaticamente
- Tempo de processamento: Pode levar de 10 a 15 minutos por imagem, dependendo do hardware