Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌲🌳 PosterForest: Hierarchical Multi-Agent Collaboration for Scientific Poster Generation

Jiho Choi1 *Seojeong Park1 *,  Seongjong Song2Hyunjung Shim1 †

1 Graduate School of Artificial Intelligence, KAIST, Republic of Korea
2 School of Integrated Technology, Yonsei University, Republic of Korea
* Equal contribution    Corresponding author


PosterForest is a training-free, hierarchical multi-agent system that automatically generates editable scientific posters (poster.pptx) from a paper PDF. It introduces a Poster Tree intermediate representation that captures document hierarchy and visual-textual semantics, enabling agents to conduct hierarchical reasoning and recursive refinement from global organization down to local composition.


Preview

Portrait (36 × 48 in) Landscape (48 × 36 in)

Installation

conda create -n poster-forest python=3.10 -y
conda activate poster-forest
pip install -r requirements.txt
pip install "docling-parse==4.5.0"

# System Dependencies
sudo apt-get install ttf-mscorefonts-installer msttcorefonts  # fonts
sudo apt install libreoffice  # PPTX → image rendering
conda install -c conda-forge poppler  # PDF utilities

# API key (if using GPT-4o)
echo "OPENAI_API_KEY=<your_key>" > .env

Quick Start

Place your paper PDF under papers/{paper_dir}/:

papers/
├── 2017_NIPS/
│   └── Attention_Is_All_You_Need.pdf
└── 2026_ACL/
    └── PosterForest.pdf

Using GPT-4o:

python -m PosterForest.main \
    --paper_path="papers/2017_NIPS/Attention_Is_All_You_Need.pdf" \
    --model_name_t="4o" \
    --model_name_v="4o" \
    --poster_width_inches=48 \
    --poster_height_inches=36

(API costs approximately $0.8 per poster with GPT-4o.)

Using Qwen3 (local - start vLLM servers first, see below):

python -m PosterForest.main \
    --paper_path="papers/2017_NIPS/Attention_Is_All_You_Need.pdf" \
    --model_name_t="vllm_qwen3" \
    --model_name_v="vllm_qwen3_vl" \
    --poster_width_inches=48 \
    --poster_height_inches=36

Output is saved to outputs/{timestamp}_{model_t}_{model_v}_{paper_name}/08_finalize_output/:

08_finalize_output/
├── poster_final.pptx   ← editable poster
└── poster_final.jpg    ← rendered preview

Viewer - browse all generated posters in a local web UI:

uvicorn utils.viewer.server:app --reload --port 8080
# open http://localhost:8080

vLLM Setup (Local MLLMs)

Requires vLLM ≥ 0.12.0 (for Qwen3-VL support).

Qwen3 (LLM on GPU 0-3, VLM on GPU 4-7):

conda activate poster-forest
bash scripts/start_vllm_qwen3.sh

Qwen2.5 (LLM on GPU 4,5, VLM on GPU 6,7):

conda activate poster-forest
bash scripts/start_vllm_qwen2_5.sh

Wait until both servers are ready:

curl http://localhost:8005/health
curl http://localhost:8010/health

Model strings and endpoints are defined in utils/wei_utils.py.


Evaluation

For evaluation setup and metrics (PaperQuiz, VLM-as-Judge, etc.), please refer to the Paper2Poster (NeurIPS 2025 D&B) repository.


Acknowledgements

We thank CAMEL (NeurIPS 2023), OWL (NeurIPS 2025), Docling, PPTAgent (EMNLP 2025), Paper2Poster (NeurIPS 2025 D&B), and P2P (ICLR 2026) for their open-source codebases.


Citation

@inproceedings{posterforest2026,
  title     = {PosterForest: Hierarchical Multi-Agent Collaboration for Scientific Poster Generation},
  author    = {Jiho Choi and Seojeong Park and Seongjong Song and Hyunjung Shim},
  booktitle = {Proceedings of the 64th Annual Meeting of the Association for Computational Linguistics (ACL)},
  year      = {2026},
}

About

[ACL 2026] PosterForest: Hierarchical Multi-Agent Collaboration for Scientific Poster Generation

Resources

Stars

11 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages