How to use from
Docker Model Runner
docker model run hf.co/void-2024/PosterCopilot
Quick Links

PosterCopilot-7B

Layout reasoning for professional graphic design. Give the model a set of layer assets and a canvas size; it returns the poster layout as JSON โ€” a bounding box and stacking order for every layer.

Accepted to ECCV 2026.

๐Ÿ“„ Paper ยท ๐ŸŒ Project Page ยท ๐Ÿ’ป Code ยท โ–ถ๏ธ Video

Model details

Base model Qwen/Qwen2.5-VL-7B-Instruct
Parameters 7B (bfloat16, ~15.5 GiB)
Input 2โ€“25 RGB layer assets + target canvas size + optional design brief
Output One JSON object: canvas_size + per-layer x, y, w, h, order, category
Training Perturbed SFT โ†’ RL for visual-reality alignment โ†’ RL from aesthetic feedback

Usage

This checkpoint expects a specific image preprocessing pipeline โ€” each layer is flattened onto an auto-selected contrasting background, scaled to a 28-pixel aligned canvas, and letterboxed with grey. Use the reference implementation rather than feeding raw images:

git clone https://github.com/JiazheWei/PosterCopilot.git
cd PosterCopilot
conda env create -f environment.yml && conda activate postercopilot

python infer.py --model <path-to-this-checkpoint> \
    --assets ./my_layers --width 1200 --height 1600 -o layout.json

python render.py --layout layout.json --assets ./my_layers -o poster.png

The repository also contains the renderer that composites the predicted layout and the original layers into the finished poster (PNG or editable PSD).

Prompt format

The model was trained with a fixed system prompt and this user turn:

Please process the following {N} RGB PNG layer assets and compose a single,
aesthetically pleasing poster. The canvas size is {W} x {H} (width x height).

optionally followed by Structure Requirements: {brief}. Both strings live in postercopilot/prompts.py in the code repository; paraphrasing them moves the input off the training distribution.

Notes

  • Decoding is greedy with repetition_penalty=1.05. Coordinates are emitted digit by digit, so a single flipped digit re-rolls the rest of the layout โ€” expect different-but-comparable results across GPUs, dtypes and attention kernels. Evaluate over a set of samples rather than one generation.
  • Requires ~20 GB of free VRAM in bfloat16.
  • transformers>=4.55 โ€” the config uses the nested text_config schema that older releases predate.

Citation

@article{wei2025postercopilot,
  title={PosterCopilot: Toward Layout Reasoning and Controllable Editing for Professional Graphic Design},
  author={Wei, Jiazhe and Li, Ken and Lao, Tianyu and Wang, Haofan and Wang, Liang and Shan, Caifeng and Si, Chenyang},
  journal={arXiv preprint arXiv:2512.04082},
  year={2025}
}

License

Apache 2.0, inherited from the Qwen2.5-VL-7B-Instruct base model.

Downloads last month
2
Safetensors
Model size
8B params
Tensor type
BF16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for void-2024/PosterCopilot

Finetuned
(1163)
this model

Paper for void-2024/PosterCopilot