2页PPT生成器

2slides-ppt-generator
分类编程
作者Agentic Awesome Skills 社区
许可MIT
评分4.30/5
使用15.3K

2slides 演示文稿生成

概述

使用 2slides AI API 生成专业演示文稿。该技能支持基于内容的生成(主题驱动的 Fast PPT)、参考图风格匹配、自定义 PDF 设计、文档总结、AI 语音旁白以及页面/音频导出。它会返回一个交互式幻灯片 URL 和一个可下载的 PDF 文件。

本技能改编自 2slides 官方技能仓库 (2slides/slides-generation-2slides-skills)。它调用托管的 2slides API,需要用户提供自己的 API 密钥和额度。

何时使用此技能

  • 当用户要求根据文本或大纲“创建演示文稿”、“制作幻灯片”或“生成 PPT”时。
  • 当用户希望幻灯片风格与参考图一致时(例如“创建像这张图一样的幻灯片”)。
  • 当用户希望在没有参考图的情况下创建自定义设计的 PDF 幻灯片时。
  • 当用户上传文档并要求“根据此文档创建幻灯片”时。
  • 当用户希望为生成的幻灯片添加 AI 语音旁白,或将幻灯片导出为 PNG 图片、旁白导出为 WAV 音频时。
  • 当用户询问“有哪些可用主题?”或想要浏览/选择主题时。

安装要求

用户必须拥有 2slides API 密钥和额度:

1. 获取 API 密钥: 访问 https://2slides.com/api 创建账户并获取 API 密钥
- 新用户可获得 500 免费额度(约可生成 50 页 Fast PPT)
2. 购买额度(可选): 访问 https://2slides.com/pricing 购买额外额度
- 按需付费,无需订阅
- 额度永不过期
- 大额套餐最高可享 20% 折扣
3. 设置 API 密钥: 将密钥存储在环境变量中:SLIDES_2SLIDES_API_KEY

bash
read -r -s SLIDES_2SLIDES_API_KEY
export SLIDES_2SLIDES_API_KEY

4. 安装脚本依赖: 在使用 Python 脚本前,请在该技能目录下安装指定的本地依赖:

bash
python -m pip install -r requirements.txt

额度消耗:

  • Fast PPT: 10 额度/页

  • Nano Banana 1K/2K: 100 额度/页

  • Nano Banana 4K: 200 额度/页

  • 语音旁白: 210 额度/页

  • 下载导出: 免费

详细定价信息请参阅 references/pricing.md

工作流决策树

根据用户请求选择合适的方法:

code
用户请求
│
├─ "根据此内容/文本创建幻灯片"
│  └─> 使用基于内容的生成(第 1 节)
│
├─ "创建像这张图一样的幻灯片"
│  └─> 使用参考图生成(第 2 节)
│
├─ "创建自定义设计幻灯片" 或 "创建 PDF 幻灯片"
│  └─> 使用自定义 PDF 生成
eration (第 3 节) │ ├─ "根据此文档创建幻灯片" │ └─> 使用文档摘要 (第 4 节) │ ├─ "添加语音旁白" 或 "为幻灯片生成音频" │ └─> 使用语音旁白 (第 5 节) │ ├─ "将幻灯片下载为图片" 或 "导出幻灯片和语音" │ └─> 使用下载导出 (第 6 节) │ └─ "搜索主题" 或 "有哪些可用主题?" └─> 使用主题搜索 (第 7 节)
code
---

1. 基于内容的生成

根据用户提供的文本内容生成幻灯片。

使用场景

  • 用户在消息中直接提供内容
  • 用户要求 "创建一个关于 X 的演示文稿"
  • 用户提供了结构化的大纲或要点

工作流

步骤 1:准备内容

为了获得最佳效果,请清晰地组织内容结构:


标题:[主话题]

第 1 节:[子话题]

  • 关键点 1

  • 关键点 2

  • 关键点 3

第 2 节:[子话题]

  • 关键点 1

  • 关键点 2

code
步骤 2:选择主题(必填)

搜索合适的主题(必须提供 themeId):

bash
python scripts/search_themes.py --query "business"
python scripts/search_themes.py --query "professional"
python scripts/search_themes.py --query "creative"
code
从结果中选择一个主题 ID。

步骤 3:生成幻灯片

使用 generate_slides.py 脚本并传入主题 ID:

bash

基础生成(需要主题 ID)


python scripts/generate_slides.py --content "此处输入内容" --theme-id "theme123"

使用不同语言

python scripts/generate_slides.py --content "此处输入内容" --theme-id "theme123" --language "Spanish"

针对较长演示文稿使用异步模式

python scripts/generate_slides.py --content "此处输入内容" --theme-id "theme123" --mode async
code
步骤 4:处理结果

同步模式响应:

json
{
"slideUrl": "https://2slides.com/slides/abc123",
"pdfUrl": "https://2slides.com/slides/abc123/download",
"status": "completed"
}
code
向用户提供这两个 URL:
  • slideUrl:在线交互式幻灯片

  • pdfUrl:可下载的 PDF 版本

异步模式响应:

json
{
"jobId": "job123",
"status": "pending"
}
code
轮询结果:
bash
python scripts/get_job_status.py --job-id "job123"
code
---

2. 基于参考图生成

生成与参考图像风格一致的幻灯片。

使用场景

  • 用户提供图片 URL 并要求 "创建像这样的幻灯片"
  • 用户希望匹配现有的品牌/设计风格
  • 用户有想要模仿的模板图片

工作流

步骤 1:验证图片 URL

确保参考图片满足:

  • URL 公开可访问

  • 格式有效(PNG, JPG 等)

  • 代表了所需的幻灯片风格

步骤 2:生成幻灯片

使用 generate_slides.py 脚本并添加 --reference-image 参数:

bash
python scripts/generate_slides.py \
--content "您的演示文稿内容" \
--reference-image "https://example.com/template.jpg" \
--language "Auto"
code
可选参数(所有值均来自 2slides API):
bash
--language LANG # Auto, English, Spanish, Arabic, Portuguese, Indonesian,
# Japanese, Russian, Hindi, French, German, Greek, Vietnamese,
# Turkish, Polish, Italian, Korean, Simplified Chinese,
# Traditional Chinese, Thai (默认: Auto)
--mode sync|async # 默认: 主题使用 sync,参考图使用 async
--aspect-ratio RATIO # 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 (默认: 16:9)
code
-resolution 1K|2K|4K            # 默认值: 2K
--page N # 0=自动, 1-100 (默认值: 1)
--content-detail concise|standard # 默认值: concise

注意: 此模式使用 Nano Banana Pro 模式,积分消耗如下:

  • 1K/2K:每页 100 积分

  • 4K:每页 200 积分

步骤 3:处理结果

此模式始终同步运行并返回:

json
{
"slideUrl": "https://2slides.com/workspace?jobId=...",
"pdfUrl": "https://...pdf...",
"status": "completed",
"message": "Successfully generated N slides",
"slidePageCount": N
}

向用户提供这两个 URL:

  • slideUrl:在 2slides 工作区查看幻灯片

  • pdfUrl:PDF 直接下载链接(1 小时后过期)

处理时间: 每页约 30 秒(1-2 页通常需要 30-60 秒)

---

3. 自定义 PDF 生成

无需参考图片,直接根据文本生成自定义设计的幻灯片。

使用场景

  • 用户希望自定义设计且未提供参考图
  • 用户请求“创建 PDF 幻灯片”
  • 用户希望指定设计特征
  • 作为基于主题生成的替代方案,提供更高的设计灵活性

工作流

步骤 1:准备内容

清晰地组织内容结构:

code
标题:[主话题]

章节 1:[子话题]

  • 关键点 1

  • 关键点 2

章节 2:[子话题]

  • 关键点 1

  • 关键点 2

步骤 2:生成幻灯片

使用 create_pdf_slides.py 脚本:

bash
# 基础生成
python scripts/create_pdf_slides.py --content "此处输入内容"

指定设计风格 (API: designStyle)

python scripts/create_pdf_slides.py \ --content "2025年第四季度销售报告" \ --design-style "现代极简主义,蓝色调"

高分辨率且自动检测页数

python scripts/create_pdf_slides.py \ --content "营销计划" \ --resolution 4K \ --page 0 \ --content-detail standard

可选参数:

bash
--design-style "text"           # 设计指令 (API: designStyle)
--language LANG # 与 generate_slides 相同 (默认值: Auto)
--aspect-ratio RATIO # 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 (默认值: 16:9)
--resolution 1K|2K|4K # 默认值: 2K
--page N # 0=自动, 1-100 (默认值: 1)
--content-detail concise|standard # 默认值: standard

步骤 3:处理结果

返回结构与 create-like-this 相同:

json
{
"slideUrl": "https://2slides.com/workspace?jobId=...",
"pdfUrl": "https://...pdf...",
"status": "completed",
"message": "Successfully generated N slides",
"slidePageCount": N
}

注意事项:

  • 积分消耗与 create-like-this 相同(1K/2K 每页 100 积分,4K 每页 200 积分)

  • 处理时间:每页约 30 秒

  • 自动生成 PDF

  • 使用 AI 根据内容和规格创建自定义设计

---

4. 文档总结

根据文档内容生成幻灯片。

使用场景

  • 用户上传文档(PDF, DOCX, TXT 等)
  • 用户要求“根据此文档创建幻灯片”
  • 用户希望将长内容总结为演示文稿格式

工作流

步骤 1:读取文档

使用相应的工具读取文档内容:

  • PDF:使用 PDF 读取工具

  • DOCX:使用 DOCX 读取工具

  • TXT/MD:使用 Read 工具

步骤 2:提取关键点

分析文档并提取:

  • 主题和核心议题

  • 每个章节的关键点

  • 重要数据、引用或示例

  • 逻辑流和结构

步骤 3:组织内容

将提取的信息格式化为演示文稿结构:

code
标题:
[文档主旨]

引言

  • 背景

  • 目的

  • 概览

[文档第 1 节]

  • 关键点 1

  • 关键点 2

  • 支撑细节

[文档第 2 节]

  • 关键点 1

  • 关键点 2

  • 支撑细节

结论

  • 总结

  • 核心要点

  • 后续步骤

步骤 4:生成幻灯片

使用基于内容的生成工作流(第 1 节)。先搜索主题,然后生成:

bash
# 搜索合适的主题
python scripts/search_themes.py --query "business"

使用主题 ID 生成

python scripts/generate_slides.py --content "[步骤 3 中的结构化内容]" --theme-id "theme123"

提示:

  • 保持幻灯片简洁(每页 3-5 个要点)

  • 聚焦核心洞察,而非全文

  • 使用文档标题作为幻灯片标题

  • 包含重要的统计数据或引用

  • 询问用户是否需要突出显示特定章节

---

5. 语音旁白

为幻灯片添加 AI 生成的语音旁白。

使用场景

  • 用户希望为幻灯片添加音频
  • 用户请求“添加语音旁白”或“生成音频”
  • 用户需要带有口播内容的演示文稿
  • 用户需要多角色旁白

前提条件

重要: 在添加旁白之前,幻灯片生成任务必须已完成。

1. 先使用任何方法(第 1、2、3 或 4 节)生成幻灯片
2. 从生成结果中获取 Job ID
3. 在请求旁白前,确保任务状态为 "completed"

工作流

步骤 1:选择声音

共有 30 种可用声音,包括:

  • Puck (默认)

  • Aoede

  • Charon

  • Kore

  • Fenrir

  • Phoebe

  • 以及其他 24 种...

列出所有声音:

bash
python scripts/generate_narration.py --list-voices

步骤 2:生成旁白

使用 generate_narration.py 脚本并提供 Job ID:

bash
# 使用默认声音进行基础旁白生成
python scripts/generate_narration.py --job-id "abc-123-def-456"

单一演讲者,指定声音

python scripts/generate_narration.py --job-id "abc-123-def-456" --voice Aoede

多角色模式

python scripts/generate_narration.py --job-id "abc-123-def-456" --multi-speaker

参数(与 2slides API 一致):

  • --job-id: 任务 ID(必填,Nano Banana 的 UUID)

  • --voice: 声音名称(默认:Puck);使用 --list-voices 查看全部 30 种

  • --language: 旁白语言(默认:Auto)

  • --multi-speaker: 启用多角色模式

  • --list-voices: 打印支持的声音列表,不调用 API

步骤 3:检查状态

旁白生成是异步运行的:

bash
python scripts/get_job_status.py --job-id "abc-123-def-456"

步骤 4:处理结果

完成后,任务将包含旁白文件。使用下载端点(第 6 节)获取音频文件。

注意事项:

  • 成本: 每页 210 积分(文本 10 积分,音频 200 积分)

  • 处理时间取决于幻灯片页数

  • 提供 30 种声音选项

  • 支持 19 种语言及自动检测

  • 多角色模式会使用不同的声音以增加多样性

---

6. 下载导出

将幻灯片下载为 PNG 图片,将语音旁白下载为 WAV 文件。

使用场景

  • 用户希望将幻灯片下载为图片
  • 用户需要单独的语音文件
  • 用户需要文本转录
  • 用户需要图片格式的幻灯片以便在其他工具中使用

工作流

步骤 1:验证任务完成

确保幻灯片(以及可选的旁白)已生成且任务已完成。

步骤 2:下载压缩包

使用 download_slides_pages_voices.py 脚本:

bash
# 使用默认文件名下载 (<job_id>.zip)
python scripts/download_slides_pages_voices
.py --job-id "abc-123-def-456"

下载到指定路径

python scripts/download_slides_pages_voices.py \ --job-id "abc-123-def-456" \ --output "my-presentation.zip"
code
步骤 3:解压内容

ZIP 压缩包包含:

  • Pages: 每页幻灯片的 PNG 文件

  • Voices: WAV 音频文件(如果生成了旁白)

  • Transcripts: 旁白的文本转录

注意事项:

  • 费用: 完全免费(不消耗积分)

  • 下载链接有效期仅为 1 小时

  • 包含所有页面和语音文件

  • 高质量 PNG 导出

  • 音频采用 WAV 格式

---

7. 主题搜索

为演示文稿寻找合适的主题。

使用场景

  • 在生成具有特定风格的幻灯片之前
  • 用户询问“有哪些可用主题?”
  • 用户需要专业或品牌化的外观

工作流

搜索主题:

bash

搜索特定风格(必须提供 query 参数)


python scripts/search_themes.py --query "business"
python scripts/search_themes.py --query "creative"
python scripts/search_themes.py --query "education"
python scripts/search_themes.py --query "professional"

获取更多结果

python scripts/search_themes.py --query "modern" --limit 50
code
主题选择:

1. 向用户展示可用主题的名称和描述
2. 请用户选择或使用默认主题
3. 在生成请求中使用该主题 ID

---

使用 MCP 服务器

如果 Claude Desktop 中配置了 2slides MCP 服务器,请使用集成工具而非脚本。

两种配置模式:

1. 可流式传输的 HTTP 协议(推荐)
- 设置最简单,无需本地安装
- 配置:"url": "https://2slides.com/api/mcp?apikey=YOUR_API_KEY"

2. NPM 包 (stdio)
- 使用本地 npm 包
- 配置:"command": "npx", "args": ["2slides-mcp"]

可用 MCP 工具:

  • slides_generate - 根据内容生成幻灯片

  • slides_create_like_this - 根据参考图生成

  • themes_search - 搜索主题

  • jobs_get - 检查任务状态

完整设置指南和详细工具文档请参阅 mcp-integration.md

何时使用 MCP 与脚本:

  • 已配置时,在 Claude Desktop 中使用 MCP

  • 在 Claude Code CLI 中或 MCP 不可用时使用脚本

---

高级功能

同步 vs 异步模式

同步模式(默认):

  • 等待生成完成(30-60 秒)

  • 立即返回结果

  • 适用于快速生成演示文稿

异步模式:

  • 立即返回任务 ID (job ID)

  • 使用 get_job_status.py 轮询结果

  • 适用于大型演示文稿或批量处理

  • 建议轮询频率: 每 20-30 秒检查一次,以避免给服务器带来压力

速率限制 (Rate Limits)

不同端点有不同的速率限制:

  • Fast PPT (generate): 每分钟 10 次请求
  • Nano Banana (create-like-this, create-pdf-slides): 每分钟 6 次请求

如果触发速率限制,请稍后重试或检查套餐限制。

积分消耗

  • Fast PPT (generate 端点): 每页 10 积分
  • Nano Banana 1K/2K (create-like-this, create-pdf-slides): 每页 100 积分
  • Nano Banana 4K: 每页 200 积分
  • 语音旁白: 每页 210 积分(10 积分用于文本,200 积分用于音频)
  • 下载导出: 免费(不消耗积分)

购买积分

2slides 采用按需付费的积分系统,无需订阅。

积分套餐:(当前促销:最高 20% 折扣)

  • 2,000 积分:$5.00

  • 4,000 积分:$9.50 (5% off)

  • 10,000 积分:$22.50 (10% off)

  • 20,000 积分

: $42.50 (85折)
  • 40,000 积分: $80.00 (8折)

新用户可获得 500 免费积分用于上手体验(约可生成 50 页 Fast PPT)。

积分永不过期 —— 可根据您的节奏随时使用。

购买积分请访问: https://2slides.com/pricing

下载链接有效期

所有下载链接(PDF、ZIP 压缩包)的有效期仅为 1 小时。请在生成后及时下载文件。

语言支持

支持多种语言生成幻灯片(请使用语言全称):

bash
--language "Auto" # 自动检测(默认)
--language "English" # 英语
--language "Simplified Chinese" # 简体中文
--language "Traditional Chinese" # 繁體中文
--language "Spanish" # 西班牙语
--language "French" # 法语
--language "German" # 德语
--language "Japanese" # 日语
--language "Korean" # 韩语
code
以及更多:阿拉伯语、葡萄牙语、印尼语、俄语、印地语、越南语、土耳其语、波兰语、意大利语。

错误处理

常见错误代码:

1. 缺失 API 密钥


Error: API key not found
解决方案:设置 SLIDES_2SLIDES_API_KEY 环境变量
code
2. RATE_LIMIT_EXCEEDED (超出速率限制)

Error: 429 Too Many Requests
解决方案:等待 20-30 秒后重试
速率限制:Fast PPT (10次/分), Nano Banana (6次/分)
code
3. INSUFFICIENT_CREDITS (积分不足)

Error: Not enough credits
解决方案:在 https://2slides.com/api 充值积分
code
4. INVALID_JOB_ID (无效的任务 ID)

Error: Job ID not found or invalid
解决方案:核对任务 ID 格式(Nano Banana 必须为 UUID)
code
5. Invalid content (内容无效)

Error: 400 Bad Request
解决方案:核对内容格式和参数
``

---

脚本参数参考 (2slides API)

所有脚本均接受与 2slides API 一致的参数。允许的值在 scripts/api_constants.py 中定义,并在适用处强制执行。

| 脚本 | 关键参数 | 允许的值(见脚本 --help 或 api_constants.py) |
|--------|----------------|----------------------------------------------------------|
|
generate_slides.py | --language | Auto, English, Spanish, Arabic, Portuguese, Indonesian, Japanese, Russian, Hindi, French, German, Greek, Vietnamese, Turkish, Polish, Italian, Korean, Simplified Chinese, Traditional Chinese, Thai |
| |
--mode | sync, async |
| |
--aspect-ratio | 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 |
| |
--resolution | 1K, 2K, 4K |
| |
--content-detail | concise, standard |
|
create_pdf_slides.py | 同上 + --design-style / --design-spec (自由文本) | |
|
generate_narration.py | --voice | 30 种声音 (Puck, Aoede, Charon, …); 使用 --list-voices 查看 |
| |
--language | Auto, English, Spanish, Arabic, Portuguese, Indonesian, Japanese, Russian, Hindi, French, German, Vietnamese, Turkish, Polish, Italian, Korean, Simplified Chinese, Traditional Chinese |
| |
--multi-speaker | 出现该参数即启用 |
|
search_themes.py | --query (必填), --limit (1–100) | |
|
get_job_status.py | --job-id (必填) | |
|
download_slides_pages_voices.py | --job-id (必填), --output (路径) | |

---

补充文档

API 参考

详见 api-reference.md
  • 所有端点和参数
  • 请求/响应格式
  • 身份验证详情
  • 速率限制与最佳实践
  • 错误代码与处理

价格信息

详见 pricing.md
  • 积分套餐
套餐与定价
  • 成本示例与计算
  • 免费试用详情
  • 退款政策
  • 企业方案

---

最佳实践技巧

内容结构:

  • 使用清晰的标题和子标题

  • 保持要点简洁

  • 每节限制在 3-5 个要点

  • 包含相关的示例或数据

主题选择:

  • 标准生成需要提供 Theme ID

  • 使用与演示目的匹配的关键词进行搜索

  • 常用搜索词:"business"(商务)、"professional"(专业)、"creative"(创意)、"education"(教育)、"modern"(现代)

  • 每个主题具有独特的样式和布局

参考图片:

  • 使用高质量图片以获得最佳效果

  • 支持 URL 或 base64 编码图片

  • 公开 URL 必须可访问

  • 根据质量需求选择分辨率设置 (1K/2K/4K)

  • 使用 page=0 可自动检测幻灯片页数

文档处理:

  • 仅提取关键信息

  • 不要尝试将整个文档放入幻灯片中

  • 专注于核心洞察和结论

  • 询问用户需要强调哪些章节

---

安全与防护注意事项

  • 凭据: 本技能从 SLIDES_2SLIDES_API_KEY 环境变量中读取 API 密钥。切勿在命令中硬编码密钥、将其提交至代码库或将其回显给用户。脚本仅通过 HTTPS 将其作为 bearer/apikey 值发送至 https://2slides.com
  • 网络与付费操作: 每次生成调用都会向 2slides API 发起出站网络请求并消耗用户积分(根据模式不同,每页 10–210 积分)。将生成、参考图片、自定义 PDF 和旁白调用视为计费操作 —— 在生成大型或高分辨率 (4K) 演示文稿前请确认意图,并在页数/成本较高时告知用户。
  • 无破坏性本地操作: 脚本仅读取用户指定的内容/文件,并将生成的输出(如下载的 ZIP 包)写入用户指定的路径。不会修改或删除无关文件。
  • 输入处理: 参考图片和文档输入将被发送至 2slides 服务进行处理。请勿提交未经用户授权第三方处理的机密资料。
  • 下载 URL 在 1 小时后过期 —— 请及时获取产出物,不要将 URL 视为持久存储。

局限性

  • 需要有效的 2slides 账户、API 密钥及充足的积分;本技能不负责提供或支付积分。
  • 结果为 AI 生成的草稿,旨在作为起点而非最终经过事实核查的交付物 —— 使用前请审核内容。
  • 本技能不能替代特定环境的验证或专家评审。如果缺失 API 密钥、必要输入或预期的成本/范围,请停止操作并请求澄清。
  • 存在速率限制(Fast PPT 10次/分,Nano Banana 6次/分);请每 20–30 秒轮询一次异步任务,避免紧凑循环。

相关技能

  • @youtube-full` — 获取可由本技能总结为演示文稿的源材料(转录文本)。