Vibeleaderboard
Index / tool
Visit bytedance.github.io
Category
AI Tools
Rank
No. 1078Tools index
Pricing
Open Source
Type
TOOL
Builder
bytedance
Date

About

Universal customization method for both single- and multi-subject image generation, built on diffusion transformers (ICCV 2025).

What it does

UNO takes a text prompt plus one or more reference images, then places those subjects into a newly generated scene. One model handles single-subject and multi-subject requests. It supports local generation, batch evaluation, model training, and an interactive browser demo.

Why it's ranked here

UNO offers an unusually complete research workflow: published checkpoints, inference and training code, an interactive demo, dataset preparation guidance, and dedicated evaluation scripts. Its strongest case is controlled subject reuse across compositions. The substantial checkpoint footprint, GPU demands, and acknowledged generalization limits keep it from being a casual image tool.

What's good

Reference handling scales from one image to several without switching models. Users can control prompt, dimensions, guidance, sampling steps, seed, and reference size. The project also supplies DreamBench evaluation using text alignment and image-similarity measures, plus distributed LoRA training with checkpoint resumption.

Tradeoffs

The full checkpoint set requires 37 GB of storage. Even the low-memory FP8 and offload configuration peaks around 16 GB of video memory, with reported generation taking 40 seconds to one minute on an RTX 3090. The authors also acknowledge weaker generalization caused by dataset constraints, and larger output sizes become less stable.

How to use it well

UNO best suits researchers and engineers testing subject-preserving image composition on capable local hardware. Start with the browser demo, then move reproducible prompt sets into batch inference and DreamBench evaluation. Use the training extra and UNO-1M only when adapting the model. It does not eliminate separate base-model downloads or their licensing terms.

Technical notes+

pyproject.toml defines a Python 3.10 through 3.12 setuptools package with inference dependencies and train and dev extras. app.py wraps UNOPipeline in Gradio, exposing up to four reference images and generation controls. inference.py uses Accelerator, preprocesses one reference at 512 pixels or multiple references at 320 by default, and writes PNG plus JSON metadata. train.py freezes the VAE, T5, CLIP, and base diffusion transformer, installs LoRA attention processors, and trains through Accelerate with separate DeepSpeed plugins. uno/flux/model.py concatenates reference-image tokens with generated-image tokens before rotary position embedding and transformer processing. uno/flux/util.py resolves local environment paths or downloads FLUX and UNO safetensors from Hugging Face. The two scripts under eval/ compute CLIP text, CLIP image, and DINO image similarity for single-subject and multi-subject DreamBench runs.

Observed

License
Apache-2.0 for the code; base models remain subject to their original license terms.
Primary language
Python
Python support
Python 3.10 through 3.12
Installation
Editable pip package, with an optional train extra for Accelerate and DeepSpeed.
Interfaces
Command-line inference and training scripts, plus a local Gradio browser interface.
Model distribution
Checkpoints are downloaded automatically from Hugging Face or supplied through environment variables.
Platform declaration
Package metadata declares operating-system independence; setup notes cover NVIDIA, AMD, and macOS MPS Torch installations.
Evaluation surface
Separate DreamBench evaluation scripts cover single-subject and multi-subject output using CLIP and DINO similarities.

Read from README.md, pyproject.toml, requirements.txt, app.py, train.py, inference.py, template/uno_instructions.py, eval/evaluate_clip_dino_score_multi_subject.py, eval/evaluate_clip_dino_score_single_subject.py, uno/flux/math.py, uno/flux/util.py, uno/flux/model.py.

What it can do

  • Generate images for single subjects

    Text prompts and subject specificationsCustomized images with single subject

  • Generate images for multiple subjects

    Text prompts and multiple subject specificationsCustomized images with multiple subjects

  • Customize image generation using diffusion transformers

    Customization parameters and image requirementsTailored generated images

  • Apply universal customization across different image types

    Various image generation requests and customization settingsConsistently customized images across different scenarios

Tags

diffusionimage-generationtext-to-imagefluxresearch

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.