--- license: apache-2.0 language: - en tags: - reward-model - poster - graphic-design - image-quality-assessment - preference-learning - qwen3-vl pipeline_tag: image-to-text library_name: transformers ---

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

PosterReward Logo [![Paper](https://img.shields.io/badge/Paper-PDF-red)](https://alexlai2860.github.io/mypaper/posterreward/PosterReward_Arxiv_released.pdf) [![Project](https://img.shields.io/badge/Project-Page-black)](https://alexlai2860.github.io/PosterReward/) [![Code](https://img.shields.io/badge/Code-Repository-blue)](https://github.com/MeiGen-AI/PosterReward) [![arXiv](https://img.shields.io/badge/arXiv-2603.29855-red)](https://arxiv.org/abs/2603.29855)
## 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**: | Model | Path | Type | Description | |-------|------|------|-------------| | **PosterReward Analyser** | `PosterReward_analyser/` | Generative VLM | Generates detailed multi-dimensional analysis of poster images | | **PosterReward Scorer** | `PosterReward_scorer/` | Scalar Reward Model | Takes analysis + image and produces a scalar reward score | | **PosterReward-Lite** | `PosterReward-Lite/` | Scalar Reward Model | Simplified 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: | File | Description | Size | |------|-------------|------| | `PRB_basic_images.tar.gz` | PosterRewardBench-Basic images (1,034 images from Flux, Flux-Krea, SD3.5-L) | ~1.1 GB | | `PRB_advanced_images.tar.gz` | PosterRewardBench-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](https://github.com/MeiGen-AI/PosterReward). ## Quick Start ### Environment Setup ```bash 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) ```python 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": "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) ```bash # Edit model paths in inference_posterreward.sh, then: bash inference_posterreward.sh ``` ## Results ### Pointwise Reward Models on PosterRewardBench | Model | MMRB2 ↑ | HPDv3 ↑ | PRB-Basic ↑ | PRB-Ad ↑ | |-------|---------|---------|-------------|----------| | ImageReward | 53.0 | 58.6 | 60.7 | 49.3 | | PickScore | 57.6 | 65.6 | 66.7 | 44.1 | | HPSv2 | 55.0 | 65.3 | 70.8 | 43.7 | | HPSv3 | 58.5 | 76.9 | 72.9 | 41.2 | | **PosterReward-Lite** | **60.5** | **77.1** | **83.9** | **85.0** | | **PosterReward** | **59.6** | **77.8** | **86.7** | **86.0** | ## Citation Coming Soon! ## Acknowledgments - Thanks to our collaborators and affiliated institutions. - Thanks to the open-source community and prior reward modeling research.