我试用了非常多市面上用于生成 PPt 的工具,目前市面上的生成工具往往都有一些问题:
所以我决定自己写一个 PPt 生成工具,来解决这些问题,项目取名为 PPt Yoda,希望它能像尤达大师一样,帮助每一个绝地大师完成 PPt 编写。
相比于平铺的内容,PPt 的优势在于适配屏幕尺寸,给出更好的排版,通过动画等方式更加形象地展示内容。
所以我们可以简单地把 PPt 创作拆解成两个过程:
内容创作
+PPt 布局
内容创作
,和基本 AI 创作的模式是一致的,最后应该形成具有良好层级结构的内容,包含表格、图表和图片,markdown 或者 json 都是不错的承载形式。PPt 布局
则需要考虑 PPt 的特有属性,把平铺的内容拆分成一个一个的页面,根据页面内容添加必要的图片、动画,根据内容的多少、元素之间的关系进行合理布局。其中 1-4 是内容创作的过程,可以由 AI 辅助; 5-6 是 PPt 布局的过程; 7 是素材创作的过程。
值得注意的是:
我希望我的 PPt 生成工具能够满足以下几个方面的需求:
PPT Yoda 将整个创作过程流水线化,每一步都支持 AI 辅助和人工微调:
重点功能模块包括:
.pptx
文件作为母版,AI 将在此基础上进行内容填充和布局,完美保留原始设计风格。想法 -> 素材 -> 大纲 -> 全文 -> 最终 PPt
的每一个阶段。在开始之前,请确保您的系统已安装以下软件:
a. 克隆仓库
git clone https://github.com/maquedexiju/PPtYoda.git
cd PPtYoda
b. 安装后端依赖
# 使用 uv 根据 pyproject.toml 安装依赖
uv pip install -e .
c. 安装前端依赖
cd frontend
npm install
cd ..
d. 初始化项目 运行安装脚本来生成配置文件、初始化数据库并导入默认模板。
# 该脚本会自动创建 config.ini, 初始化数据库, 并创建超级用户
python install.py
注意:默认存在一个超级用户,用户名:
ppt_killer
,密码:pt_12345
。
a. 后端配置
安装脚本会自动从 config.ini.example
复制生成 config.ini
文件。您需要编辑此文件,填入您的 LLM API 密钥等信息。
[LLM]
LLM_BASE_URL = ...
LLM_API_KEY = sk-YourAPIKeyHere
LLM_MODEL = ...
...
我提供了一个便捷的脚本,可以同时启动后端和前端服务。
python runserver.py
启动后:
http://localhost:8810
http://localhost:3000
现在,您可以打开浏览器访问 http://localhost:3000
开始使用。
您可以通过 http://localhost:8810/admin/
进行后台管理,默认用户名 ppt_killer
,密码 pt_12345
。
同时会自动生成一个演示项目,用来说明项目的使用方法,欢迎大家下载使用,提出自己的宝贵意见,并参与项目开发。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.