Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

notifymsg/LandPPT

Repository files navigation

LandPPT - AI驱动的PPT生成平台

GitHub stars GitHub forks GitHub issues License Python FastAPI Docker Ask DeepWiki


Open to Opportunities

如果你对我的项目感兴趣,欢迎联系我!

Email


English | 中文


目录

LandPPT Logo

基于大语言模型(LLM)的智能演示文稿生成平台

LandPPT 是一个基于大语言模型(LLM)的智能演示文稿生成平台,能够自动将文档内容转换为专业的PPT演示文稿。平台集成了多种AI模型、智能图像处理、深度研究功能和丰富的模板系统,让用户能够轻松创建高质量的演示文稿

在线体验站 | 文档指南

主界面

image

image

生成大纲

image

生成效果

image

image

在线编辑

image

image

image

image

讲稿生成

image

导出效果

image

模板生成

image

功能亮点

  • 一键生成:从主题到完整PPT,全程AI自动化处理
  • 智能配图:AI自动匹配最适合的图像,支持多源获取和参考图片生成
  • TODO 任务板:全新交互式任务管理界面,实时追踪生成进度,支持复杂动画反馈
  • 深度研究:集成多个搜索引擎,获取最新最全面的信息
  • 并行生成:支持幻灯片内容并行生成,配合增强型 AI 服务显著提升构建速度
  • 演讲稿生成:智能生成配套演讲稿,支持多种导出格式
  • 视觉参考:AI编辑助手支持图像上传和视觉内容分析
  • 多文件上传:支持同时上传多个文件,批量处理更高效
  • 模型自定义:按功能自定义模型选择,精准控制成本
  • 配置中心:可视化配置AI提供商与模型,支持一键测试、模型列表获取,并支持按任务角色指定不同提供商/模型
  • 自由模板:AI自动生成项目专属母版模板,支持响应式16:9铺满展示,并适配标题/目录/内容/结尾等页面类型
  • 备注导出:支持将演讲稿导出至PPT备注栏
  • 图片导出:支持以图片格式导出PPT页面
  • 企业级安全:支持本地部署,数据安全可控

核心功能

多AI提供商支持

  • OpenAI GPT系列:GPT-4o、GPT-4o-mini 等模型,支持官方 Responses API 与 reasoning effort 推理程度参数
  • OpenAI兼容提供商:DeepSeek、Kimi、MiniMax(M2.7 / M2.5)等(通过 Base URL + API Key 接入)
  • Anthropic Claude:Claude-4 Sonnet、Claude-4 Haiku 系列模型
  • Google Gemini:Gemini-2.5 Flash、Gemini-2.5 Pro 系列模型,支持自定义端点配置
  • Ollama:本地部署的开源模型,支持 Llama、Mistral 等
  • 302.AI:OpenAI兼容接口

强大的文件处理能力

  • 多格式支持:PDF、Word、Markdown、TXT、Excel 等多种格式
  • 智能解析:使用 MinerU 和 MarkItDown 进行高质量内容提取
  • 深度研究:集成 Tavily API 和 SearXNG 的多源研究功能
  • 内容增强:自动网页内容提取和智能摘要生成

智能图像处理系统

  • 多源图像获取:本地图库、网络搜索、AI生成三合一
  • 网络图像搜索:支持 Pixabay、Unsplash 等图库
  • AI图像生成:集成 DALL-E、SiliconFlow、Pollinations、 Openai、Gemini等服务
  • 智能图像选择:AI自动匹配最适合的图像内容
  • 图像处理优化:自动尺寸调整、格式转换、质量优化

增强研究功能

  • 多引擎搜索:Tavily 和 SearXNG 双引擎支持
  • 深度内容提取:智能网页内容解析和结构化处理
  • 多语言支持:支持中英文等多语言研究内容
  • 实时信息获取:获取最新的网络信息和数据

丰富的模板系统

  • 全局主模板:统一的HTML模板系统,支持响应式设计
  • 多样化布局:AI生成多种创意页面布局和设计风格
  • 场景化模板:通用、旅游、教育等多种专业场景模板
  • 项目适配模板:新增针对项目的适配模板生成
  • 自定义模板:支持导入和创建个性化模板
  • 参考图片生成:AI模板生成支持参考图片,智能匹配设计风格

完整的项目管理

  • 四阶段工作流:需求确认 大纲生成 TODO 进度追踪 PPT生成
  • TODO 任务看板:集成式任务管理,实时显示生成状态、日志与动画
  • 可视化编辑:直观的大纲编辑器和实时预览
  • 批量操作:支持批量生成和处理多个项目

现代化Web界面

  • 直观操作:用户友好的响应式Web界面
  • AI聊天编辑:侧边栏AI编辑功能,支持实时对话和视觉参考
  • 演讲稿生成:支持单页/多页/全部幻灯片的演讲稿生成,导出为DOCX/Markdown格式
  • 多格式导出:PDF/HTML/PPTX 多种格式导出支持
  • 实时预览:16:9 标准比例的实时页面预览

快速开始

系统要求

  • Python 3.11+
  • SQLite 3
  • Docker (可选)

本地安装

方法一:uv(推荐)

# 克隆项目
git clone https://github.com/sligter/LandPPT.git
cd LandPPT
# 安装uv(如果尚未安装)
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# 使用uv同步环境
uv sync
# 安装额外依赖(可选,用于标准PPTX导出)
uv pip install apryse-sdk --extra-index-url=https://pypi.apryse.com
# 配置环境变量
cp .env.example .env
# 编辑 .env 文件,配置你的AI API密钥
# 启动服务
uv run python run.py

方法二:传统pip安装

# 克隆项目
git clone https://github.com/sligter/LandPPT.git
cd LandPPT
# 创建虚拟环境
python -m venv venv
# 激活虚拟环境
# Windows
venv\Scripts\activate
# macOS/Linux
source venv/bin/activate
# 安装依赖
pip install -e .
# 配置环境变量
cp .env.example .env
# 编辑 .env 文件,配置你的AI API密钥
# 启动服务
python run.py

Docker部署

使用预构建镜像(推荐)

# 拉取最新镜像
docker pull bradleylzh/landppt:latest
# 运行容器
docker run -d \
 --name landppt \
 -p 8000:8000 \
 -v $(pwd)/.env:/app/.env \
 -v landppt_data:/app/data \
 -v landppt_reports:/app/research_reports \
 -v landppt_cache:/app/temp \
 bradleylzh/landppt:latest
# 查看日志
docker logs -f landppt

注意: 确保在运行前创建并配置好 .env 文件,包含必要的API密钥。

使用指南

1. 访问Web界面

启动服务后,访问以下地址:

(初始账号admin密码admin123)

2. 配置AI提供商

在设置页面配置你的AI API密钥:

  • OpenAI API Key(支持openai 兼容model api,例如deepseek、moonshot、qwen等等)
  • Anthropic API Key
  • Google API Key
  • 302.AI API Key
  • 或配置本地Ollama服务

3. 创建PPT项目

  1. 需求确认:输入主题、选择受众、设置页数范围、选择场景模板
  2. 大纲生成:AI智能生成结构化大纲,支持可视化编辑
  3. 内容研究:可选择启用深度研究功能,获取最新相关信息
  4. 图像配置:配置图像获取方式(本地/网络/AI生成)
  5. PPT生成:基于大纲生成完整的HTML演示文稿

4. 编辑和导出

  • 使用AI聊天功能实时编辑内容和样式,支持图像上传进行视觉参考
  • 支持图像替换和优化,AI模板生成可参考上传的图片
  • 生成配套演讲稿,支持单页/多页/全部幻灯片模式
  • 导出为PDF、HTML、PPTX、演讲稿DOCX/Markdown格式
  • 保存项目版本和历史记录
  • 支持批量处理和模板复用

配置说明

环境变量配置

主要配置项(详见 .env.example):

# AI提供商配置
DEFAULT_AI_PROVIDER=openai # openai / deepseek / kimi / minimax / anthropic / google / ollama / 302ai
# OpenAI
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-4o
OPENAI_USE_RESPONSES_API=false # 使用 OpenAI 官方 /v1/responses 接口
OPENAI_ENABLE_REASONING=false # 启用 OpenAI reasoning 参数
OPENAI_REASONING_EFFORT=medium # low / medium / high
# OpenAI兼容提供商(通过 Base URL + API Key 接入)
DEEPSEEK_API_KEY=
DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
DEEPSEEK_MODEL=deepseek-chat
KIMI_API_KEY=
KIMI_BASE_URL=https://api.moonshot.cn/v1
KIMI_MODEL=kimi-k2.5
MINIMAX_API_KEY=
MINIMAX_BASE_URL=https://api.minimax.io/v1
MINIMAX_MODEL=MiniMax-M2.7
# 302.AI(OpenAI兼容)
302AI_API_KEY=
302AI_BASE_URL=https://api.302.ai/v1
302AI_MODEL=gpt-4o
# Anthropic
ANTHROPIC_API_KEY=your_anthropic_api_key_here
ANTHROPIC_BASE_URL=https://api.anthropic.com
ANTHROPIC_MODEL=claude-3-5-sonnet-20241022
# Google Gemini
GOOGLE_API_KEY=your_google_api_key_here
GOOGLE_BASE_URL=https://generativelanguage.googleapis.com # 自定义Gemini端点
GOOGLE_MODEL=gemini-2.5-flash
# 服务器配置
HOST=0.0.0.0
PORT=8000
SECRET_KEY=your-secure-secret-key
# 研究功能配置
TAVILY_API_KEY=your_tavily_api_key_here # Tavily 搜索引擎
SEARXNG_HOST=http://localhost:8888 # SearXNG 实例地址
RESEARCH_PROVIDER=tavily # 研究提供商:tavily, searxng, both
# 图像服务配置
ENABLE_IMAGE_SERVICE=true # 启用图像服务
PIXABAY_API_KEY=your_pixabay_api_key_here # Pixabay 图库
UNSPLASH_ACCESS_KEY=your_unsplash_key_here # Unsplash 图库
SILICONFLOW_API_KEY=your_siliconflow_key_here # AI图像生成
POLLINATIONS_API_BASE=https://gen.pollinations.ai # Pollinations 图片接口
POLLINATIONS_API_TOKEN=your_pollinations_api_key # Pollinations API Key(Authorization: Bearer 或 ?key=)
POLLINATIONS_MODEL=flux # Pollinations 图片模型(flux/kontext/turbo 等)
# 导出功能配置
APRYSE_LICENSE_KEY=your_apryse_key_here # PPTX导出
# 生成参数
MAX_TOKENS=8192
TEMPERATURE=0.7

说明:OpenAI 提供商可通过 OPENAI_USE_RESPONSES_API=true 切换到官方 /v1/responses 接口,并在启用 OPENAI_ENABLE_REASONING=true 后使用 OPENAI_REASONING_EFFORT=low|medium|high 配置推理程度。

API文档

启动服务后访问:

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc

技术栈

后端技术

  • FastAPI: 现代化的Python Web框架,支持异步处理
  • SQLAlchemy: ORM数据库操作,支持多种数据库
  • Pydantic: 数据验证和序列化,类型安全
  • Uvicorn: 高性能ASGI服务器

AI集成

  • OpenAI: GPT-4o、GPT-4o-mini 等最新模型
  • OpenAI-Compatible: DeepSeek / Kimi / MiniMax / 302.AI(通过 OpenAI SDK 的 Base URL 接入)
  • Anthropic: Claude-4.5 系列模型
  • Google AI: Gemini-2.5 系列模型
  • LangChain: AI应用开发框架和工具链
  • Ollama: 本地模型部署和管理

文件处理

  • MinerU: 高质量PDF智能解析和结构化提取
  • MarkItDown: 多格式文档转换(Word、Excel、PowerPoint等)
  • BeautifulSoup4: HTML/XML解析和处理

图像处理

  • Pillow: 图像处理和格式转换
  • OpenAI DALL-E: AI图像生成
  • SiliconFlow: 国产AI图像生成服务
  • Pollinations: gen.pollinations.ai 图片生成 API,支持多模型

研究功能

  • Tavily: 专业搜索引擎API
  • SearXNG: 开源元搜索引擎
  • Playwright: 网页内容提取

导出功能

  • Playwright: HTML转PDF高质量导出
  • Apryse SDK: 专业PPT生成和转换

贡献指南

欢迎所有形式的贡献!

如何贡献

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

详情请见 贡献指南

报告问题

如果你发现了bug或有功能建议,请在 Issues 页面创建新的issue。

常见问题

Q: 支持哪些AI模型?

A: 支持 OpenAI、Anthropic Claude、Google Gemini、Ollama,以及 OpenAI 兼容提供商(DeepSeek / Kimi / MiniMax / 302.AI)。可以在配置页面切换不同的AI提供商。其中 OpenAI 提供商支持 Responses API 请求模式和 reasoning effort 推理程度参数。

Q: 如何配置图像功能?

A: 在 .env 文件中配置相应的API密钥:

  • Pixabay: PIXABAY_API_KEY
  • Unsplash: UNSPLASH_ACCESS_KEY
  • AI生成: SILICONFLOW_API_KEYPOLLINATIONS_API_TOKEN

Q:在使用反向代理(如Nginx、Apache等)时,如果没有正确配置base_url,会出现以下问题:

  • 图片链接仍然显示为localhost:8000
  • 前端无法正确加载图片
  • 图片预览、下载等功能异常

A: 通过Web界面配置

  1. 访问系统配置页面:https://your-domain.com/ai-config
  2. 切换到"应用配置"标签页
  3. 在"基础URL (BASE_URL)"字段中输入您的代理域名
  4. 例如:https://your-domain.comhttp://your-domain.com:8080
  5. 点击"保存应用配置"

Q: 研究功能如何使用?

A: 配置 TAVILY_API_KEY 或部署 SearXNG 实例,然后在创建PPT时启用研究功能即可自动获取相关信息。

Q: 支持本地部署吗?

A: 完全支持本地部署,可以使用 Docker 或直接安装。支持 Ollama 本地模型,无需依赖外部API。

Q: 如何导出PPTX格式?

A: 需要配置 APRYSE_LICENSE_KEY,然后在导出选项中选择PPTX格式。

Q: 并行生成会影响PPT质量吗?

A: 不会。并行生成只是改变了生成顺序,每页的生成逻辑和质量保持不变。

Q: 所有AI提供商都支持批量生成吗?

A: 大多数AI提供商支持并发请求,但可能有不同的限制。建议查看您使用的AI服务的API文档。

许可证

本项目采用 Apache License 2.0 许可证。详情请见 LICENSE 文件。

Star History

Star History Chart

联系我们


如果这个项目对你有帮助,请给我们一个 Star!

Made with by the LandPPT Team

About

一个基于LLM的演示文稿生成平台,能够自动将文档内容转换为专业的PPT演示文稿。平台支持多种AI模型,提供丰富的模板和样式选择,让用户能够创建高质量的演示文稿。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

  • JavaScript 41.4%
  • Python 32.8%
  • HTML 25.6%
  • Other 0.2%

AltStyle によって変換されたページ (->オリジナル) /