SIA weights
LoRA adapters for SIA: Selective Image Analogy (SIGGRAPH Asia 2026), for two backbones. A demonstration pair (A, A') can contain several edits; SIA lets you choose which of them are transferred to a new image B.
Built with Qwen: the qwen_image21/ adapters are fine-tuned from
Qwen-Image-2.1 (Qwen RESEARCH LICENSE AGREEMENT, non-commercial research and evaluation only).
The flux2_klein/ adapters are fine-tuned from
FLUX.2 [klein] Base 9B (FLUX Non-Commercial License v2.1).
Each folder has its own LICENSE and NOTICE; see License.
SIA is not an official product of, and is not endorsed by, the Qwen team or Black Forest Labs.
Project page | Code | Paper | Dataset
Contents
Each backbone folder is independent: it has its own weights, config.json files, license and notice.
flux2_klein/ base model black-forest-labs/FLUX.2-klein-base-9B (license: FLUX Non-Commercial License)
LICENSE.md NOTICE
analora/ pytorch_lora_weights.safetensors config.json stage 1, step 2000
exlora/ analora.safetensors exlora.safetensors config.json stage 2, step 250
qwen_image21/ base model Qwen/Qwen-Image-2.1 (license: Qwen RESEARCH LICENSE AGREEMENT)
LICENSE NOTICE
analora/ pytorch_lora_weights.safetensors config.json stage 1, step 2000
exlora/ analora.safetensors exlora.safetensors config.json stage 2, step 5000
| Folder | Use it for |
|---|---|
<backbone>/exlora/ |
Full SIA. Selective transfer: ExLoRA is gated to the tokens of the edits you want to suppress. |
<backbone>/analora/ |
The analogy LoRA alone (transfers every edit of the demonstration), and the initialisation of stage 2. |
- AnaLoRA learns the full analogy from (A, A', B) tuples.
- ExLoRA is a second LoRA applied only at the token positions of suppressed edits. During stage 2 the AnaLoRA is fine-tuned together with ExLoRA under an anchor loss, so
exlora/analora.safetensorsis a re-trained AnaLoRA and differs fromanalora/. Theexlora/folders are therefore self-contained. - Rank 16, alpha 16, float32. Each folder has a
config.jsonwith the exact settings. - Each
analora/file is the unmodified training checkpoint. The two files in eachexlora/are the stage-2base_lora.ptandselective_lora.ptcheckpoints converted losslessly to safetensors (all tensors verified bit-identical).
Download
from huggingface_hub import snapshot_download
# one backbone, full SIA
path = snapshot_download("selective-image-analogy/SIA-weights", allow_patterns=["flux2_klein/exlora/*", "flux2_klein/NOTICE", "flux2_klein/LICENSE.md"])
path = snapshot_download("selective-image-analogy/SIA-weights", allow_patterns=["qwen_image21/exlora/*", "qwen_image21/NOTICE", "qwen_image21/LICENSE"])
These weights are used with the code in the GitHub repository; they are not a stand-alone Diffusers pipeline.
| Backbone | Inference settings |
|---|---|
flux2_klein |
native 384x512 images (image_size: [384, 512]), 28 denoising steps |
qwen_image21 |
resolution: 512 (area-based sizing), 40 denoising steps, KV cache on |
Training details
| FLUX.2 [klein] AnaLoRA | FLUX.2 [klein] ExLoRA | Qwen-Image-2.1 AnaLoRA | Qwen-Image-2.1 ExLoRA | |
|---|---|---|---|---|
| Data | subjects config of the SIA dataset |
same | same | same |
| Learning rate | 5e-05 | ExLoRA 5e-05, AnaLoRA 5e-05 (anchor weight 0.1) | 0.0002 | ExLoRA 0.0002, AnaLoRA 5e-05 (anchor weight 0.1) |
| Batch size | 16 | 18 | 16 | 16 |
| Checkpoint published | step 2000 | step 250 | step 2000 | step 5000 |
The checkpoints are intermediate checkpoints of training runs that were stopped before their planned length. Exact configurations are in the per-folder config.json files.
Intended use and limitations
- Research on selective multi-edit image analogy. Not for commercial use (see License).
- FLUX License section 2(e): if you generate outputs with the
flux2_klein/adapters, you must either keep content filters in place or review the outputs for unlawful or infringing content, and indicate that outputs are AI-generated where the law requires it. - Trained on a synthetic dataset (edited images were produced with image-editing models) with English edit descriptions, 2 to 4 edits per demonstration, at about 384x512 resolution.
- Selective transfer can fail: the edits you want to leave out may partly leak, or the edits you keep may be applied weakly. See the paper for evaluation and analysis.
License
The two backbones carry different licenses. Each folder's weights are derivative works of its base model and are governed by that base model's license, whose full text is in the folder:
| Folder | License | Notes |
|---|---|---|
flux2_klein/ |
FLUX Non-Commercial License v2.1 | Derivatives of FLUX.2 [klein] Base 9B. See flux2_klein/NOTICE. Not an official Black Forest Labs product. |
qwen_image21/ |
Qwen RESEARCH LICENSE AGREEMENT | Modifications of Qwen-Image-2.1, for non-commercial research and evaluation only. See qwen_image21/NOTICE. Built with Qwen. |
- Using one backbone does not require accepting the other backbone's license, but you must keep the license and notice files of any folder you redistribute.
- Code: MIT (GitHub repository). Dataset: CC BY-NC 4.0.
Citation
@inproceedings{alimohammadi2026sia,
title = {SIA: Selective Image Analogy},
author = {Alimohammadi, Amirhossein and Izadpanah, Kian and Kariminia, Bardiya and Chrysanthou, Yiorgos and Mahdavi-Amiri, Ali},
booktitle = {SIGGRAPH Asia 2026 Conference Papers},
year = {2026},
doi = {10.1145/3829340.3842205}
}
Model tree for selective-image-analogy/SIA-weights
Base model
Qwen/Qwen-Image-2.1