MeiGen-AI/PosterReward_v1

Model

Overview

3

13 commits

1 linked in READMEs

updated Apr 2, 2026

See the code

README

PosterReward: Unlocking Accurate Evaluation for High-Quality Graphic Design Generation

PosterReward Logo

Paper Project Code arXiv

Overview

PosterReward is a dedicated reward modeling framework for poster assessment. It builds a 70k poster preference dataset from multi-MLLM consensus and introduces specialized models for poster quality evaluation across five dimensions:

  1. Foundational Visual Quality
  2. AI Artifacts
  3. Textual Accuracy
  4. Prompt Fidelity
  5. Aesthetic Value

Available Models

This repository contains three model variants, all built on Qwen3-VL-8B:

ModelPathTypeDescription
PosterReward AnalyserPosterReward_analyser/Generative VLMGenerates detailed multi-dimensional analysis of poster images
PosterReward ScorerPosterReward_scorer/Scalar Reward ModelTakes analysis + image and produces a scalar reward score
PosterReward-LitePosterReward-Lite/Scalar Reward ModelSimplified pointwise scorer that omits the analysis module for faster inference

PosterReward (Full Pipeline)

The full PosterReward pipeline is a two-stage analysis -> scoring process:

  1. PosterReward Analyser generates a detailed textual analysis across five quality dimensions.
  2. PosterReward Scorer takes the analysis together with the image and outputs a scalar reward score.

PosterReward-Lite

A simplified variant that directly predicts a scalar reward from the image and prompt, without requiring a separate analysis step. Faster inference at the cost of slightly lower accuracy.

Benchmark Data

This repository also hosts the PosterRewardBench benchmark images:

FileDescriptionSize
PRB_basic_images.tar.gzPosterRewardBench-Basic images (1,034 images from Flux, Flux-Krea, SD3.5-L)~1.1 GB
PRB_advanced_images.tar.gzPosterRewardBench-Advanced images (2,446 images from Seedream-3.0, Seedream-4.0, Qwen-Image-Lightning)~736 MB

Download and extract these archives into the poster_reward_bench/ directory of the code repository.

Quick Start

Environment Setup

git clone https://github.com/MeiGen-AI/PosterReward.git
cd PosterReward

cd swift && pip install -e . && cd ..
pip install msgspec "qwen_vl_utils>=0.0.14" torchvision diffusers pillow

PosterReward-Lite (Fast Pointwise Scoring)

from swift.llm import PtEngine, InferRequest

model_path = "path/to/PosterReward-Lite"  # or download from this repo
engine = PtEngine(model_path, max_batch_size=64, task_type='seq_cls', num_labels=1)

messages = [
    {"role": "user", "content": "<image>Your poster description prompt here."},
    {"role": "assistant", "content": ""}
]
request = InferRequest(messages=messages, images=["path/to/poster.png"])

resp_list = engine.infer([request])
score = resp_list[0].choices[0].message.content
print(f"Reward Score: {score}")

Full PosterReward (Two-Stage Pipeline)

# Edit model paths in inference_posterreward.sh, then:
bash inference_posterreward.sh

Results

Pointwise Reward Models on PosterRewardBench

ModelMMRB2 ↑HPDv3 ↑PRB-Basic ↑PRB-Ad ↑
ImageReward53.058.660.749.3
PickScore57.665.666.744.1
HPSv255.065.370.843.7
HPSv358.576.972.941.2
PosterReward-Lite60.577.183.985.0
PosterReward59.677.886.786.0

Citation

Coming Soon!

Acknowledgments

  • Thanks to our collaborators and affiliated institutions.
  • Thanks to the open-source community and prior reward modeling research.
endpoints_compatible
graphic-design
image-quality-assessment
image-to-text
poster
preference-learning
qwen3-vl
reward-model
safetensors
transformers

Contributors

alexlai2860

13 commits

MeiGen-AI/PosterReward_v1

Model

Overview

3

13 commits

1 linked in READMEs

updated Apr 2, 2026

See the code

README

PosterReward: Unlocking Accurate Evaluation for High-Quality Graphic Design Generation

PosterReward Logo

Paper Project Code arXiv

Overview

PosterReward is a dedicated reward modeling framework for poster assessment. It builds a 70k poster preference dataset from multi-MLLM consensus and introduces specialized models for poster quality evaluation across five dimensions:

  1. Foundational Visual Quality
  2. AI Artifacts
  3. Textual Accuracy
  4. Prompt Fidelity
  5. Aesthetic Value

Available Models

This repository contains three model variants, all built on Qwen3-VL-8B:

ModelPathTypeDescription
PosterReward AnalyserPosterReward_analyser/Generative VLMGenerates detailed multi-dimensional analysis of poster images
PosterReward ScorerPosterReward_scorer/Scalar Reward ModelTakes analysis + image and produces a scalar reward score
PosterReward-LitePosterReward-Lite/Scalar Reward ModelSimplified pointwise scorer that omits the analysis module for faster inference

PosterReward (Full Pipeline)

The full PosterReward pipeline is a two-stage analysis -> scoring process:

  1. PosterReward Analyser generates a detailed textual analysis across five quality dimensions.
  2. PosterReward Scorer takes the analysis together with the image and outputs a scalar reward score.

PosterReward-Lite

A simplified variant that directly predicts a scalar reward from the image and prompt, without requiring a separate analysis step. Faster inference at the cost of slightly lower accuracy.

Benchmark Data

This repository also hosts the PosterRewardBench benchmark images:

FileDescriptionSize
PRB_basic_images.tar.gzPosterRewardBench-Basic images (1,034 images from Flux, Flux-Krea, SD3.5-L)~1.1 GB
PRB_advanced_images.tar.gzPosterRewardBench-Advanced images (2,446 images from Seedream-3.0, Seedream-4.0, Qwen-Image-Lightning)~736 MB

Download and extract these archives into the poster_reward_bench/ directory of the code repository.

Quick Start

Environment Setup

git clone https://github.com/MeiGen-AI/PosterReward.git
cd PosterReward

cd swift && pip install -e . && cd ..
pip install msgspec "qwen_vl_utils>=0.0.14" torchvision diffusers pillow

PosterReward-Lite (Fast Pointwise Scoring)

from swift.llm import PtEngine, InferRequest

model_path = "path/to/PosterReward-Lite"  # or download from this repo
engine = PtEngine(model_path, max_batch_size=64, task_type='seq_cls', num_labels=1)

messages = [
    {"role": "user", "content": "<image>Your poster description prompt here."},
    {"role": "assistant", "content": ""}
]
request = InferRequest(messages=messages, images=["path/to/poster.png"])

resp_list = engine.infer([request])
score = resp_list[0].choices[0].message.content
print(f"Reward Score: {score}")

Full PosterReward (Two-Stage Pipeline)

# Edit model paths in inference_posterreward.sh, then:
bash inference_posterreward.sh

Results

Pointwise Reward Models on PosterRewardBench

ModelMMRB2 ↑HPDv3 ↑PRB-Basic ↑PRB-Ad ↑
ImageReward53.058.660.749.3
PickScore57.665.666.744.1
HPSv255.065.370.843.7
HPSv358.576.972.941.2
PosterReward-Lite60.577.183.985.0
PosterReward59.677.886.786.0

Citation

Coming Soon!

Acknowledgments

  • Thanks to our collaborators and affiliated institutions.
  • Thanks to the open-source community and prior reward modeling research.
endpoints_compatible
graphic-design
image-quality-assessment
image-to-text
poster
preference-learning
qwen3-vl
reward-model
safetensors
transformers

Contributors

alexlai2860

13 commits