IRIS: Iterative Refinement Image Synthesizer
A mobile-first image generation architecture designed from recent research (2025-2026).
17/17 tests pass — all modules verified for shape correctness, gradient flow, weight sharing, numerical stability, and actual training convergence.
See iris/README.md for full documentation.
Quick Start
from iris import IRIS, get_model_config, flow_matching_loss, euler_sample
import torch
model = IRIS(**get_model_config("iris-small")) # 40M params
z_0 = torch.randn(4, 32, 16, 16) * 2.5
text_emb = torch.randn(4, 16, 512)
losses = flow_matching_loss(model, z_0, text_emb, num_iterations=4)
losses["loss"].backward()
Model Variants
| Config | Params | Tokens | FP16 Memory |
|---|---|---|---|
| iris-tiny | 10.3M | 16 | 21 MB |
| iris-small | 40.0M | 16 | 80 MB |
| iris-base | 53.4M | 64 | 107 MB |
| iris-medium | 181.2M | 64 | 362 MB |
| iris-large | 430.9M | 64 | 862 MB |