Super PPT Generator
智能 PPT 生成器,支持论文模式和主题模式,输出 PPTX + 演讲逐字稿。
第三方组件声明
本技能的「SVG → 原生可编辑 PPTX」转换能力集成了开源项目 ppt-master 的
svg_to_pptx 组件(MIT License,© 2025-2026 Hugo He,https://github.com/hugohe3/ppt-master)。
该组件的完整版权文件(LICENSE、SPONSORS.md、SPONSORS_CN.md)随技能附带于
scripts/_vendor/ppt-master/ 目录,未经修改、未绕过其完整性保护机制。若该组件缺失,
本技能自动降级为纯 python-pptx 生成。
何时触发
- 用户说"做PPT"、"生成PPT"、"论文转PPT"、"帮我做个演示"
- 用户上传 PDF 并要求转为演示
- 用户给出主题并要求生成演示文稿
风格选择
5 种预设风格,用户必须选择一种(默认 professional):
| 风格 | 关键词 | 适用场景 | 配色 |
|---|---|---|---|
professional |
稳重、专业、信任 | 学术汇报、部门总结 | 深蓝 #1E2761 + 冰蓝 |
science |
创意、活泼、吸引 | 科普演讲、创意展示 | 蓝紫渐变 #667EEA→#764BA2 |
courseware |
清晰、亲和、易懂 | 课件、培训、教学 | 青绿 #028090 + 白底 |
business |
奢华、重磅、高端 | 商务提案、融资路演 | 黑金 #0D1117 + #C9A24B |
popular_science |
亲切、易读、专业 | 科普演讲、医学科普、教育活动 | 蓝 #005BAB + 红 #C00000 + 楷体正文 |
工作流程
模式一:论文模式 📄
用户上传 PDF → 步骤1:解析论文 → 步骤2:生成大纲 → 步骤3:用户确认/编辑
→ 步骤4:选择风格 → 步骤5:生成PPT → 步骤6:撰写逐字稿 → 交付
步骤1:解析论文
cd <skill_dir>/scripts
python pdf_parser.py "<论文.pdf>" --json
输出 JSON 包含:title, authors, abstract, keywords, sections[], page_count, language
步骤2:生成大纲
基于解析结果,AI 填充 outline.json(见下方大纲格式)。
骨架由 main.py --mode paper 自动生成,AI 需要:
- 润色每页标题(改成观点式标题,不是章节名)
- 精简要点(每页 ≤ 6 条,每条 ≤ 38 字)
- 埋入金句(每 3-5 页至少 1 句)
- 删除不必要的过渡页(论文模式可精简)
步骤2:AI 优化大纲(智能体介入,体现"智能")
代码生成的是骨架大纲,AI 需要在此基础上优化,让用户感受到"AI 在思考":
优化规则:
1. 标题改为观点式(最重要):
- ❌「研究方法」→ ✅「三步法锁定关键变量」
- ❌「数据分析」→ ✅「数据揭示的三个反直觉发现」
- ❌「结论」→ ✅「这三点值得你记住」
2. 精简要点:每页 ≤ 6 条,每条 ≤ 38 字
3. 埋入金句:每 3-5 页至少 1 句(反常识 × 画面感 × 常识口吻)
4. 补充数据来源:要点中的关键数据标注年份和出处
5. 删除空洞内容:去掉"随着…的发展"、"综上所述"等套话
优化后展示格式:
🤖 AI 已优化大纲(相比原始骨架):
• 标题改为观点式(如"三步法锁定关键变量")
• 精简了 X 个要点
• 埋入了 Y 句金句
• 补充了数据来源
📋 优化后大纲(共 N 页):
1. [封面] 主标题
2. [目录] 4 个章节
3. [章节] 背景与现状
4. [内容] 观点式标题 ← 已优化
• 要点1(数据来源)← 已补充
• 要点2
• 金句:「反常识判断」← 已埋入
5. [总结] 总结标题
6. [结束] 谢谢
请确认或修改(如"第4页标题改成XXX"、"加一页数据页")
步骤3:用户确认大纲
将大纲以人类可读形式展示给用户:
📋 PPT 大纲(共 N 页)
1. [封面] 主标题
2. [目录] 4 个章节
3. [章节] 背景与现状
4. [内容] 核心观点标题
• 要点1
• 要点2
• 要点3
5. [总结] 总结标题
6. [结束] 谢谢
请确认或修改(如"第4页标题改成XXX"、"加一页数据页")
用户编辑方式:
- "把第3页标题改成…" → 修改对应 slide 的 title
- "第5页加一个要点" → 在 points 数组追加
- "删除第7页" → 从 slides 数组移除
- "在目录后加一页过渡" → 在对应位置插入 section 类型 slide
- "确认" / "没问题" → 进入下一步
步骤4:选择风格
请选择演示风格:
1. 🏢 专业汇报 — 学术/部门汇报(默认)
2. 🔬 科普通俗 — 科普/创意展示
3. 📚 教学课件 — 课件/培训
4. 💼 商务汇报 — 商务提案/融资
步骤5:生成 PPT
cd <skill_dir>/scripts
python ppt_generator.py "<outline.json>" --style <风格名> --output "<输出目录>/output.pptx"
步骤6:撰写逐字稿
AI 基于大纲 + script_template.md 格式,为每页撰写演讲逐字稿。
输出为 script.md,保存到同一输出目录。
模式二:主题模式 💡
用户输入主题 → 步骤1:AI 分析主题 → 步骤2:AI 生成大纲 → 步骤3:AI 优化大纲
→ 步骤4:用户确认 → 步骤5:AI 推荐风格 → 步骤6:生成PPT → 步骤7:AI 撰写逐字稿 → 交付
步骤1:AI 分析主题
- 理解主题的核心观点、目标受众、演讲场景
- 如果主题太宽泛,提示用户聚焦
步骤2:AI 生成大纲
cd <skill_dir>/scripts
python main.py --mode topic --title "主题" --subtitle "副标题"
代码生成骨架大纲,AI 需要在此基础上扩展内容。
步骤3:AI 优化大纲(同论文模式步骤2)
- 标题改为观点式
- 精简要点(每页 ≤ 6 条,每条 ≤ 38 字)
- 埋入金句(每 3-5 页至少 1 句)
- 补充数据来源(关键数据标注年份和出处)
- 每页内容必须 ≥ 120 字(避免空洞)
步骤4:用户确认大纲(同论文模式步骤3)
步骤5:AI 推荐风格(智能体介入)
AI 根据主题特征推荐最合适的风格:
- 学术/科研 → professional(专业汇报)
- 科普/创意 → science(科普通俗)
- 教学/培训 → courseware(教学课件)
- 商务/汇报 → business(商务汇报)
- 医学/教育 → popular_science(科普活动)
推荐格式:
🤖 AI 推荐风格:professional(专业汇报)
理由:学术论文主题,受众为专业人士,需要稳重专业的风格。
请选择风格:
1. 🏢 专业汇报 — 学术/部门汇报(AI 推荐)
2. 🔬 科普通俗 — 科普/创意展示
3. 📚 教学课件 — 课件/培训
4. 💼 商务汇报 — 商务提案/融资
5. 🎯 科普活动 — 医学科普/教育活动
步骤6:生成 PPT(同论文模式步骤5)
步骤7:AI 撰写逐字稿(同论文模式步骤6)
区别:
- 步骤2 用 python main.py --mode topic --title "主题" --subtitle "副标题"
- AI 需要根据主题自行扩展内容(检索数据、提炼观点、撰写要点)
- 每页内容必须 ≥ 120 字(避免空洞)
大纲 JSON 格式
{
"title": "演示标题",
"subtitle": "副标题",
"author": "作者(可选)",
"mode": "paper|topic",
"style": "professional|science|courseware|business|popular_science",
"slides": [
{"type": "cover", "title": "主标题", "subtitle": "副标题"},
{"type": "outline", "items": ["目录项1", "目录项2", "目录项3"]},
{"type": "section", "title": "章节标题"},
{"type": "content", "title": "观点式标题", "points": ["要点1", "要点2"], "golden_sentence": "金句(反常识判断)"},
{"type": "quote", "title": "金句", "subtitle": "来源/说明", "golden_sentence": "反常识 × 画面感 × 常识口吻"},
{"type": "summary", "title": "总结", "points": ["结论1", "结论2"]},
{"type": "end", "title": "谢谢", "subtitle": "Q & A"}
]
}
幻灯片类型说明:
- cover:封面页(标题+副标题+作者+可选背景图)
- outline:目录页(最多 10 项,2行5列卡片网格)
- section:章节过渡页(章节标题 + 大序号)
- content:内容页(标题 + 要点列表,最多 6 个要点 + 可选金句框 + 可选配图)
- quote:金句页(独立金句展示页,用于换气/升华,AI 优化时插入)
- image:图文混排页(大图 + 标题 + 说明)
- comparison:对比页(两栏对比:旧 vs 新、优势 vs 劣势 + 结论)
- timeline:时间轴页(发展历程、里程碑)
- data:数据页(关键指标大数字展示 + 可选金句)
- chart:图表页(柱状图/饼图/折线图 + 可选金句)
- summary:总结页(标题 + 总结要点)
- end:结束页(谢谢/Q&A)
新增类型的 JSON 格式:
{"type": "comparison", "title": "新旧模式对比",
"left": {"title": "传统模式", "points": ["人工", "慢", "贵"]},
"right": {"title": "新模式", "points": ["智能", "快", "省"]},
"conclusion": "新模式更优"},
{"type": "timeline", "title": "发展历程",
"events": [{"time": "1958", "desc": "理科馆"}, {"time": "2026", "desc": "医科馆"}]},
{"type": "data", "title": "关键指标",
"metrics": [{"value": "190万", "label": "参观人次"}],
"golden_sentence": "数据揭示趋势"},
{"type": "chart", "title": "各年文献数量", "chart_type": "bar|pie|line",
"chart_data": {"labels": ["2019", "2020"], "values": [100, 150]},
"golden_sentence": "增长趋势明显"},
{"type": "image", "title": "医科馆", "image": "图片路径", "caption": "图片说明"},
{"type": "content", "title": "关键发现", "points": ["..."], "image": "图片路径"}
图片支持说明:
- cover 的 background_image 字段:封面背景图(自动加蒙版)
- content 的 image 字段:内容页右侧配图(左文右图)
- image 类型:独立图文混排页(大图 + 说明)
- 图片路径用本地绝对路径或 URL,AI 可用 ImageGen 生成配图
AI 优化时的类型选择:
- 两方对照(优缺点/新旧/方案对比)→ comparison
- 时间顺序/发展历程/里程碑 → timeline
- 关键指标/核心数据 → data
- 趋势/占比/对比数据 → chart(柱状图/饼图/折线图)
- 金句升华/换气 → quote
- 需要配图的观点 → content + image 字段 或 image 类型
AI 优化时的金句用法:
1. content 类型的 golden_sentence 字段:在内容页底部渲染金句框(轻量换气)
2. quote 类型:独立金句页,用于章节之间或总结前(重量级升华)
3. 金句公式:反常识 × 画面感 × 常识口吻(如「增长的天花板,从来不是市场太小,而是我们离用户太远」)
内容质量红线
- 标题是观点,不是章节名(❌「研究方法」→ ✅「三步法锁定关键变量」)
- 每页 ≤ 6 个要点,每条 ≤ 38 字
- 每页 ≥ 120 字正文(避免空洞)
- 每 3-5 页埋 1 句金句(用
golden_sentence字段或quote页) - 数据带来源(标注年份和出处)
- 禁用套话("随着…的发展"、"综上所述")
逐字稿撰写规范
基于 script_template.md 格式,AI 为每页撰写:
- 开场引导(承上启下,1-2 句)
- 核心讲解(展开要点,可加数据/案例/类比)
- 过渡收束(本页结论 + 引出下一页)
要求:
- 口语化(像和朋友聊天)
- 节奏感(长短句交替,适当停顿)
- 每页 150-250 字(约 1-1.5 分钟)
- 数据带出处
- 偶尔加入互动感("大家可能会想…")
机械质检(verify_ppt.py,生成后必跑)
生成 PPTX 后,先跑确定性机械质检(只读,不改文件),再进入 AI 终审。这一步能机械拦截「空白页」「文本溢出」「字号过小」等生成缺陷(防止生成链路静默降级出空白页):
python <skill_dir>/scripts/verify_ppt.py "输出.pptx"
# 退出码:0 全通过;2 存在 error(如空白页);1 仅 warning
4 项检查:empty-slide(空页,error 级)、text-overflow(文本溢出)、tiny-font(正文 <10pt)、sparse-content(全文文本量过低)。
AI 质量审查(终审清单)
生成 PPT 和逐字稿后,AI 需执行终审,任一项不达标即回炉修改:
| 维度 | 检查项 | 通过标准 |
|---|---|---|
| 内容完整 | 覆盖主题全部要点?页数达标? | 无缺页、无"待补充"占位 |
| 逻辑一致 | 目录与正文对得上?前后观点矛盾? | 模块名一致、数据不冲突 |
| 数据可信 | 关键数据有来源/年份?无编造? | 每条可溯源,不确定已标注 |
| 观点与金句 | 每 3-5 页有金句?标题是观点非目录? | 金句 ≥ 页数/4,标题无空名 |
| 反 AI 味 | 出现套话清单表达? | 零套话,语气像人写 |
| 格式正确 | JSON 格式正确?字段完整? | 无语法错误、字段齐全 |
审查格式:
🔍 AI 终审结果:
✅ 内容完整(12 页,无占位)
✅ 逻辑一致(目录与正文对应)
✅ 数据可信(关键数据带来源)
✅ 金句埋入(3 句,覆盖 3 处)
✅ 反 AI 味(无套话)
✅ 格式正确(JSON 通过校验)
评分:95/100,可交付
数据检索指引(AI 优化时)
主题模式下,AI 生成大纲时如遇信息缺口,应主动检索真实数据:
- 检索式:[主题] + 数据/报告/趋势/案例/市场规模
- 优先信源:Gartner、IDC、麦肯锡、国家统计局、行业白皮书(近 12 个月优先)
- 每条关键数据必须带来源与年份
- 不确定的数据标"据公开资料",不伪装成精确事实
- 检索到的数据用于填充 data 类型页面的 metrics 字段
输出文件
交付到用户桌面 PPT_生成_<时间戳>/ 目录:
- output.pptx — 生成的 PPT 文件
- outline.json — 大纲 JSON(供后续编辑)
- script.md — 演讲逐字稿
快速命令
# 列出所有风格
python <skill_dir>/scripts/main.py --list-styles
# 论文模式
python <skill_dir>/scripts/main.py --mode paper --input "论文.pdf" --style professional
# 主题模式
python <skill_dir>/scripts/main.py --mode topic --title "主题" --subtitle "副标题" --style science
# 从已有大纲生成
python <skill_dir>/scripts/main.py --mode outline --input "outline.json" --style business
# 单独解析 PDF
python <skill_dir>/scripts/pdf_parser.py "论文.pdf" --json
# 单独生成 PPT(从大纲)
python <skill_dir>/scripts/ppt_generator.py "outline.json" --style courseware --output "out.pptx"
依赖
- python-pptx(PPT 生成基础)
- pymupdf(PDF 解析)
- skia-pathops、uharfbuzz(SVG → PPTX 转换依赖)
- ppt-master 的
svg_to_pptx包已随技能自带(scripts/_vendor/ppt-master/,MIT 许可,作者 Hugo He,版权标识完整保留):生成原生可编辑 PPTX。若该包缺失,自动降级为纯 python-pptx 生成。