The code and data are coming soon...
We propose PPTAgent, a system for automatically generating presentations from documents. It follows a two-step process inspired by how people create slides, ensuring high-quality content, clear structure, and visually appealing design. To evaluate the generated presentations, we also introduce PPTEval, a framework that measures the quality of presentations in terms of content, design, and coherence.
- Dynamically generate slides that incorporate both text and images.
- Leverage existing presentations as references without the need for prior annotation.
- Comprehensively evaluated the quality of presentations from multiple perspectives.
PPTAgent generates presentations in two steps:
- Analyze: Studies reference presentations to identify patterns in structure and content.
- Generate: Creates outlines and completes slides with consistent and aligned formatting.
The workflow of PPTAgent is shown below:
PPTEval evaluates presentations across three dimensions:
- Content: Check the accuracy and relevance of the slides.
- Design: Assesses the visual appeal and consistency.
- Coherence: Ensures the logical flow of ideas.
The workflow of PPTEval is shown below:
- Requirements
pip install -r requirements.txt
sudo apt install libreoffice
# brew install libreoffice
sudo apt install poppler-utils
# conda install -c conda-forge poppler
- Reproduce the pptxs according the saved history files.
python rebuild.py rebuild_all --out_filename "final.pptx"
- Parse the pptxs to images to prepare for evaluation.
python evals.py pptx2images
- Evaluate the pptxs.
python evals.py eval_experiment -s 0 -j 0
If you find this project helpful, please use the following to cite it:
@misc{zheng2025pptagentgeneratingevaluatingpresentations,
title={PPTAgent: Generating and Evaluating Presentations Beyond Text-to-Slides},
author={Hao Zheng and Xinyan Guan and Hao Kong and Jia Zheng and Hongyu Lin and Yaojie Lu and Ben He and Xianpei Han and Le Sun},
year={2025},
eprint={2501.03936},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2501.03936},
}