VincentHancoder / RAP
git clone https://github.com/VincentHancoder/RAP.git
—
—
stars, 24h
+28
stars, 7 days · #1,382
+28
stars, 30 days · #9,272
28
★ total · +28% this week
0
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguagePython
LicenseMIT
Created2026-10-13 (7d ago)
Last push1d ago
Watchers0
OwnerUser
Links
README excerpt
# RAP: A Dataset for Paper-to-Poster Generation via Declarative Markup from Human-Crafted Exemplars **Haonan Han** 1,2 **Yukang Lin** 1 **Minliang Lin** 2 **Haoxian Tan** 2 **Jun-Yan He** 2 ∗ **Rui Yang** 3 **Zhi-Qi Cheng** 4 **Jie Hu** 2 **Guanglu Wan** 2 **Xiu Li** 1 † 1 Tsinghua University 2 Meituan Longcat 3 The University of Hong Kong 4 University of Washington ∗ Project lead † Corresponding author --- ## Overview Making a conference poster is visual coding in miniature: a whole paper has to be compressed onto one page, which exercises summarization, visual design and code implementation at once. **RAP** turns this into a measurable task. - **RAP-25K** — 25,435 paper–poster pairs from NeurIPS, ICLR and ICML (2022–2026), each with a three-level content taxonomy (15 domains / 20 tasks / 39 methods) and a distilled introduction summary. - **Poster derendering** — a fully automated pipeline rewrites every human-crafted poster as styled HTML/CSS with typed, refillable slots, so each sample is a *paper–poster–markup* triplet that can be verified by rendering. - **PosterRAG** — a training-free multi-agent pipeline that retrieves a human-crafted template and refills its slots without touching layout or styling. - **RAP-Qwen3.8-27B-RL** — Qwen3.8-27B post-trained on the triplets with full-parameter SFT and GRPO. - **RAP-150** — the held-out benchmark: 150 papers, 10 per domain, with the exact model inputs used in the paper. ## Repository layout | Folder | What it does | Entry point | |---|---|---| | `derender/` | Poster image → HTML template (Layout Detection → Font Size Estimation → Design Captioning → HTML Reconstruction) | `python -m derender.run_derender --image poster.png --out out/` | | `posterrag/` | PosterRAG: Parser → Retrieval (categorical, narrative, aesthetic) → Mapping → Reviewer agents over the RAP-25K template pool | `python -m posterrag.run_posterrag --pdf paper.pdf --out out/` | | `inference/` | Paper parser, prompt construction, generation and rendering for RAP-Qwen3.8-27B-RL | `python -m inference.generate benchmark|pdf ...` | | `benchmark/rap_test150/` | The 150 benchmark prompts with thumbnails, ids and metadata | — | | `figures/`, `docs/` | Paper figures used here; third-party notices | — | ## RAP-25K | Conference | 2022 | 2023 | 2024 | 2025 | 2026 | Total | |---|---:|---:|---:|---:|---:|---:| | NeurIPS | 2,280 | 2,613 | 3,037 | 3,326 | – | **11,256** | | ICLR | 830 | 877 | 1,447 | 2,085 | 3,265 | **8,504** | | ICML | 882 | 1,471 | 1,751 | 1,571 | – | **5,675** | | **Total** | 3,992 | 4,961 | 6,235 | 6,982 | 3,265 | **25,435** | Each pair ships the poster image, the paper PDF, the annotations (`domain`, `task`, `method`, `keywords`, `intro_summary`, title, abstract where available) and the derendered template (`layout.json`, `design_free.json`, `generated.html` + `assets/`, `rendered.png`). The dataset card on Hugging Face documents the layout and loading. ## Poster derendering Four stages tu