Paper2Poster

A multi-agent pipeline that turns scientific-paper PDFs into editable PPTX posters.

Stars
★ 3.9k
Last updated
3mo ago
License
MIT
Primary language
Python

At a glance

Works with
Portable with changesCodex · OpenAI API
You'll need
PythonLibreOfficepopplerShell / CLINetwork accessLocal filesystem
Typical use
A researcher preparing for a conference has a paper.pdf and needs an academic poster that remains editable in PowerPoint.
Main limitation
A full local setup requires Python, LibreOffice, and poppler; the open-model route additionally requires operating vLLM and configuring its port.

What does this agent do, and when should you use it?

Paper2Poster is a multimodal poster-automation project for scientific papers, centered on a system called PosterAgent. It takes a paper.pdf input and produces an editable poster.pptx through a top-down, visual-in-the-loop multi-agent workflow. The README describes Parser, Planner, and a Painter-Commentor loop: paper assets are organized, text and visuals are laid out, then rendered panels are refined with VLM feedback. The project documents API-based GPT-4o configurations as well as vLLM-hosted open-model combinations, alongside Docker deployment, a Gradio demo, YAML styling, and logo support. It also exposes evaluation commands for PaperQuiz, VLM-as-Judge, and statistical measures.

Place a paper at {dataset_dir}/{paper_name}/paper.pdf and run python -m PosterAgent.new_pipeline. The command accepts --poster_path, --model_name_t for the text model, --model_name_v for the vision model, and poster dimensions, then generates poster.pptx; documented examples use 48 by 36 inches. Section-content generation can run in parallel with --max_workers. With --conference_venue, it first checks logo_store/institutes/ and logo_store/conferences/, then can search DuckDuckGo if no local logo is found, or use Google Custom Search with --use_google_search and configured credentials; explicit --institution_logo_path and --conference_logo_path options bypass detection. Styling can come from config/poster.yaml or a poster.yaml beside paper.pdf. Evaluation is run through python -m Paper2Poster-eval.eval_poster_pipeline with qa, judge, or stats metrics.

  1. A researcher preparing for a conference has a paper.pdf and needs an academic poster that remains editable in PowerPoint.
  2. A lab is processing several papers and wants to use --max_workers to generate section content in parallel.
  3. A team with a vLLM deployment wants to use Qwen-2.5-7B-Instruct for text generation and pair it with GPT-4o or a local vision model.
  4. A conference presenter needs a poster with a NeurIPS or institutional logo, using automatic lookup or supplied logo files.
  5. An evaluator wants to compare generated posters on the Paper2Poster-data dataset with PaperQuiz, VLM-as-Judge, or statistical metrics.

How do you install or deploy this agent?

Install Python dependencies:

pip install -r requirements.txt

Install LibreOffice:

sudo apt install libreoffice

Install poppler:

conda install -c conda-forge poppler

Create .env in the project root and set:

OPENAI_API_KEY=<your_openai_api_key>

For Google Custom Search logo lookup, also set GOOGLE_SEARCH_API_KEY and GOOGLE_SEARCH_ENGINE_ID. Before using open-source models, deploy them with vLLM and ensure the port is configured in get_agent_config() in utils/wei_utils.py.

How do you use this agent?

After creating {dataset_dir}/{paper_name}/paper.pdf, a documented GPT-4o invocation is:

python -m PosterAgent.new_pipeline \
--poster_path="${dataset_dir}/${paper_name}/paper.pdf" \
--model_name_t="4o" \
--model_name_v="4o" \
--poster_width_inches=48 \
--poster_height_inches=36

The generated file is poster.pptx. For Docker, first run docker build -t paper2poster ., then use the documented docker run example to mount Paper2Poster-data and an output directory and provide OPENAI_API_KEY. For preparing poster-ready paper content only, the repository also provides a lightweight skill in skills/; its documented Codex invocation is: Use $paper2poster-poster to turn this paper into a poster package.

What are this agent's strengths and limitations?

Pros
  • It produces editable PPTX output rather than only a raster or PDF poster.
  • The documented workflow combines paper parsing, layout planning, rendering, and VLM feedback intended to address overflow and alignment.
  • Text and vision models can be mixed; the README provides GPT-4o, vLLM Qwen plus GPT-4o, and fully local vLLM Qwen configurations.
  • YAML supports global and per-paper visual styling, while logo handling can be automatic or explicitly file-based.
  • The repository documents an evaluation path covering dataset download plus qa, judge, and stats modes.
Limitations
  • A full local setup requires Python, LibreOffice, and poppler; the open-model route additionally requires operating vLLM and configuring its port.
  • The GPT-4o configuration depends on OPENAI_API_KEY, and the documentation does not provide API usage, cost, or service-availability guarantees.
  • Automatic logo lookup may need network access when the local store has no match; Google-based lookup adds separate credentials.
  • The documentation specifies PDF input and PPTX output but does not state behavior for low-quality scans, encrypted PDFs, or unusual paper formats.
  • CLI, Docker, and Gradio are documented, but no stable library API or external service protocol is described.

How does this agent compare with similar options?

The README documents three operating profiles: GPT-4o for both text and vision is labeled “High Performance”; vLLM Qwen-2.5-7B-Instruct for text plus GPT-4o vision is labeled “Economic”; and vLLM Qwen configurations for both text and vision are the local option. The latter two require the corresponding vLLM services to be deployed.

Key facts side by side with the most closely related agents.

Agent Source review Stars Updated Language Full support on
Paper2Poster This agent 28 · Major gaps ★ 3.9k 3mo ago Python Codex · OpenAI API
Image-to-Editable-PPT Skill 53 · Major gaps ★ 2.7k 8d ago Python Codex
The Delegation 34 · Major gaps ★ 660 5mo ago TypeScript
ArcReel Video Creation Workspace 52 · Major gaps ★ 5.1k today Python OpenAI API · Claude API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
28/ 100 5-point scale 1.4 / 5
Trust 0/29
Reliability 3/14
Adaptability 8/18
Convention 8/18
Effectiveness 7/13
Verifiability 2/8
Why each dimension lost points
Trust0 / 29 · 0.0/5

Evidence shows: The repository does not provide explicit mechanisms for least privilege, user confirmation, data flow transparency, sensitive data handling, dependency security, external effects, rollback, or source attribution. The README requires users to provide sensitive information like OPENAI_API_KEY but does not explain its scope or protection. The dependency list is extensive and lacks security audit. Therefore, all trust criteria score 0.

Reliability3 / 14 · 1.1/5

Evidence shows: Commands in README are mostly consistent with requirements.txt, but there are inconsistencies, such as the `--no_blank_detection` option mentioned in README but not verified in code. The dependency list is large but lacks version compatibility notes. No error handling or failure message documentation is provided. Thus, self-consistency scores 1, dependency availability scores 1, and failure messages score 0.

Adaptability8 / 18 · 2.2/5

Evidence shows: README describes multiple usage scenarios (local, API, Docker, Gradio) and provides examples for different model combinations, so audience and scenarios score 2. Capability boundaries are not clearly defined, but options like YAML customization and logo search are provided, so score 1. Trigger precision is partially addressed with command-line arguments, but behavior is not fully documented, so score 1. Environment fit is addressed with Docker and local installation, but system requirements are not specified, so score 1.

Convention8 / 18 · 2.2/5

Evidence shows: README provides clear structure and installation instructions, so information architecture and install notes score 2. Naming stability is consistent, but no version history is provided, so score 1. Examples and FAQ are provided (e.g., Docker permission issue), so score 2. Known limitations are not mentioned, so score 0. License is MIT, score 2. Versioning and changelog are partially present in README updates, but no formal changelog, so score 1. Maintenance responsibility is not explicit, but contact is provided, so score 1.

Effectiveness7 / 13 · 2.7/5

Evidence shows: Output is an editable PPTX file, which is useful, so output usability scores 2. Marginal value is positive as it automates poster creation, but no comparison with other tools is provided, so score 2. Cost-benefit is not quantified; requires API keys and compute resources, so score 1.

Verifiability2 / 8 · 1.3/5

Evidence shows: README cites arXiv paper and project page, but no specific evidence links are provided, so claim traceability scores 1. Cross-source corroboration is partially present via Hugging Face dataset and demo, but no independent verification, so score 1. Fact-inference separation is not addressed, so score 0.

Risks and how to mitigate them
  • Not found in source: least-privilege scopingGrant only what the task needs: a dedicated account or read-only token, scoped to specific directories and repos.
  • Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
  • Not found in source: data-flow disclosureWatch which external services it contacts (proxy or firewall logs) and keep sensitive data out until you know where it goes.
  • Not found in source: sensitive-data handlingUse dedicated, low-privilege, revocable API keys — never production credentials — and keep secrets out of logs.
  • Not found in source: dependency securityPin versions and run a dependency audit (npm audit, pip-audit) before installing; prefer running it in a container.
  • Not found in source: disclosed external effectsEstablish which external systems it writes to, sends to or changes, and verify with test accounts or repos before production.
  • Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
  • Not found in source: verifiable attributionInstall from the official repo or registry and check the publisher and URL to avoid look-alike packages.
  • The dependency list is extensive and lacks security audit, posing supply chain risks.
  • The README requires API keys but does not explain their scope or protection, risking sensitive information leakage.
  • No known limitations or troubleshooting guide is provided, which may hinder users.
Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision 623d042f283a
See the full review method →

FAQ

What does it take in and produce?
The main pipeline takes a scientific-paper PDF named paper.pdf in the specified directory and produces an editable poster.pptx.
Is OpenAI required?
No. The README documents API-based use such as GPT-4o and open-model use through vLLM; vLLM ports must be configured in get_agent_config().
What credentials and permissions are needed?
The GPT-4o examples require OPENAI_API_KEY. Logo lookup can use network search when no local logo is found, and Google search mode requires two additional Google Custom Search environment variables.
How can generated posters be evaluated?
After obtaining the evaluation dataset, run Paper2Poster-eval.eval_poster_pipeline with --metric set to qa, judge, or stats.
View on GitHub ↗ Install ↓

Related agents