一站式原生AI PPT生成应用,几分钟内生成一套幻灯片; 支持上传任意模板图片,上传任意素材&智能解析,一句话/大纲/页面描述自动生成PPT,口头修改指定区域、一键导出可编辑ppt、视频等 - An AI-native slides generator based on nano banana pro🍌
See the code
一个基于 nano banana pro 🍌 的原生 AI PPT 生成应用
在几分钟内从想法到演示文稿,无需繁琐排版、口头提出修改,迈向真正的 "Vibe PPT"
🚀 在线 Demo | 📖 文档 | 💻 桌面版 RC7 | 部署方法
如果该项目对你有用,欢迎 Star 🌟 & Fork 🍴
想赞助本项目?请发送邮件至 davidyang042@gmail.com。
![]() | 感谢 AIHubMix 赞助本项目!AIHubMix 是稳定、高并发的 AI 大模型 API 聚合平台,一个 API Key 即可接入 Claude、GPT、Gemini、DeepSeek 等主流模型,兼容多种协议。注册时,海外用户请使用 AIHubMix 入口,中国大陆用户请使用 Inferera 入口。 |
![]() | 感谢 APIMart 赞助了本项目!APIMart 是专注 AI 图片/视频生成的低价 API 平台,GPT-Image-2 低至 $0.006/张,1 美元可出图 160+ 张。图片、视频一套异步 API 通吃,提交任务拿 ID、回调取结果,跑批万张不超时、换模型不改代码。按量付费、无月费,通过此注册链接注册即可开用。 |
![]() | 感谢 火山引擎 赞助了本项目!相比海外主流官方 API 价格更低、性价比更高,生成效果接近;国内直连,无需特殊网络环境。订阅后还能用于日常使用和其他兼容工具,不局限于 Banana Slides。 查看优惠并订阅 → |
gpt-5.4 更新为 gpt-5.6-terra,图片模型仍保留 gpt-image-2,无需把图片模型改成文本模型。此版本还包含 RC6 之后的内容驱动风格描述与 SenseNova U1 生图支持;查看下载与安装说明Unsupported source: qwen 的问题你是否也曾陷入这样的困境:明天就要汇报,但PPT还是一片空白;脑中有无数精彩的想法,却被繁琐的排版和设计消磨掉所有热情?
我(们)渴望能快速创作出既专业又具设计感的演示文稿,传统的AI PPT生成app,虽然大体满足“快”这一需求,却还存在以下问题:
以上这些缺陷,让传统的AI ppt生成器难以同时满足我们“快”和“美”的两大PPT制作需求。即使自称Vibe PPT,但是在我的眼中还远不够“Vibe”。
但是,nano banana🍌模型的出现让一切有了转机。我尝试使用🍌pro进行ppt页面生成,发现生成的结果无论是质量、美感还是一致性,都做的非常好,且几乎能精确渲染prompt要求的所有文字+遵循参考图的风格。那为什么不基于🍌pro,做一个原生的"Vibe PPT"应用呢?
🎯目标: 降低 PPT 制作门槛,让每个人都能快速创作出美观专业的演示文稿
| 软件开发最佳实践 | DeepSeek-V3.2技术展示 |
| 预制菜智能产线装备研发和产业化 | 钱的演变:从贝壳到纸币的旅程 |
更多可见 使用案例
支持想法、大纲、页面描述三种起步方式,满足不同创作习惯。
不再受限于复杂的菜单按钮,直接通过自然语言下达修改指令。
🌟和notebooklm slide deck功能对比
| 功能 | notebooklm | 本项目 |
|---|---|---|
| 页数上限 | 15页 | 无限制 |
| 二次编辑 | 提示词修改 | 框选编辑+口头编辑 |
| 素材添加 | 生成后无法添加 | 生成后自由添加 |
| 导出格式 | 支持导出为 PDF、(不可编辑图片)pptx | 导出为PDF、(图片or可编辑)pptx、讲解视频 |
| 水印 | 免费版有水印 | 无水印,自由增删元素 |
注:随着新功能添加,对比可能过时
| 状态 | 里程碑 |
|---|---|
| ✅ 已完成 | PPT 单页添加更多素材 |
| ✅ 已完成 | PPT 单页框选区域Vibe口头编辑 |
| ✅ 已完成 | 素材模块: 素材生成、上传等 |
| ✅ 已完成 | 支持多种文件的上传+解析 |
| ✅ 已完成 | 支持Vibe口头调整大纲和描述 |
| ✅ 已完成 | 初步支持可编辑版本pptx文件导出 |
| 🔄 进行中 | 支持多层次、精确抠图的可编辑pptx导出 |
| 🔄 进行中 | 网络搜索 |
| 🔄 进行中 | Agent 模式 |
| ✅ 已完成 | TTS 讲解视频导出(中/英/日多音色、字幕) |
这是最简单的方式,无需安装docker或下载项目,创建后可直接进入应用
通过docker compose快速启动前后端服务。
如果你使用 Windows 或 macOS,请先安装 Docker Desktop,并确保 Docker 正在运行(Windows 可检查系统托盘图标;macOS 可检查菜单栏图标),然后按文档中的相同步骤操作。
提示:如果遇到问题,Windows 用户请在 Docker Desktop 设置中启用 WSL 2 后端(推荐);同时确保端口 3011 和 5011 未被占用。
git clone https://github.com/Anionex/banana-slides
cd banana-slides
创建 .env 文件(参考 .env.example):
cp .env.example .env
(可选, 也可以启动后在用户界面配置,教程可点击此处) 编辑 .env 文件,配置必要的环境变量:
项目中大模型接口以AIHubMix平台格式为标准,推荐使用 AIHubMix(点击此处可直接访问) 获取API密钥,减小迁移成本
友情提示:谷歌nano banana pro模型接口费用较高,请注意调用成本
# AI Provider格式配置 (gemini / openai / volcengine / vertex)
AI_PROVIDER_FORMAT=gemini
# Gemini 格式配置(当 AI_PROVIDER_FORMAT=gemini 时使用)
GOOGLE_API_KEY=your-api-key-here
GOOGLE_API_BASE=https://generativelanguage.googleapis.com
# 代理示例: https://api.inferera.com/gemini
# OpenAI 格式配置(当 AI_PROVIDER_FORMAT=openai 时使用)
OPENAI_API_KEY=your-api-key-here
OPENAI_API_BASE=https://api.openai.com/v1
# 代理示例: https://api.inferera.com/v1
# 商汤日日新 U1 图片模型(保留旧 Provider,图片走 OpenAI 兼容路径)
# 推荐:文本继续用 Gemini,只让图片走商汤
# IMAGE_MODEL_SOURCE=openai
# IMAGE_API_KEY=your-sensenova-api-key
# IMAGE_API_BASE=https://token.sensenova.cn/v1
# IMAGE_MODEL=sensenova-u1.5-lite
# 火山方舟 Agent Plans 配置(当 AI_PROVIDER_FORMAT=volcengine 时使用)
# 注意: Agent Plan 需使用专属 API Key 与模型名 (doubao-seed-2.1-turbo / doubao-seedream-5.0-lite)
VOLCENGINE_API_KEY=your-volcengine-api-key-here
VOLCENGINE_API_BASE=https://ark.cn-beijing.volces.com/api/plan/v3
# Vertex AI 配置(AI_PROVIDER_FORMAT=vertex)
# 需要 GCP 项目和服务账户密钥
# VERTEX_PROJECT_ID=your-gcp-project-id
# VERTEX_LOCATION=global
# GOOGLE_APPLICATION_CREDENTIALS=./gcp-service-account.json
# Lazyllm 格式配置(当 AI_PROVIDER_FORMAT=lazyllm 时使用)
# 选择文本生成和图片生成使用的厂商
TEXT_MODEL_SOURCE=deepseek # 文本生成模型厂商
IMAGE_MODEL_SOURCE=doubao # 图片编辑模型厂商
IMAGE_CAPTION_MODEL_SOURCE=qwen # 图片描述模型厂商
# 各厂商 API Key(只需配置你要使用的厂商)
DOUBAO_API_KEY=your-doubao-api-key # 火山引擎/豆包
DEEPSEEK_API_KEY=your-deepseek-api-key # DeepSeek
QWEN_API_KEY=your-qwen-api-key # 阿里云/通义千问
GLM_API_KEY=your-glm-api-key # 智谱 GLM
SILICONFLOW_API_KEY=your-siliconflow-api-key # 硅基流动
SENSENOVA_API_KEY=your-sensenova-api-key # 商汤日日新
# U1 生图请优先使用上面的 IMAGE_MODEL_SOURCE=openai 配置;此 Key 用于旧 LazyLLM 路径
MINIMAX_API_KEY=your-minimax-api-key # MiniMax
KIMI_API_KEY=your-kimi-api-key # 月之暗面 Kimi
PPIO_API_KEY=your-ppio-api-key # PPIO 派欧云
AIPING_API_KEY=your-aiping-api-key # AIPing 爱拼
...
Banana Slides explicitly packages the LazyLLM online provider SDKs used by domestic vendors:
volcengine-python-sdk[ark]for Doubao,dashscopefor Qwen/Wanxiang, andzhipuaifor GLM/Zhipu. LazyLLM also exposeslazyllm install online-advanced, but the PyPI wheel may not publish that group as a standard install extra, so Docker/prebuilt images rely on these explicit dependencies instead.Desktop (PyInstaller) builds register every LazyLLM online vendor explicitly (qwen, doubao, deepseek, glm, kimi, minimax, sensenova, siliconflow, ppio, aiping, openai) so packaged backends never hit
Unsupported source: ....
使用新版可编辑导出配置方法,获得更好的可编辑导出效果: 需在百度智能云平台(点击此处进入)中获取API KEY,填写在.env文件中的BAIDU_API_KEY字段(有充足的免费使用额度)。详见https://github.com/Anionex/banana-slides/issues/121 中的说明
Google Cloud Vertex AI 允许通过 GCP 服务账户调用 Gemini 模型,新用户可使用赠金额度。配置步骤:
gcp-service-account.json.env 中设置:
AI_PROVIDER_FORMAT=vertex
VERTEX_PROJECT_ID=your-gcp-project-id
VERTEX_LOCATION=global
docker-compose.yml 中取消相关注释,将密钥文件挂载到容器内并设置 GOOGLE_APPLICATION_CREDENTIALS 环境变量。
gemini-3-*系列模型要求VERTEX_LOCATION=global
⚡ 使用预构建镜像(推荐)
项目在 Docker Hub 提供了构建好的前端和后端镜像(同步主分支最新版本),可以跳过本地构建步骤,实现快速部署:
# 使用预构建镜像启动(无需从头构建)
docker compose -f docker-compose.prod.yml up -d
镜像名称:
anoinex/banana-slides-frontend:latestanoinex/banana-slides-backend:latest启动后可在应用内进入 设置 → 关于 → 检查更新,应用会根据当前版本 SHA 判断是否已有可用更新;源码运行时也会用当前 Git SHA 参与判断。
从头构建镜像
docker compose up -d
[!TIP] 如遇网络问题,可在
.env文件中取消镜像源配置的注释, 再重新运行启动命令:# 在 .env 文件中取消以下注释即可使用国内镜像源 DOCKER_REGISTRY=docker.1ms.run/ GHCR_REGISTRY=ghcr.nju.edu.cn/ APT_MIRROR=mirrors.aliyun.com PYPI_INDEX_URL=https://mirrors.cloud.tencent.com/pypi/simple NPM_REGISTRY=https://registry.npmmirror.com/
# 查看后端日志(最后 200 行)
docker logs --tail 200 banana-slides-backend
# 实时查看后端日志(最后 100 行)
docker logs -f --tail 100 banana-slides-backend
# 查看前端日志(最后 100 行)
docker logs --tail 100 banana-slides-frontend
docker compose down
使用预构建镜像(docker-compose.prod.yml)
也可以先在应用内进入 设置 → 关于 → 检查更新 查看是否已有新版本。
docker compose -f docker-compose.prod.yml pull
docker compose -f docker-compose.prod.yml up -d
使用本地构建(docker-compose.yml)
注:若手动修改了代码,该方法不适用,需要先将代码还原到拉取时的版本。
git pull
docker compose down
docker compose build --no-cache
docker compose up -d
注:感谢优秀开发者朋友 @ShellMonster 提供了新人部署教程,专为没有任何服务器部署经验的新手设计,可点击链接查看。
libass / ass 字幕滤镜支持docker exec -it banana-slides-backend bash -c "apt-get update && apt-get install -y libreoffice-impress && rm -rf /var/lib/apt/lists/*"
注意:此方式安装的 LibreOffice 在容器重建后会丢失,需重新安装。
git clone https://github.com/Anionex/banana-slides
cd banana-slides
curl -LsSf https://astral.sh/uv/install.sh | sh
在项目根目录下运行:
# macOS(Homebrew)
brew install ffmpeg-full
brew unlink ffmpeg 2>/dev/null || true
brew link --overwrite --force ffmpeg-full
# Ubuntu / Debian
sudo apt-get update
sudo apt-get install -y ffmpeg libass9
# 然后安装 Python 依赖
uv sync
这将根据 pyproject.toml 自动安装所有依赖。
复制环境变量模板:
cp .env.example .env
# 然后按照前述方法,打开编辑 `.env` 文件,配置你的 API 密钥
cd frontend
npm install
前端会通过 Vite proxy 自动连接到 BACKEND_PORT 指定的后端服务(默认 http://localhost:5011)。如需修改,请在项目根目录的 .env 中设置 BACKEND_PORT。
(可选)如果本地已有重要数据,升级前建议先备份数据库:
cp backend/instance/database.db backend/instance/database.db.bak备注: 默认配置下,模板、素材、成品都在uploads/文件夹中
cd backend
uv run alembic upgrade head && uv run python app.py
后端服务将在 http://localhost:5011 启动。
访问 http://localhost:5011/health 验证服务是否正常运行。
cd frontend
npm run dev
前端开发服务器将在 http://localhost:3011 启动。
打开浏览器访问即可使用应用。
欢迎在群中提出新功能建议或反馈~
欢迎关注作者的社交媒体,我会分享有关本项目和有关AI的信息:
可见官网文档
欢迎通过 Issue 和 Pull Request 为本项目贡献力量!
重要: 贡献前请阅读 CONTRIBUTING.md
本项目采用 GNU Affero General Public License v3.0(AGPL-3.0) 开源, 可自由用于个人学习、研究、试验、教育或非营利科研活动等非商业用途;闭源商业用途需获取授权。
如有疑问或合作意向、获取多租户商业版本,可联系: davidyang042@gmail.com
开源不易🙏如果本项目对你有价值,欢迎请开发者喝杯咖啡☕️
感谢以下朋友对项目的无偿赞助支持:
@雅俗共赏、@曹峥、@以年观日、@John、@胡yun星Ethan, @azazo1、@刘聪NLP、@🍟、@苍何、@万瑾、@biubiu、@law、@方源、@寒松Falcon、@刘星宇&小陀螺AIGC 如对赞助列表有疑问,可联系作者
首页「一句话生成」中可切换到「日常汇报」,选择周报/月报、项目汇报、产品介绍、培训课件或自定义场景。填写主题和可选字段后,可编辑 Prompt 预览,再沿用原来的模板、参考文件、比例与每页模板流程。预设只填空字段;手动编辑后的预览仅在点击「从表单更新 Prompt」时重建。
设置中直接选择 Codex 会在未连接时弹出 OpenAI 登录窗口,连接成功后应用本次选择;取消保留原设置。素材工具箱提交任务后可继续生成下一张,各任务独立展示状态与结果,刷新后可恢复查询。查询暂停时可点击「继续查询」,结果仍会保存到素材库。
(top 24 of 49)
238 followers · starred Dec 2025
1,103 followers · starred Jan 2026
7,371 followers · starred Jan 2026
436 followers · starred Sep 2026
一站式原生AI PPT生成应用,几分钟内生成一套幻灯片; 支持上传任意模板图片,上传任意素材&智能解析,一句话/大纲/页面描述自动生成PPT,口头修改指定区域、一键导出可编辑ppt、视频等 - An AI-native slides generator based on nano banana pro🍌
See the code
一个基于 nano banana pro 🍌 的原生 AI PPT 生成应用
在几分钟内从想法到演示文稿,无需繁琐排版、口头提出修改,迈向真正的 "Vibe PPT"
🚀 在线 Demo | 📖 文档 | 💻 桌面版 RC7 | 部署方法
如果该项目对你有用,欢迎 Star 🌟 & Fork 🍴
想赞助本项目?请发送邮件至 davidyang042@gmail.com。
![]() | 感谢 AIHubMix 赞助本项目!AIHubMix 是稳定、高并发的 AI 大模型 API 聚合平台,一个 API Key 即可接入 Claude、GPT、Gemini、DeepSeek 等主流模型,兼容多种协议。注册时,海外用户请使用 AIHubMix 入口,中国大陆用户请使用 Inferera 入口。 |
![]() | 感谢 APIMart 赞助了本项目!APIMart 是专注 AI 图片/视频生成的低价 API 平台,GPT-Image-2 低至 $0.006/张,1 美元可出图 160+ 张。图片、视频一套异步 API 通吃,提交任务拿 ID、回调取结果,跑批万张不超时、换模型不改代码。按量付费、无月费,通过此注册链接注册即可开用。 |
![]() | 感谢 火山引擎 赞助了本项目!相比海外主流官方 API 价格更低、性价比更高,生成效果接近;国内直连,无需特殊网络环境。订阅后还能用于日常使用和其他兼容工具,不局限于 Banana Slides。 查看优惠并订阅 → |
gpt-5.4 更新为 gpt-5.6-terra,图片模型仍保留 gpt-image-2,无需把图片模型改成文本模型。此版本还包含 RC6 之后的内容驱动风格描述与 SenseNova U1 生图支持;查看下载与安装说明Unsupported source: qwen 的问题你是否也曾陷入这样的困境:明天就要汇报,但PPT还是一片空白;脑中有无数精彩的想法,却被繁琐的排版和设计消磨掉所有热情?
我(们)渴望能快速创作出既专业又具设计感的演示文稿,传统的AI PPT生成app,虽然大体满足“快”这一需求,却还存在以下问题:
以上这些缺陷,让传统的AI ppt生成器难以同时满足我们“快”和“美”的两大PPT制作需求。即使自称Vibe PPT,但是在我的眼中还远不够“Vibe”。
但是,nano banana🍌模型的出现让一切有了转机。我尝试使用🍌pro进行ppt页面生成,发现生成的结果无论是质量、美感还是一致性,都做的非常好,且几乎能精确渲染prompt要求的所有文字+遵循参考图的风格。那为什么不基于🍌pro,做一个原生的"Vibe PPT"应用呢?
🎯目标: 降低 PPT 制作门槛,让每个人都能快速创作出美观专业的演示文稿
| 软件开发最佳实践 | DeepSeek-V3.2技术展示 |
| 预制菜智能产线装备研发和产业化 | 钱的演变:从贝壳到纸币的旅程 |
更多可见 使用案例
支持想法、大纲、页面描述三种起步方式,满足不同创作习惯。
不再受限于复杂的菜单按钮,直接通过自然语言下达修改指令。
🌟和notebooklm slide deck功能对比
| 功能 | notebooklm | 本项目 |
|---|---|---|
| 页数上限 | 15页 | 无限制 |
| 二次编辑 | 提示词修改 | 框选编辑+口头编辑 |
| 素材添加 | 生成后无法添加 | 生成后自由添加 |
| 导出格式 | 支持导出为 PDF、(不可编辑图片)pptx | 导出为PDF、(图片or可编辑)pptx、讲解视频 |
| 水印 | 免费版有水印 | 无水印,自由增删元素 |
注:随着新功能添加,对比可能过时
| 状态 | 里程碑 |
|---|---|
| ✅ 已完成 | PPT 单页添加更多素材 |
| ✅ 已完成 | PPT 单页框选区域Vibe口头编辑 |
| ✅ 已完成 | 素材模块: 素材生成、上传等 |
| ✅ 已完成 | 支持多种文件的上传+解析 |
| ✅ 已完成 | 支持Vibe口头调整大纲和描述 |
| ✅ 已完成 | 初步支持可编辑版本pptx文件导出 |
| 🔄 进行中 | 支持多层次、精确抠图的可编辑pptx导出 |
| 🔄 进行中 | 网络搜索 |
| 🔄 进行中 | Agent 模式 |
| ✅ 已完成 | TTS 讲解视频导出(中/英/日多音色、字幕) |
这是最简单的方式,无需安装docker或下载项目,创建后可直接进入应用
通过docker compose快速启动前后端服务。
如果你使用 Windows 或 macOS,请先安装 Docker Desktop,并确保 Docker 正在运行(Windows 可检查系统托盘图标;macOS 可检查菜单栏图标),然后按文档中的相同步骤操作。
提示:如果遇到问题,Windows 用户请在 Docker Desktop 设置中启用 WSL 2 后端(推荐);同时确保端口 3011 和 5011 未被占用。
git clone https://github.com/Anionex/banana-slides
cd banana-slides
创建 .env 文件(参考 .env.example):
cp .env.example .env
(可选, 也可以启动后在用户界面配置,教程可点击此处) 编辑 .env 文件,配置必要的环境变量:
项目中大模型接口以AIHubMix平台格式为标准,推荐使用 AIHubMix(点击此处可直接访问) 获取API密钥,减小迁移成本
友情提示:谷歌nano banana pro模型接口费用较高,请注意调用成本
# AI Provider格式配置 (gemini / openai / volcengine / vertex)
AI_PROVIDER_FORMAT=gemini
# Gemini 格式配置(当 AI_PROVIDER_FORMAT=gemini 时使用)
GOOGLE_API_KEY=your-api-key-here
GOOGLE_API_BASE=https://generativelanguage.googleapis.com
# 代理示例: https://api.inferera.com/gemini
# OpenAI 格式配置(当 AI_PROVIDER_FORMAT=openai 时使用)
OPENAI_API_KEY=your-api-key-here
OPENAI_API_BASE=https://api.openai.com/v1
# 代理示例: https://api.inferera.com/v1
# 商汤日日新 U1 图片模型(保留旧 Provider,图片走 OpenAI 兼容路径)
# 推荐:文本继续用 Gemini,只让图片走商汤
# IMAGE_MODEL_SOURCE=openai
# IMAGE_API_KEY=your-sensenova-api-key
# IMAGE_API_BASE=https://token.sensenova.cn/v1
# IMAGE_MODEL=sensenova-u1.5-lite
# 火山方舟 Agent Plans 配置(当 AI_PROVIDER_FORMAT=volcengine 时使用)
# 注意: Agent Plan 需使用专属 API Key 与模型名 (doubao-seed-2.1-turbo / doubao-seedream-5.0-lite)
VOLCENGINE_API_KEY=your-volcengine-api-key-here
VOLCENGINE_API_BASE=https://ark.cn-beijing.volces.com/api/plan/v3
# Vertex AI 配置(AI_PROVIDER_FORMAT=vertex)
# 需要 GCP 项目和服务账户密钥
# VERTEX_PROJECT_ID=your-gcp-project-id
# VERTEX_LOCATION=global
# GOOGLE_APPLICATION_CREDENTIALS=./gcp-service-account.json
# Lazyllm 格式配置(当 AI_PROVIDER_FORMAT=lazyllm 时使用)
# 选择文本生成和图片生成使用的厂商
TEXT_MODEL_SOURCE=deepseek # 文本生成模型厂商
IMAGE_MODEL_SOURCE=doubao # 图片编辑模型厂商
IMAGE_CAPTION_MODEL_SOURCE=qwen # 图片描述模型厂商
# 各厂商 API Key(只需配置你要使用的厂商)
DOUBAO_API_KEY=your-doubao-api-key # 火山引擎/豆包
DEEPSEEK_API_KEY=your-deepseek-api-key # DeepSeek
QWEN_API_KEY=your-qwen-api-key # 阿里云/通义千问
GLM_API_KEY=your-glm-api-key # 智谱 GLM
SILICONFLOW_API_KEY=your-siliconflow-api-key # 硅基流动
SENSENOVA_API_KEY=your-sensenova-api-key # 商汤日日新
# U1 生图请优先使用上面的 IMAGE_MODEL_SOURCE=openai 配置;此 Key 用于旧 LazyLLM 路径
MINIMAX_API_KEY=your-minimax-api-key # MiniMax
KIMI_API_KEY=your-kimi-api-key # 月之暗面 Kimi
PPIO_API_KEY=your-ppio-api-key # PPIO 派欧云
AIPING_API_KEY=your-aiping-api-key # AIPing 爱拼
...
Banana Slides explicitly packages the LazyLLM online provider SDKs used by domestic vendors:
volcengine-python-sdk[ark]for Doubao,dashscopefor Qwen/Wanxiang, andzhipuaifor GLM/Zhipu. LazyLLM also exposeslazyllm install online-advanced, but the PyPI wheel may not publish that group as a standard install extra, so Docker/prebuilt images rely on these explicit dependencies instead.Desktop (PyInstaller) builds register every LazyLLM online vendor explicitly (qwen, doubao, deepseek, glm, kimi, minimax, sensenova, siliconflow, ppio, aiping, openai) so packaged backends never hit
Unsupported source: ....
使用新版可编辑导出配置方法,获得更好的可编辑导出效果: 需在百度智能云平台(点击此处进入)中获取API KEY,填写在.env文件中的BAIDU_API_KEY字段(有充足的免费使用额度)。详见https://github.com/Anionex/banana-slides/issues/121 中的说明
Google Cloud Vertex AI 允许通过 GCP 服务账户调用 Gemini 模型,新用户可使用赠金额度。配置步骤:
gcp-service-account.json.env 中设置:
AI_PROVIDER_FORMAT=vertex
VERTEX_PROJECT_ID=your-gcp-project-id
VERTEX_LOCATION=global
docker-compose.yml 中取消相关注释,将密钥文件挂载到容器内并设置 GOOGLE_APPLICATION_CREDENTIALS 环境变量。
gemini-3-*系列模型要求VERTEX_LOCATION=global
⚡ 使用预构建镜像(推荐)
项目在 Docker Hub 提供了构建好的前端和后端镜像(同步主分支最新版本),可以跳过本地构建步骤,实现快速部署:
# 使用预构建镜像启动(无需从头构建)
docker compose -f docker-compose.prod.yml up -d
镜像名称:
anoinex/banana-slides-frontend:latestanoinex/banana-slides-backend:latest启动后可在应用内进入 设置 → 关于 → 检查更新,应用会根据当前版本 SHA 判断是否已有可用更新;源码运行时也会用当前 Git SHA 参与判断。
从头构建镜像
docker compose up -d
[!TIP] 如遇网络问题,可在
.env文件中取消镜像源配置的注释, 再重新运行启动命令:# 在 .env 文件中取消以下注释即可使用国内镜像源 DOCKER_REGISTRY=docker.1ms.run/ GHCR_REGISTRY=ghcr.nju.edu.cn/ APT_MIRROR=mirrors.aliyun.com PYPI_INDEX_URL=https://mirrors.cloud.tencent.com/pypi/simple NPM_REGISTRY=https://registry.npmmirror.com/
# 查看后端日志(最后 200 行)
docker logs --tail 200 banana-slides-backend
# 实时查看后端日志(最后 100 行)
docker logs -f --tail 100 banana-slides-backend
# 查看前端日志(最后 100 行)
docker logs --tail 100 banana-slides-frontend
docker compose down
使用预构建镜像(docker-compose.prod.yml)
也可以先在应用内进入 设置 → 关于 → 检查更新 查看是否已有新版本。
docker compose -f docker-compose.prod.yml pull
docker compose -f docker-compose.prod.yml up -d
使用本地构建(docker-compose.yml)
注:若手动修改了代码,该方法不适用,需要先将代码还原到拉取时的版本。
git pull
docker compose down
docker compose build --no-cache
docker compose up -d
注:感谢优秀开发者朋友 @ShellMonster 提供了新人部署教程,专为没有任何服务器部署经验的新手设计,可点击链接查看。
libass / ass 字幕滤镜支持docker exec -it banana-slides-backend bash -c "apt-get update && apt-get install -y libreoffice-impress && rm -rf /var/lib/apt/lists/*"
注意:此方式安装的 LibreOffice 在容器重建后会丢失,需重新安装。
git clone https://github.com/Anionex/banana-slides
cd banana-slides
curl -LsSf https://astral.sh/uv/install.sh | sh
在项目根目录下运行:
# macOS(Homebrew)
brew install ffmpeg-full
brew unlink ffmpeg 2>/dev/null || true
brew link --overwrite --force ffmpeg-full
# Ubuntu / Debian
sudo apt-get update
sudo apt-get install -y ffmpeg libass9
# 然后安装 Python 依赖
uv sync
这将根据 pyproject.toml 自动安装所有依赖。
复制环境变量模板:
cp .env.example .env
# 然后按照前述方法,打开编辑 `.env` 文件,配置你的 API 密钥
cd frontend
npm install
前端会通过 Vite proxy 自动连接到 BACKEND_PORT 指定的后端服务(默认 http://localhost:5011)。如需修改,请在项目根目录的 .env 中设置 BACKEND_PORT。
(可选)如果本地已有重要数据,升级前建议先备份数据库:
cp backend/instance/database.db backend/instance/database.db.bak备注: 默认配置下,模板、素材、成品都在uploads/文件夹中
cd backend
uv run alembic upgrade head && uv run python app.py
后端服务将在 http://localhost:5011 启动。
访问 http://localhost:5011/health 验证服务是否正常运行。
cd frontend
npm run dev
前端开发服务器将在 http://localhost:3011 启动。
打开浏览器访问即可使用应用。
欢迎在群中提出新功能建议或反馈~
欢迎关注作者的社交媒体,我会分享有关本项目和有关AI的信息:
可见官网文档
欢迎通过 Issue 和 Pull Request 为本项目贡献力量!
重要: 贡献前请阅读 CONTRIBUTING.md
本项目采用 GNU Affero General Public License v3.0(AGPL-3.0) 开源, 可自由用于个人学习、研究、试验、教育或非营利科研活动等非商业用途;闭源商业用途需获取授权。
如有疑问或合作意向、获取多租户商业版本,可联系: davidyang042@gmail.com
开源不易🙏如果本项目对你有价值,欢迎请开发者喝杯咖啡☕️
感谢以下朋友对项目的无偿赞助支持:
@雅俗共赏、@曹峥、@以年观日、@John、@胡yun星Ethan, @azazo1、@刘聪NLP、@🍟、@苍何、@万瑾、@biubiu、@law、@方源、@寒松Falcon、@刘星宇&小陀螺AIGC 如对赞助列表有疑问,可联系作者
首页「一句话生成」中可切换到「日常汇报」,选择周报/月报、项目汇报、产品介绍、培训课件或自定义场景。填写主题和可选字段后,可编辑 Prompt 预览,再沿用原来的模板、参考文件、比例与每页模板流程。预设只填空字段;手动编辑后的预览仅在点击「从表单更新 Prompt」时重建。
设置中直接选择 Codex 会在未连接时弹出 OpenAI 登录窗口,连接成功后应用本次选择;取消保留原设置。素材工具箱提交任务后可继续生成下一张,各任务独立展示状态与结果,刷新后可恢复查询。查询暂停时可点击「继续查询」,结果仍会保存到素材库。
(top 24 of 49)
238 followers · starred Dec 2025
1,103 followers · starred Jan 2026
7,371 followers · starred Jan 2026
436 followers · starred Sep 2026