https://github.com/user-attachments/assets/938889e8-d7d8-4f4f-b2a1-07ee3ef3991a
## 📫 Contact
> The main contributor of this repo is a Master's student graduating in 2026, currently on the job market. Feel free to reach out for collaboration or job opportunities.
>
> 本仓库的主要贡献者是一名 2026 届硕士毕业生,正在求职中,欢迎联系。
## 📅 News
- [2025/12]: 🔥 PPTAgent V2/Major update released! Now featuring Deep Research Integration, Free-Form Visual Design, Autonomous Asset Creation, Text-to-Image Generation, and an Agent Environment with sandbox and 30+ tools.
- [2025/09]: 🛠️ We support MCP server now, see [MCP Server](./DOC.md#mcp-server-) for details
- [2025/09]: 🚀 Released v2 with major improvements - see [release notes](https://github.com/icip-cas/PPTAgent/releases/tag/v0.2.0) for details
- [2025/08]: 🎉 Paper accepted to **EMNLP 2025**!
- [2025/05]: ✨ Released v1 with core functionality and 🌟 breakthrough: reached 1,000 stars on GitHub! - see [release notes](https://github.com/icip-cas/PPTAgent/releases/tag/v0.1.0) for details
- [2025/01]: 🔓 Open-sourced the codebase, with experimental code archived at [experiment release](https://github.com/icip-cas/PPTAgent/releases/tag/experiment)
## 📖 Usage
> [!IMPORTANT]
> 1. All these API keys, configurations, and services are **required**.
> 2. Gemini 2.5/3 are the only LLMs for the Design Agent that achieve consistently good results. Other LLMs (including GPT-5/Sonnet) will lead to **severe performance degradation**.
> 3. We do not support offline serving for now.
### 1. Prepare external services
- **MinerU**: Apply for an API key at https://mineru.net/apiManage/docs. Note that each key is valid for 14 days.
- **Tavily**: Apply for an API key at https://www.tavily.com/.
- **LLM**: Configure your model endpoint, API keys, and related parameters in [config.yaml](deeppresenter/deeppresenter/config.yaml).
### 2. Set up agent environment & MCP
- **Agent sandbox (Docker)**: Build the sandbox image using the provided [Dockerfile](docker/Dockerfile):
```bash
cd docker
docker build -t desktop-commander-deeppresenter .
```
- **MCP server**: Configure the MCP server according to [mcp.json](deeppresenter/deeppresenter/mcp.json).
- **Additional tools**:
```bash
npm install -g playwright
npx playwright install chromium
```
### 3. Install Python dependencies
From the project root directory, run:
```bash
pip install -e deeppresenter
```
### 4. Launch the web demo
Also from the project root directory, run:
```bash
python webui.py
```
> [!TIP]
> 🚀 All configurable variables can be found in [constants.py](deeppresenter/deeppresenter/utils/constants.py).
## 💡 Case Study
- #### Prompt: Please present the given document to me.
- #### Prompt: 请介绍小米 SU7 的外观和价格
- #### Prompt: 请制作一份高中课堂展示课件,主题为“解码立法过程:理解其对国际关系的影响”
---
[](https://star-history.com/#icip-cas/PPTAgent&Date)
## Citation 🙏
If you find this project helpful, please use the following to cite it:
```bibtex
@inproceedings{zheng-etal-2025-pptagent,
title = "{PPTA}gent: Generating and Evaluating Presentations Beyond Text-to-Slides",
author = "Zheng, Hao and
Guan, Xinyan and
Kong, Hao and
Zhang, Wenkai and
Zheng, Jia and
Zhou, Weixiang and
Lin, Hongyu and
Lu, Yaojie and
Han, Xianpei and
Sun, Le",
editor = "Christodoulopoulos, Christos and
Chakraborty, Tanmoy and
Rose, Carolyn and
Peng, Violet",
booktitle = "Proceedings of the 2025 Conference on Empirical Methods in Natural Language Processing",
month = nov,
year = "2025",
address = "Suzhou, China",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2025.emnlp-main.728/",
doi = "10.18653/v1/2025.emnlp-main.728",
pages = "14413--14429",
ISBN = "979-8-89176-332-6",
abstract = "Automatically generating presentations from documents is a challenging task that requires accommodating content quality, visual appeal, and structural coherence. Existing methods primarily focus on improving and evaluating the content quality in isolation, overlooking visual appeal and structural coherence, which limits their practical applicability. To address these limitations, we propose PPTAgent, which comprehensively improves presentation generation through a two-stage, edit-based approach inspired by human workflows. PPTAgent first analyzes reference presentations to extract slide-level functional types and content schemas, then drafts an outline and iteratively generates editing actions based on selected reference slides to create new slides. To comprehensively evaluate the quality of generated presentations, we further introduce PPTEval, an evaluation framework that assesses presentations across three dimensions: Content, Design, and Coherence. Results demonstrate that PPTAgent significantly outperforms existing automatic presentation generation methods across all three dimensions."
}
```