故事是这样的。
我最近做PPT做得头大。公司要融资路演,要做产品发布会,要做季度汇报,每次打开PowerPoint都感觉在受刑。找模板,调格式,对齐元素,一搞就是大半夜。更要命的是,AI生成的PPT,看着像那么回事,结果点进去发现每页都是一张大图,想改个字都改不了。
直到我发现了PPT Master。
说实话,我第一眼看到GitHub上22K+ Star的时候,心里还犯嘀咕,这年头Star数注水的项目多了去了。但当我真正跑起来之后,我得承认,这玩意确实有点东西。
PPT Master的核心定位非常清晰,AI生成原生可编辑的PPTX,而不是图片包。
你品品这个区别,市面上大多数AI PPT工具,生成的都是图片型PPT,每页就是一张大图打包成PPTX,看着像PPT,实则无法编辑。而PPT Master输出的是真实DrawingML形状、文本框和图表,每一页都可以直接点击编辑。
我是真的觉得这个技术路线选得太妙了。
回到技术架构这块,PPT Master的设计可以概括为一句话,AI生成SVG,然后后处理转换为DrawingML(PPTX底层格式)。
你可能会问,为什么不直接生成DrawingML?说实话,DrawingML极其冗长,一个简单的圆角矩形就需要几十行嵌套XML,AI对此的训练数据远少于SVG,输出不可靠,调试几乎不可能。
那用HTML/CSS呢?HTML描述的是「文档流」,而PowerPoint描述的是「画布」,每个元素都是独立绝对定位的对象,这是结构性错配。用WMF/EMF?这是微软自家的矢量格式,但AI几乎没有这方面的训练数据。SVG嵌入为图片?这样虽然简单,但彻底丧失了可编辑性。
SVG胜出,因为它与DrawingML共享相同的世界观。两者的转换是「同一种理念的两种方言互译」,而非格式强行适配。
角色系统
说到这个,PPT Master的角色系统也很有意思。它没有使用多Agent并行架构,而是采用了单Agent内角色切换的设计。
这个选择有三个原因:
- 1. 页面设计依赖完整的上游上下文,子Agent只能拿到过时的部分快照,会导致视觉风格漂移
- 2. Strategist运行在「与用户协商」模式,而Executor运行在「严格输出 XML」模式
- 3. 把两者混在一起会让模型在同一轮中同时保持两种不兼容的纪律
三角色分工:
- • Strategist 负责内容分析、设计规划、与用户确认,输出design_spec.md和spec_lock.md
- • Executor 负责逐页生成SVG、完成视觉构建,输出svg_output/*.svg
- • Quality Checker 负责SVG质量检查、错误检测,输出质检报告
「八项确认」机制,Strategist在启动执行前会一次性向用户确认八个设计维度(画布/页数/受众/风格/颜色/图标/字体/图片),这是一个阻塞式决策点。确认后流水线自动运行到完成,不再中断。
设计亮点
顺着上面的,再聊聊设计亮点。
spec_lock.md,反漂移机制。在生成长篇演示文稿(20+ 页)时,LLM的上下文压缩会导致颜色、字体逐渐变异。spec_lock.md是解决这个问题的核心设计,每页生成前强制重读,所有颜色/字体/图标必须来自此文件,禁止凭记忆或现场编造。
模板系统,默认自由设计。PPT Master的模板是可选的,不是默认的。
模板是地板,也很容易成为天花板,它们把演示文稿锁定在模板的视觉习惯中,无论内容实际上想要如何呈现。
默认流程是自由设计,AI仅从源内容出发创造视觉系统。
实时预览与视觉编辑。生成过程中会自动打开浏览器预览(localhost:5050),用户可以点击任意元素,写下修改意见,提交注释后,AI会重写SVG并重新导出PPTX。
语音旁白与视频导出。PPT Master支持完整的旁白工作流,使用edge-tts(默认)或云TTS提供商生成每页旁白,将音频嵌入PPTX,PowerPoint可直接导出为MP4视频(同步旁白+转场),支持语音克隆(ElevenLabs / MiniMax / Qwen / CosyVoice)。
技术细节
技术细节这块,源内容转换策略也很全面。
| 格式 | 处理方式 |
|---|
| PDF | pdf_to_md.py 原生Python处理 |
| DOCX/HTML/EPUB/IPYNB | doc_to_md.py 原生Python |
| XLSX/XLSM | excel_to_md.py |
| PPTX | ppt_to_md.py |
| 网页/微信公众号 | web_to_md.py(支持TLS指纹模拟) |
| 旧格式 (.doc/.odt/.rtf/.tex) | Pandoc兜底 |
设计原则:常见格式用纯Python处理,Pandoc仅用于长尾小众格式,避免强迫每个用户安装他们可能没有权限的系统二进制文件。
图片获取双路径:
- • A) AI生成:支持多后端(OpenAI DALL-E、Gemini、MiniMax等),通过IMAGE_BACKEND环境变量切换
- • B) 网络搜索:默认零配置可用,配置Pexels/Pixabay API Key后质量显著提升
画布格式系统,PPT Master不仅限于PPT 16:9,同一套SVG→DrawingML管线可输出:
- • PPT 16:9 / 4:3
- • 小红书方形海报
- • 9:16故事/短视频
- • A4打印
- • 10+其他格式
关键设计选择:viewBox使用像素单位而非绝对单位,像素空间让AI的布局推理无歧义(x="100"就是左边界+100px),且在浏览器中可直接检查,到PowerPoint EMU的转换只在导出时发生一次。
同类工具对比
同类工具对比这块,PPT Master的优势很明显。
| 特性 | PPT Master | Gamma | Microsoft Copilot | 其他AI PPT |
|---|
| 输出可编辑性 | ✅ 原生形状 | ⚠️ 部分可编辑 | ✅ 原生形状 | ❌ 多为图片 |
| 成本透明度 | ✅ 仅模型费用 | ❌ 订阅制 | ❌ 订阅制 | 混合 |
| 数据隐私 | ✅ 本地运行 | ❌ 云端处理 | ❌ 云端处理 | 混合 |
| 平台锁定 | ✅ 无锁定 | ❌ Gamma平台 | ❌ Office生态 | 混合 |
| 模板自由度 | ✅ 默认自由设计 | ⚠️ 模板驱动 | ⚠️ 模板驱动 | 模板驱动 |
| 动画支持 | ✅ 原生OOXML | ❌ 有限 | ✅ 原生 | 有限 |
| 语音旁白 | ✅ 内置TTS | ❌ | ❌ | 极少 |
| 开源 | ✅ MIT | ❌ | ❌ | 极少 |
快速上手
快速上手也很简单。
# 1. 克隆项目
git clone https://github.com/hugohe3/ppt-master.git
cd ppt-master
# 2. 安装依赖
pip install -r requirements.txt
# 3. 创建项目
python3 skills/ppt-master/scripts/project_manager.py init my-deck --format ppt169
# 4. 导入源文件
python3 skills/ppt-master/scripts/project_manager.py import-sources projects/my-deck sources/my-report.pdf --move
# 5. 告诉AI生成
# 在Claude Code / Cursor等AI助手中使用PPT Master
总结
PPT Master代表了AI内容生成工具的一个高级形态,不是替代人类判断,而是消除90%的空白页工作。
它的核心设计哲学可以总结为三点:
- 1. AI是设计师,不是完成者 - 生成的PPTX是设计草稿,最终润色仍需人类在PowerPoint中完成
- 2. 工具的天花板就是你的天花板 - PPT Master放大你已有的设计和内容能力
- 3. 透明、本地、无锁定 - 开源、数据本地处理、不绑定任何平台
对于经常需要制作演示文稿的技术人员、咨询顾问、产品经理来说,PPT Master提供了一个「从文档到可编辑PPT」的工业级流水线。22K Star的成绩,实至名归。
项目地址:https://github.com/hugohe3/ppt-master
在线演示:https://hugohe3.github.io/ppt-master/
以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~
谢谢你看我的文章,我们,下次再见。