Open-Source AI Presentation Generator and API (Gamma, Beautiful AI, Decktopus Alternative)
开源 AI 演示文稿生成器与 API (Gamma、Beautiful AI、Decktopus 替代方案)
✨ 为什么选择 Presenton
无 SaaS 锁定 · 无强制订阅 · 完全掌控模型与数据
Presenton 的独特之处:
- 通过 Docker 包 在 Web 端实现完全自托管
- 或下载 桌面应用(支持 Mac、Windows 和 Linux)
- 兼容 OpenAI、Gemini、Vertex AI、Azure OpenAI、Amazon Bedrock、Fireworks、Together AI、Anthropic、LM Studio、Ollama 或自定义模型
- 内置 AI 演示文稿生成 API
- 完全开源(Apache 2.0 许可证)
- 支持自定义设计/模板
- 可完全编辑的 PPTX 导出
Tip
给我们点个星! 一个 ⭐ 是您对我们的支持,也激励我们继续开发!😇
🎛 功能特性
💻 Presenton 桌面版
使用您自己的模型提供商(BYOK)创建 AI 驱动的演示文稿,或在您自己的设备上本地运行所有功能,实现完全控制和数据隐私。
支持的平台
| 平台 | 架构 | 安装包 | 下载 |
|---|---|---|---|
| macOS | Apple Silicon / Intel | .dmg |
下载 ↗ |
| Windows | x64 | .exe |
下载 ↗ |
| Linux | x64 | .deb |
下载 ↗ |
部署到云服务提供商
Presenton 让您完全掌控 AI 演示文稿工作流程。选择您的模型,自定义您的体验,并确保您的数据隐私。
- 自定义模板和主题 — 使用 HTML 和 Tailwind CSS 创建无限的演示文稿设计
- AI 模板生成 — 从现有 Powerpoint 文档创建演示文稿模板
- 灵活生成 — 通过提示词或上传的文档制作演示文稿
- 导出就绪 — 保存为具有专业格式的 PowerPoint (PPTX) 和 PDF
- 内置 MCP 服务器 — 通过模型上下文协议(Model Context Protocol)生成演示文稿
- 自带密钥 — 使用您自己的 OpenAI、Google Gemini、Vertex AI、Azure OpenAI、Anthropic Claude 或任何兼容提供商的 API 密钥。只需为您使用的服务付费,无隐藏费用或订阅
- Ollama 集成 — 本地运行开源模型,确保完全隐私
- 兼容 OpenAI API — 使用您自己的模型连接到任何兼容 OpenAI 的端点
- 多提供商支持 — 混合搭配文本和图像生成提供商
- 多功能图像生成 — 可选择 DALL-E 3、Gemini Flash、Pexels 或 Pixabay
- 丰富媒体支持 — 用于专业演示文稿的图标、图表和自定义图形
- 本地运行 — 所有处理都在您的设备上进行,无云依赖
- API 部署 — 作为您自己的 API 服务为团队托管
- 完全开源 — Apache 2.0 许可,可检查、修改和贡献
- Docker 就绪 — 一键部署,支持本地模型的 GPU 加速
- Electron 桌面应用 — 在 Windows、macOS 和 Linux 上作为原生桌面应用运行 Presenton(无需浏览器)
- 使用 ChatGPT 登录 — 使用您的免费或付费 ChatGPT 账户登录并立即开始创建演示文稿 — 无需单独的 API 密钥
☁️ Presenton Cloud
直接在浏览器中运行 Presenton — 无需安装,无需设置。随时随地立即开始创建演示文稿。
⚡ 运行 Presenton
您可以通过两种方式运行 Presenton: Docker 适用于无需安装本地开发环境的一键式设置,或 Electron 桌面应用 提供原生应用体验(非常适合开发或离线使用)。
选项 1:Electron(桌面应用)
将 Presenton 作为原生桌面应用运行。LLM 和图像提供商(API 密钥等)可在应用内进行配置。运行捆绑后端时,将应用与 Docker 相同的环境变量。
先决条件:Node.js (LTS)、npm、Python 3.11 以及
uv
(用于 servers/fastapi 中的共享 FastAPI 后端)。
-
首次设置
cd electron npm run setup:env此命令将安装 Node 依赖项,在 FastAPI 服务器中运行
uv sync,并安装 Next.js 依赖项。 -
开发模式运行
npm run dev此命令将编译 TypeScript 并启动 Electron。后端和用户界面将在桌面窗口内本地运行。
-
构建可分发文件(可选) 要为 Windows、macOS 或 Linux 创建安装程序:
npm run build:all npm run dist输出文件将写入
electron/dist
(或根据您在 electron-builder 设置中的配置)。
选项 2:Docker
-
启动 Presenton Linux/MacOS(Bash/Zsh Shell):
docker run -it --name presenton -p 5000:80 -v "./app_data:/app_data" ghcr.io/presenton/presenton:latestWindows(PowerShell):
docker run -it --name presenton -p 5000:80 -v "${PWD}\app_data:/app_data" ghcr.io/presenton/presenton:latest -
打开 Presenton
在您选择的浏览器中打开 http://localhost:5000 即可使用 Presenton。
注意:您可以将
5000替换为任何其他端口号,以便在不同的端口上运行 Presenton。
⚙️ 部署配置
以下列表与本仓库 docker-compose.yml(production、production-gpu、development 和 development-gpu)中转发的环境变量相匹配。请在 compose 文件旁的 .env 文件中填写值,或在执行 docker compose up 前导出这些变量。Electron 应用后端在 Docker 外部运行时也能读取相同名称的变量。
代码中还存在其他可选变量(例如高级 Mem0 路径、LiteParse 运行器,或当 Next.js 与 FastAPI 不同源时的 FAST_API_INTERNAL_URL);这些变量未在 docker-compose.yml 中配置。支持的变量名称可从 servers/fastapi/utils/get_env.py 和 servers/nextjs/ 下的 Next.js 服务器工具中找到。
LLM 和 API 密钥
- CAN_CHANGE_KEYS=[true/false]:若希望隐藏 API 密钥并使其不可修改,设为 false。
- LLM=[openai/google/vertex/azure/anthropic/lmstudio/ollama/custom/codex]:选择文本 LLM。
- OPENAI_API_KEY:当 LLM 为 openai 时必填。
- OPENAI_MODEL:当 LLM 为 openai 时必填(默认:
gpt-4.1)。 - GOOGLE_API_KEY:当 LLM 为 google 时必填。
- GOOGLE_MODEL:当 LLM 为 google 时必填(默认:
models/gemini-2.0-flash)。 - VERTEX_MODEL:当 LLM 为 vertex 时必填(默认:
gemini-2.5-flash)。 - VERTEX_API_KEY:LLM=vertex 时的可选认证方式(Vertex Express)。
- VERTEX_PROJECT / VERTEX_LOCATION:使用 GCP 项目凭据时 LLM=vertex 的可选认证方式(不要与
VERTEX_API_KEY同时使用)。 - VERTEX_BASE_URL:可选的 Vertex 网关/基础 URL 覆盖。
- AZURE_OPENAI_MODEL:当 LLM 为 azure 时必填(部署/模型名称)。
- AZURE_OPENAI_API_KEY:当 LLM 为 azure 时必填。
- AZURE_OPENAI_API_VERSION:当 LLM 为 azure 时必填(例如
2024-10-21)。 - AZURE_OPENAI_ENDPOINT / AZURE_OPENAI_BASE_URL:当 LLM 为 azure 时至少需填写其中一个。
- AZURE_OPENAI_DEPLOYMENT:LLM 为 azure 时的可选部署覆盖。
- BEDROCK_REGION:LLM 为 bedrock 时可选(默认:
us-east-1)。 - BEDROCK_MODEL:当 LLM 为 bedrock 时必填(例如:
us.anthropic.claude-3-5-haiku-20241022-v1:0)。 - BEDROCK_API_KEY:LLM 为 bedrock 时可选(API 密钥认证模式)。
- BEDROCK_AWS_ACCESS_KEY_ID / BEDROCK_AWS_SECRET_ACCESS_KEY:LLM 为 bedrock 时可选(AWS 密钥认证模式;当未设置
BEDROCK_API_KEY时需同时使用)。 - BEDROCK_AWS_SESSION_TOKEN:LLM 为 bedrock 时的可选会话令牌。
- BEDROCK_PROFILE_NAME:LLM 为 bedrock 时的可选 AWS 配置文件名称。
- FIREWORKS_API_KEY:当 LLM 为 fireworks 时必填。
- FIREWORKS_MODEL:当 LLM 为 fireworks 时必填(例如:
accounts/fireworks/models/llama-v3p1-8b-instruct)。 - FIREWORKS_BASE_URL:LLM 为 fireworks 时可选(默认:
https://api.fireworks.ai/inference/v1)。 - TOGETHER_API_KEY:当 LLM 为 together 时必填。
- TOGETHER_MODEL:当 LLM 为 together 时必填(例如:
openai/gpt-oss-20b)。 - TOGETHER_BASE_URL:LLM 为 together 时可选(默认:
https://api.together.ai/v1)。 - ANTHROPIC_API_KEY:当 LLM 为 anthropic 时必填。
- ANTHROPIC_MODEL:当 LLM 为 anthropic 时必填(默认:
claude-3-5-sonnet-20241022)。 - CODEX_MODEL:当 LLM 为 codex 时必填(Codex OAuth 流程;compose 映射主机端口 1455 用于回调)。
- CUSTOM_LLM_URL:当 LLM 为 custom 时,需提供 OpenAI 兼容的基础 URL。
- CUSTOM_LLM_API_KEY:当 LLM 为 custom 时的 API 密钥。
- CUSTOM_MODEL:当 LLM 为 custom 时的模型 ID。
- LMSTUDIO_BASE_URL:LLM 为 lmstudio 时的可选 LM Studio 基础 URL(默认:
http://localhost:1234/v1;若省略则自动追加/v1)。 - LMSTUDIO_API_KEY:LLM 为 lmstudio 时的可选 API 密钥。
- LMSTUDIO_MODEL:当 LLM 为 lmstudio 时必填(例如:
openai/gpt-oss-20b)。 - DISABLE_THINKING=[true/false]:若为 true,则在自定义 LLM 上禁用“思考中”状态。
- WEB_GROUNDING=[true/false]:若为 true,则为 OpenAI、Google 和 Anthropic 模型启用网络搜索。
- EXTENDED_REASONING=[true/false]:在配置的技术栈支持时启用扩展推理。
Ollama
当 LLM 为 ollama 时使用:
- OLLAMA_URL:Ollama HTTP API 的基础 URL(例如,从 Docker 访问时为
http://host.docker.internal:11434)。 - OLLAMA_MODEL:Ollama 中的模型名称(例如
llama3.2:3b)。 - START_OLLAMA=[true/false]:容器入口点(
start.js):可选安装 +ollama serve。默认 false(development/productioncompose)。
演示文稿记忆(Mem0 OSS)
Mem0 使用本地 Qdrant + SQLite(开源);记忆按演示文稿划分范围。
默认情况下,Docker 运行时现在将 Mem0 指向本地 Ollama 兼容的 LLM 端点,因此初始化时不再需要 OpenAI 密钥。如果希望改用 OpenAI,请将 MEM0_LLM_BASE_URL/MEM0_LLM_API_KEY 设置为 OpenAI 兼容的端点和密钥。
Docker 镜像在构建期间安装默认的 spaCy 模型(en_core_web_sm),因此 Mem0 无需每次运行都进行额外设置即可启动。
| 变量 | 用途 |
|---|---|
| MEM0_ENABLED | true/false(compose 默认 true)。 |
| MEM0_LLM_MODEL | Mem0 LLM 模型名称(compose 默认 llama3.1:latest 或 OLLAMA_MODEL)。 |
| MEM0_LLM_API_KEY | Mem0 LLM API 密钥占位符(用于 OpenAI 兼容客户端,compose 默认 ollama)。 |
| MEM0_LLM_BASE_URL | Mem0 LLM 基础 URL(compose 默认 OLLAMA_URL 或 http://host.docker.internal:11434)。 |
| MEM0_DIR | 根目录(compose 默认 /app_data/mem0)。 |
| MEM0_EMBEDDER_PROVIDER | 嵌入器后端(compose 默认 fastembed)。 |
| MEM0_EMBEDDER_MODEL | 模型 ID(compose 默认 BAAI/bge-small-en-v1.5)。 |
| MEM0_EMBEDDING_DIMS | 向量大小(compose 默认 384)。 |
| MEM0_SPACY_MODEL | 可选的 spaCy 模型覆盖(默认 en_core_web_sm)。 |
| MEM0_REQUIRE_SPACY_MODEL | 保持为 true(默认)。仅当有意让 Mem0 在不使用 spaCy 词形还原的情况下运行时,才设为 false。 |
文档解析(LiteParse)
| 变量 | 用途 |
|---|---|
| LITEPARSE_DPI | OCR 渲染 DPI(compose 默认 120)。 |
| LITEPARSE_NUM_WORKERS | 工作进程数(compose 默认 1)。 |
数据库
- DATABASE_URL:SQLAlchemy URL;若未设置,应用将回退到应用数据下的 SQLite。
- MIGRATE_DATABASE_ON_STARTUP:Compose 为所有服务设置
true,以便在启动时运行数据库迁移。
图像生成
这些变量与 docker-compose.yml 匹配。IMAGE_PROVIDER 选择后端(pexels、pixabay、gemini_flash、nanobanana_pro、dall-e-3、gpt-image-1.5、comfyui、open_webui)。对于 OpenAI 图像模式,使用 OPENAI_API_KEY;对于 Gemini 图像模式,使用 GOOGLE_API_KEY(与 LLM 部分的密钥相同)。
- DISABLE_IMAGE_GENERATION=[true/false]:禁用幻灯片图像生成。
- IMAGE_PROVIDER:提供程序 ID(见上文枚举)。
- PEXELS_API_KEY:Pexels 库存图片。
- PIXABAY_API_KEY:Pixabay 库存图片。
- DALL_E_3_QUALITY=[standard/hd]:dall-e-3 可选(默认
standard)。 - GPT_IMAGE_1_5_QUALITY=[low/medium/high]:gpt-image-1.5 可选(默认
medium)。 - COMFYUI_URL / COMFYUI_WORKFLOW:自托管 ComfyUI 工作流 JSON。
- OPEN_WEBUI_IMAGE_URL / OPEN_WEBUI_IMAGE_API_KEY:Open WebUI 兼容的图像端点。
- OPENAI_COMPAT_IMAGE_BASE_URL / OPENAI_COMPAT_IMAGE_API_KEY / OPENAI_COMPAT_IMAGE_MODEL:若使用 openai_compatible 向任何 OpenAI 兼容的
/v1/images/*端点(LiteLLM、Azure、vLLM 网关等)发送图像请求,则为必填项。
遥测
- DISABLE_ANONYMOUS_TRACKING=[true/false]:设为 true 可禁用匿名遥测。
身份验证(Web 登录)
Presenton 每个实例使用单个管理员账户。凭据存储在 app_data 中(已加密;见 userConfig.json)。通过 -e 或 compose 的 .env 文件传递以下变量:
- AUTH_USERNAME / AUTH_PASSWORD — 首次启动时预置管理员登录凭据(密码至少 6 个字符)。若用户已存在,则忽略,除非设置了 AUTH_OVERRIDE_FROM_ENV。
- AUTH_OVERRIDE_FROM_ENV=[true/false] — 若为 true,则在每次 FastAPI 启动时从环境变量替换存储的凭据,并轮换会话签名密钥(使现有会话失效)。完成一次性轮换后移除。
- RESET_AUTH=[true/false] — 若为 true,则在启动时清除存储的凭据。仅用于单次启动以恢复访问,之后需取消设置。
示例
docker run -it --name presenton -p 5000:80 -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
docker run -it --name presenton -p 5000:80 -e AUTH_USERNAME=admin -e AUTH_PASSWORD=changeme123 -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
docker run -it --name presenton -p 5000:80 -e AUTH_USERNAME=admin -e AUTH_PASSWORD=changeme123 -v "${PWD}\app_data:/app_data" ghcr.io/presenton/presenton:latest
docker stop presenton && docker rm presenton && docker run -it --name presenton -p 5000:80 -e AUTH_USERNAME=admin -e AUTH_PASSWORD=newcred456 -e AUTH_OVERRIDE_FROM_ENV=true -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
docker stop presenton && docker rm presenton && docker run -it --name presenton -p 5000:80 -e RESET_AUTH=true -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
docker stop presenton && docker rm presenton && docker run -it --name presenton -p 5000:80 -e AUTH_USERNAME=admin -e AUTH_PASSWORD=changeme123 -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
手动重置: 停止容器,编辑 ./app_data/userConfig.json,删除 AUTH_USERNAME、AUTH_PASSWORD_HASH 和 AUTH_SECRET_KEY,保存后重新启动。
退出应用程序:设置 → 其他 → 退出登录。
注意:上述 LLM 和图像变量在
.env中设置时,会从docker-compose.yml转发。
按提供商划分的 Docker 运行示例
变量与 Compose 相同;直接运行 docker run 时,使用 -e 代替 .env。
-
使用 OpenAI
docker run -it --name presenton -p 5000:80 -e LLM="openai" -e OPENAI_API_KEY="******" -e IMAGE_PROVIDER="dall-e-3" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Google
docker run -it --name presenton -p 5000:80 -e LLM="google" -e GOOGLE_API_KEY="******" -e IMAGE_PROVIDER="gemini_flash" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Vertex AI(API 密钥模式)
docker run -it --name presenton -p 5000:80 -e LLM="vertex" -e VERTEX_API_KEY="******" -e VERTEX_MODEL="gemini-2.5-flash" -e IMAGE_PROVIDER="gemini_flash" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Azure OpenAI
docker run -it --name presenton -p 5000:80 -e LLM="azure" -e AZURE_OPENAI_API_KEY="******" -e AZURE_OPENAI_MODEL="gpt-4.1" -e AZURE_OPENAI_API_VERSION="2024-10-21" -e AZURE_OPENAI_ENDPOINT="https://YOUR-RESOURCE.openai.azure.com" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Amazon Bedrock(AWS 密钥)
docker run -it --name presenton -p 5000:80 -e LLM="bedrock" -e BEDROCK_REGION="us-east-1" -e BEDROCK_AWS_ACCESS_KEY_ID="******" -e BEDROCK_AWS_SECRET_ACCESS_KEY="******" -e BEDROCK_MODEL="us.anthropic.claude-3-5-haiku-20241022-v1:0" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Fireworks
docker run -it --name presenton -p 5000:80 -e LLM="fireworks" -e FIREWORKS_API_KEY="******" -e FIREWORKS_MODEL="accounts/fireworks/models/llama-v3p1-8b-instruct" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Together AI
docker run -it --name presenton -p 5000:80 -e LLM="together" -e TOGETHER_API_KEY="******" -e TOGETHER_MODEL="openai/gpt-oss-20b" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Ollama
docker run -it --name presenton -p 5000:80 -e LLM="ollama" -e OLLAMA_MODEL="llama3.2:3b" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="*******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 Anthropic
docker run -it --name presenton -p 5000:80 -e LLM="anthropic" -e ANTHROPIC_API_KEY="******" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 LM Studio(本地)
docker run -it --name presenton -p 5000:80 -e LLM="lmstudio" -e LMSTUDIO_BASE_URL="http://host.docker.internal:1234" -e LMSTUDIO_MODEL="openai/gpt-oss-20b" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 OpenAI 兼容的 LLM API
docker run -it -p 5000:80 -e CAN_CHANGE_KEYS="false" -e LLM="custom" -e CUSTOM_LLM_URL="http://*****" -e CUSTOM_LLM_API_KEY="*****" -e CUSTOM_MODEL="llama3.2:3b" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="********" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
运行带 GPU 支持的 Presenton 要将 GPU 加速与 Ollama 模型配合使用,您需要安装并配置 NVIDIA Container Toolkit。这允许 Docker 容器访问您的 NVIDIA GPU。 安装并配置好 NVIDIA Container Toolkit 后,您可以通过添加
--gpus=all标志来运行带 GPU 支持的 Presenton:docker run -it --name presenton --gpus=all -p 5000:80 -e LLM="ollama" -e OLLAMA_MODEL="llama3.2:3b" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="*******" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest -
使用 OpenAI 兼容的图像提供商
这会将所有幻灯片图像请求通过您的 OpenAI 兼容网关(LiteLLM、Azure、vLLM 等)路由,同时保持文本 LLM 配置独立:
docker run -it --name presenton -p 5000:80 -e IMAGE_PROVIDER="openai_compatible" -e OPENAI_COMPAT_IMAGE_BASE_URL="https://proxy.example.com/v1" -e OPENAI_COMPAT_IMAGE_API_KEY="******" -e OPENAI_COMPAT_IMAGE_MODEL="gpt-image-1" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
✨ 通过 API 生成演示文稿
生成演示文稿
端点: /api/v1/ppt/presentation/generate
方法: POST
内容类型: application/json
身份验证(HTTP Basic):
除 /api/v1/auth/* 外,所有 /api/v1/ 路由均需身份验证。请发送您的 Presenton 管理员用户名和密码(与 Web UI 相同,或在 Docker 预配置时使用 AUTH_USERNAME / AUTH_PASSWORD)。使用 curl 时,将凭据紧跟在 -u 后,格式为 -u 用户名:密码 — 这是 HTTP Basic 身份验证,会自动为您设置 Authorization: Basic …。请将下方示例中的 username:password 替换为您的实际凭据。
请求体
| 参数 | 类型 | 是否必需 | 描述 |
|---|---|---|---|
content |
string | 是 | 用于生成演示文稿的主要内容。 |
slides_markdown |
string[] | null | 否 | 提供自定义幻灯片 markdown,而非自动生成。 |
instructions |
string | null | 否 | 额外的生成说明。 |
tone |
string | 否 |
文本语气(默认:"default")。
选项:default、casual、professional、
funny、educational、sales_pitch
|
verbosity |
string | 否 |
内容密度(默认:"standard")。
选项:concise、standard、text-heavy
|
web_search |
boolean | 否 | 启用网络搜索增强(默认:false)。 |
n_slides |
integer | 否 | 要生成的幻灯片数量(默认:8)。 |
language |
string | 否 | 演示文稿语言(默认:"English")。 |
template |
string | 否 | 模板名称(默认:"general")。 |
include_table_of_contents |
boolean | 否 | 包含目录幻灯片(默认:false)。 |
include_title_slide |
boolean | 否 | 包含标题幻灯片(默认:true)。 |
files |
string[] | null | 否 |
用于生成的文件。
需先通过 /api/v1/ppt/files/upload 上传。
|
export_as |
string | 否 |
导出格式(默认:"pptx")。
选项:pptx、pdf
|
响应
{
"presentation_id": "string",
"path": "string",
"edit_path": "string"
}
示例(curl + 使用 -u 的 HTTP Basic 身份验证)
curl -u username:password \
-X POST http://localhost:5000/api/v1/ppt/presentation/generate \
-H "Content-Type: application/json" \
-d '{
"content": "Introduction to Machine Learning",
"n_slides": 5,
"language": "English",
"template": "general",
"export_as": "pptx"
}'
示例响应
{
"presentation_id": "d3000f96-096c-4768-b67b-e99aed029b57",
"path": "/app_data/d3000f96-096c-4768-b67b-e99aed029b57/Introduction_to_Machine_Learning.pptx",
"edit_path": "/presentation?id=d3000f96-096c-4768-b67b-e99aed029b57"
}
注意: 需在path和edit_path前添加服务器根 URL,以构建有效的链接。
文档与教程
🚀 路线图
在 GitHub Projects 上跟踪公开路线图:https://github.com/orgs/presenton/projects/2
项目介绍
Open-Source AI Presentation Generator and API (Gamma, Beautiful AI, Decktopus Alternative)
下载使用量
项目总下载次数(含Clone、Pull、 zip 包及 release 下载),每日凌晨更新