Model reference · open weights

PosterOmni

Image MeiGen-AI Image edit 1 build Open weights 38k dl/mo

PosterOmni is an open-weight image model from MeiGen-AI. PosterOmni_v1 (BF16) weighs 40.9 GB; the smallest configuration that runs it is H100 80 GB.

For self-hosting, compare this build's requirements below with the GPU you plan to rent.

  • PosterOmni is a 20.4B parameter image-to-image model developed by MeiGen-AI for unified poster creation.
  • It supports local editing tasks such as rescaling and extending, as well as global creation tasks like layout and style-driven generation.
  • The model operates in English and Chinese and is released under the Apache-2.0 license.

Summary of the MeiGen-AI/PosterOmni_v1 model card, 2026-10-01

What it is

Released byMeiGen-AI
Released2026-02-14
Parameters20.4B
VRAM40.9 GB for the weights

What it runs on

Memory and cards for PosterOmni_v1 (BF16)

40.9 GBweights, file size
5.0 GBworking memory, one 1024² image
537 MBruntime overhead
CardOne imageMemory
RTX 3060 12 GB … L40S 48 GBdoes not fit
A100 80 GBfits78.2 GB
H100 80 GBfits78.1 GB
RTX PRO 6000 Blackwell 96 GBfits93.8 GB
DGX Spark (GB10) 128 GB unifiedfits107 GB
H200 141 GBfits138 GB
B200 180 GBfits176 GB

From the model card

What MeiGen-AI says about PosterOmni

Read the model card


✨ Overview

PosterOmni is a unified image-to-poster framework that bridges two regimes in poster creation:

  • Poster Local Editing: Rescaling, Filling, Extending, Identity-driven
  • Poster Global Creation: Layout-driven, Style-driven
  • Unified Training: Task distillation + unified reward feedback.

This Hugging Face repository currently provides PosterOmni-v1 transformer weights (component-only). Other components (VAE / text encoder / tokenizer / scheduler / processor) should be loaded from a compatible base pipeline.

🔥 News

  • 📄 [2026.02] Paper available on arXiv.
  • 🤗 [2026.02] PosterOmni-v1 transformer weights released on Hugging Face.

🚀 Quick Start

1) Installation

git clone https://github.com/Ephemeral182/PosterOmni.git
cd PosterOmni

conda create -n posteromni python=3.11 -y
conda activate posteromni

pip install -r requirements.txt

2) Load with QwenImageEditPlusPipeline (Transformer from this repo)

This repo provides PosterOmni-v1 transformer weights (Diffusers component-only). Please load a compatible base pipeline (e.g., Qwen/Qwen-Image-Edit-Plus) and replace its transformer with our weights.

⚠️ Component-only: this repo does NOT include model_index.json and other pipeline components, so ...Pipeline.from_pretrained("MeiGen-AI/PosterOmni_v1") will NOT work.

import torch
from PIL import Image
from diffusers import QwenImageEditPlusPipeline

device = "cuda" if torch.cuda.is_available() else "cpu"
dtype = torch.bfloat16 if device == "cuda" else torch.float32

# 1) Load full base pipeline
base_model = "Qwen/Qwen-Image-Edit-Plus"   # change to your compatible base
pipe = QwenImageEditPlusPipeline.from_pretrained(base_model, torch_dtype=dtype).to(device)
pipe.tokenizer_max_length = 1024  # optional

# 2) Plug PosterOmni transformer from this repo
posteromni_id = "MeiGen-AI/PosterOmni_v1"
pipe.transformer = pipe.transformer.__class__.from_pretrained(posteromni_id, torch_dtype=dtype).to(device)

# 3) Run inference
img = Image.open("your_input.jpg").convert("RGB")

# recommended: make width/height multiples of 16
w, h = img.size
w, h = (w // 16) * 16, (h // 16) * 16

prompt = "Rescale image to 1:1"  # for rescaling, include "to W:H"
generator = torch.Generator(device=device).manual_seed(42)

out = pipe(
    image=[img],
    prompt=prompt,
    negative_prompt="",
    width=w,
    height=h,
    num_inference_steps=40,
    true_cfg_scale=4.0,
    guidance_scale=1.0,
    generator=generator,
).images[0]

out.save("posteromni_test.png")
print("Saved: posteromni_test.png")

Notes

  • Rescaling prompts should include to W:H, e.g. Rescale image to 16:9.
  • For full multi-task CLI examples (rescaling/filling/extending/layout/style/ID-driven), please refer to the GitHub repo.

🧠 Method (High-level)

PosterOmni is trained with a four-stage workflow:

  1. Task-specific SFT: train specialized experts for local editing and global creation tasks.
  2. Task Distillation: distill expert knowledge into a single multi-task model.
  3. Unified Reward Training: learn a universal reward for text fidelity, visual consistency, and aesthetics.
  4. Omni-Edit Reinforcement Learning: further align the model with unified reward feedback.

📚 PosterOmni Dataset

We introduce a unified data suite with PosterOmni-200K (training) and PosterOmni-Bench (evaluation) for image-to-poster generation. PosterOmni-200K contains 200K+ paired samples covering six tasks—local editing (Rescaling, Filling, Extending, Identity-driven) and global creation (Layout-driven, Style-driven)—and spans six poster themes: Products, Food, Events/Travel, Nature, Education, Entertainment. PosterOmni-Bench provides 540 Chinese and 480 English prompts, evenly distributed across the same six themes for consistent evaluation across tasks.


📊 Performance Benchmarks


🧩 Supported Tasks

RegimeTasks
Poster Local EditingRescaling · Filling · Extending · Identity-driven
Poster Global CreationLayout-driven · Style-driven

🔗 Related Project

We also have another text-to-poster work that may interest you:

[ICLR 2026] PosterCraft: Rethinking High-Quality Aesthetic Poster Generation in a Unified Framework


📌 Model Files

This repository provides:

  • config.json
  • diffusion_pytorch_model-*.safetensors
  • diffusion_pytorch_model.safetensors.index.json

(i.e., Transformer2DModel weights in Diffusers format.)


📬 Contact

Sixiang Chen: schen691@connect.hkust-gz.edu.cn

Jianyu Lai: jlai218@connect.hkust-gz.edu.cn

Jialin Gao: gaojialin04@meituan.com

Hengyu Shi: qq1842084@gmail.com

Zhongying Liu: liuzhongying@meituan.com


📝 Citation

If you find PosterOmni useful for your research, please cite:

@article{chen2026posteromni,
  title={PosterOmni: Generalized Artistic Poster Creation via Task Distillation and Unified Reward Feedback},
  author={Chen, Sixiang and Lai, Jianyu and Gao, Jialin and Shi, Hengyu and Liu, Zhongying and Ye, Tian and Luo, Junfeng and Wei, Xiaoming and Zhu, Lei},
  journal={arXiv preprint arXiv:2602.12127},
  year={2026}
}

Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.

Running it yourself

Run it on a rented GPU

Rent a machine by the hour. ComfyUI is installed on it. Open ComfyUI through the tunnel and load the workflow from the model's card on Hugging Face; choose this model's file in its loader.

# on your rented machine (the ssh line is on its page in the console)
# get REPO FILE FOLDER: one file into /workspace/models/FOLDER, where ComfyUI loads it from
get() { hf download "$1" "$2" --local-dir /workspace/hf-files && mkdir -p "/workspace/models/$3" && mv "/workspace/hf-files/$2" "/workspace/models/$3/$4"; }

# the model (937 MB)
get MeiGen-AI/PosterOmni_v1 diffusion_pytorch_model-00005-of-00005.safetensors diffusion_models

start-comfyui
Renting a GPU: connect, tunnels, ComfyUI
# on your computer, in a second terminal: ComfyUI in your browser at http://localhost:8188
# HOST, PORT and BOOKING are your machine's, from its page in the console
ssh -o HostKeyAlias=axforge-BOOKING -o StrictHostKeyChecking=accept-new -L 8188:localhost:8188 dev@HOST -p PORT
© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms