6f0cb99919
## Motivation Add support for FLUX.1-Kontext-dev, an image editing variant of FLUX.1-dev ## Changes - New FluxKontextModelAdapter: Handles Kontext's image-to-image workflow - encodes input image as conditioning latents with special position IDs, generates from pure noise - Model config: 57 transformer blocks (19 joint + 38 single), guidance scale 4.0, ImageToImage task - Pipeline updates: Added kontext_image_ids property to PromptData interface, passed through diffusion runner - Model cards: Added TOML configs for base, 4-bit, and 8-bit variants - Dependency: mflux 0.15.4 → 0.15.5 - Utility: tmp/quantize_and_upload.py for quantizing and uploading models to HuggingFace ## Test Plan ### Manual Testing Works better than Qwen-Image-Edit
46 lines
901 B
TOML
46 lines
901 B
TOML
model_id = "exolabs/FLUX.1-Kontext-dev-8bit"
|
|
n_layers = 57
|
|
hidden_size = 1
|
|
supports_tensor = false
|
|
tasks = ["ImageToImage"]
|
|
|
|
[storage_size]
|
|
in_bytes = 21426029632
|
|
|
|
[[components]]
|
|
component_name = "text_encoder"
|
|
component_path = "text_encoder/"
|
|
n_layers = 12
|
|
can_shard = false
|
|
|
|
[components.storage_size]
|
|
in_bytes = 0
|
|
|
|
[[components]]
|
|
component_name = "text_encoder_2"
|
|
component_path = "text_encoder_2/"
|
|
n_layers = 24
|
|
can_shard = false
|
|
safetensors_index_filename = "model.safetensors.index.json"
|
|
|
|
[components.storage_size]
|
|
in_bytes = 9524621312
|
|
|
|
[[components]]
|
|
component_name = "transformer"
|
|
component_path = "transformer/"
|
|
n_layers = 57
|
|
can_shard = true
|
|
safetensors_index_filename = "diffusion_pytorch_model.safetensors.index.json"
|
|
|
|
[components.storage_size]
|
|
in_bytes = 11901408320
|
|
|
|
[[components]]
|
|
component_name = "vae"
|
|
component_path = "vae/"
|
|
can_shard = false
|
|
|
|
[components.storage_size]
|
|
in_bytes = 0
|