test.mp4
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 届硕士毕业生,正在求职中,欢迎联系。
- [2026/01]: We support freeform and template generation support PPTX export, offline mode now! Context management is added to avoid context overflow.
- [2025/12]: 🔥 Released V2 with major improvements - Deep Research Integration, Free-Form Visual Design, Autonomous Asset Creation, Text-to-Image Generation, and Agent Environment with sandbox & 20+ tools.
- [2025/09]: 🛠️ MCP server support added - see MCP Server for configuration details
- [2025/09]: 🚀 Released v2 with major improvements - see release notes 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 for details
- [2025/01]: 🔓 Open-sourced the codebase, with experimental code archived at experiment release
Important
- All these API keys, configurations, and services are required.
- Agent Backbone Recommendation: Use Claude for the Research Agent and Gemini for the Design Agent. GLM-4.7 is also a good choice in open-source models.
- Offline mode is supported with limited capabilities (see Offline Setup below).
-
Create configuration files (from project root):
cp deeppresenter/deeppresenter/config.yaml.example deeppresenter/deeppresenter/config.yaml cp deeppresenter/deeppresenter/mcp.json.example deeppresenter/deeppresenter/mcp.json
-
Online setup:
- MinerU: Apply for an API key at mineru.net. Note that each key is valid for 14 days.
- Tavily: Apply for an API key at tavily.com.
- LLM: Set your model endpoint, API keys, and related parameters in
config.yaml.
-
Offline setup:
- MinerU: Deploy the MinerU server by following the instructions at MinerU docker guide
- Config switch: Set
offline_mode: trueinconfig.yamlto avoid loading network-dependent tools (e.g.,fetch,search). - MinerU endpoint: Set
MINERU_API_URLinmcp.jsonto your local MinerU service URL
Build docker images: docker compose build
-
From Docker Compose:
docker compose up -d
-
Running locally:
pip install -e deeppresenter playwright install-deps playwright install chromium npm install npx playwright install chromium python webui.py
Tip
🚀 All configurable variables can be found in constants.py.
If you find this project helpful, please use the following to cite it:
@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."
}