harry0703/MoneyPrinterTurbo
Fork: 1533 Star: 9899 (更新于 2024-04-24 16:28:17)
license: MIT
Language: Python .
利用AI大模型,一键生成高清短视频 Generate short videos with one click using AI LLM.
最后发布版本: v1.1.2 ( 2024-04-16 09:24:02)
MoneyPrinterTurbo 💸
简体中文 | English
只需提供一个视频 主题 或 关键词 ,就可以全自动生成视频文案、视频素材、视频字幕、视频背景音乐,然后合成一个高清的短视频。
Web界面
API界面
特别感谢 🙏
由于该项目的 部署 和 使用,对于一些小白用户来说,还是 有一定的门槛,在此特别感谢
录咖(AI智能 多媒体服务平台) 网站基于该项目,提供的免费AI视频生成器
服务,可以不用部署,直接在线使用,非常方便。
- 中文版:https://reccloud.cn
- 英文版:https://reccloud.com
感谢赞助 🙏
感谢佐糖 https://picwish.cn 对该项目的支持和赞助,使得该项目能够持续的更新和维护。
佐糖专注于图像处理领域,提供丰富的图像处理工具,将复杂操作极致简化,真正实现让图像处理更简单。
功能特性 🎯
完整的 MVC架构,代码 结构清晰,易于维护,支持
API
和Web界面
支持视频文案 AI自动生成,也可以自定义文案
支持多种 高清视频 尺寸
- 竖屏 9:16,
1080x1920
- 横屏 16:9,
1920x1080
- 竖屏 9:16,
支持 批量视频生成,可以一次生成多个视频,然后选择一个最满意的
支持 视频片段时长设置,方便调节素材切换频率
支持 中文 和 英文 视频文案
支持 多种语音 合成
支持 字幕生成,可以调整
字体
、位置
、颜色
、大小
,同时支持字幕描边
设置支持 背景音乐,随机或者指定音乐文件,可设置
背景音乐音量
视频素材来源 高清,而且 无版权
支持 OpenAI、moonshot、Azure、gpt4free、one-api、通义千问、Google Gemini、Ollama 等多种模型接入
后期计划 📅
- GPT-SoVITS 配音支持
- 优化语音合成,利用大模型,使其合成的声音,更加自然,情绪更加丰富
- 增加视频转场效果,使其看起来更加的流畅
- 增加更多视频素材来源,优化视频素材和文案的匹配度
- 增加视频长度选项:短、中、长
- 增加免费网络代理,让访问OpenAI和素材下载不再受限
- 可以使用自己的素材
- 朗读声音和背景音乐,提供实时试听
- 支持更多的语音合成服务商,比如 OpenAI TTS
- 自动上传到YouTube平台
交流讨论 💬
更新日志
2024-04-16 v1.1.2
- 支持azure新发布的9种语音合成声音(需要配置API KEY) 9个更真实的AI对话声音
- 优化字幕显示
- 修复内存泄露问题
- 一些其他的bug修复和优化
视频演示 📺
竖屏 9:16
更真实的合成声音 |
||
---|---|---|
横屏 16:9
配置要求 📦
- 建议最低 CPU 4核或以上,内存 8G 或以上,显卡非必须
- Windows 10 或 MacOS 11.0 以上系统
快速开始 🚀
下载一键启动包,解压直接使用
Windows
- 百度网盘: https://pan.baidu.com/s/1bpGjgQVE5sADZRn3A6F87w?pwd=xt16 提取码: xt16
下载后,建议先双击执行 update.bat
更新到最新代码,然后双击 start.bat
启动Web界面
其他系统
还没有制作一键启动包,看下面的 安装部署 部分,建议使用 docker 部署,更加方便。
安装部署 📥
前提条件
- 尽量不要使用 中文路径,避免出现一些无法预料的问题
- 请确保你的 网络 是正常的,VPN需要打开
全局流量
模式
① 克隆代码
git clone https://github.com/harry0703/MoneyPrinterTurbo.git
② 修改配置文件
- 将
config.example.toml
文件复制一份,命名为config.toml
- 按照
config.toml
文件中的说明,配置好pexels_api_keys
和llm_provider
,并根据 llm_provider 对应的服务商,配置相关的 API Key
③ 配置大模型(LLM)
- 如果要使用
GPT-4.0
或GPT-3.5
,需要有OpenAI
的API Key
,如果没有,可以将llm_provider
设置为g4f
( 一个免费使用GPT的开源库 https://github.com/xtekky/gpt4free ,但是该免费的服务,稳定性较差,有时候可以用,有时候用不了) - 或者可以使用到 月之暗面 申请。注册就送
15元体验金,可以对话1500次左右。然后设置
llm_provider="moonshot"
和moonshot_api_key
- 也可以使用 通义千问,具体请看配置文件里面的注释说明
Docker部署 🐳
① 启动Docker
如果未安装 Docker,请先安装 https://www.docker.com/products/docker-desktop/
如果是Windows系统,请参考微软的文档:
- https://learn.microsoft.com/zh-cn/windows/wsl/install
- https://learn.microsoft.com/zh-cn/windows/wsl/tutorials/wsl-containers
cd MoneyPrinterTurbo
docker-compose up
② 访问Web界面
打开浏览器,访问 http://0.0.0.0:8501
③ 访问API文档
打开浏览器,访问 http://0.0.0.0:8080/docs 或者 http://0.0.0.0:8080/redoc
手动部署 📦
视频教程
- 完整的使用演示:https://v.douyin.com/iFhnwsKY/
- 如何在Windows上部署:https://v.douyin.com/iFyjoW3M
① 创建虚拟环境
建议使用 conda 创建 python 虚拟环境
git clone https://github.com/harry0703/MoneyPrinterTurbo.git
cd MoneyPrinterTurbo
conda create -n MoneyPrinterTurbo python=3.10
conda activate MoneyPrinterTurbo
pip install -r requirements.txt
② 安装好 ImageMagick
Windows:
- 下载 https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-31-Q16-x64-static.exe
- 安装下载好的 ImageMagick,注意不要修改安装路径
- 修改
配置文件 config.toml
中的imagemagick_path
为你的实际安装路径(如果安装的时候没有修改路径,直接取消注释即可)
MacOS:
brew install imagemagick
Ubuntu
sudo apt-get install imagemagick
CentOS
sudo yum install ImageMagick
③ 启动Web界面 🌐
注意需要到 MoneyPrinterTurbo 项目 根目录
下执行以下命令
Windows
conda activate MoneyPrinterTurbo
webui.bat
MacOS or Linux
conda activate MoneyPrinterTurbo
sh webui.sh
启动后,会自动打开浏览器
④ 启动API服务 🚀
python main.py
启动后,可以查看 API文档
http://127.0.0.1:8080/docs 或者 http://127.0.0.1:8080/redoc 直接在线调试接口,快速体验。
语音合成 🗣
所有支持的声音列表,可以查看:声音列表
2024-04-16 v1.1.2 新增了9种Azure的语音合成声音,需要配置API KEY,该声音合成的更加真实。
字幕生成 📜
当前支持2种字幕生成方式:
-
edge: 生成
速度快
,性能更好,对电脑配置没有要求,但是质量可能不稳定 -
whisper: 生成
速度慢
,性能较差,对电脑配置有一定要求,但是质量更可靠
。
可以修改 config.toml
配置文件中的 subtitle_provider
进行切换
建议使用 edge
模式,如果生成的字幕质量不好,再切换到 whisper
模式
注意:
- whisper 模式下需要到 HuggingFace 下载一个模型文件,大约 3GB 左右,请确保网络通畅
- 如果留空,表示不生成字幕。
由于国内无法访问 HuggingFace,可以使用以下方法下载
whisper-large-v3
的模型文件
下载地址:
- 百度网盘: https://pan.baidu.com/s/11h3Q6tsDtjQKTjUu3sc5cA?pwd=xjs9
- 夸克网盘:https://pan.quark.cn/s/3ee3d991d64b
模型下载后解压,整个目录放到 .\MoneyPrinterTurbo\models
里面,
最终的文件路径应该是这样: .\MoneyPrinterTurbo\models\whisper-large-v3
MoneyPrinterTurbo
├─models
│ └─whisper-large-v3
│ config.json
│ model.bin
│ preprocessor_config.json
│ tokenizer.json
│ vocabulary.json
背景音乐 🎵
用于视频的背景音乐,位于项目的 resource/songs
目录下。
当前项目里面放了一些默认的音乐,来自于 YouTube 视频,如有侵权,请删除。
字幕字体 🅰
用于视频字幕的渲染,位于项目的 resource/fonts
目录下,你也可以放进去自己的字体。
常见问题 🤔
❓如何使用免费的OpenAI GPT-3.5模型?
OpenAI宣布ChatGPT里面3.5已经免费了,有开发者将其封装成了API,可以直接调用
确保你安装和启动了docker服务,执行以下命令启动docker服务
docker run -p 3040:3040 missuo/freegpt35
启动成功后,修改 config.toml
中的配置
-
llm_provider
设置为openai
-
openai_api_key
随便填写一个即可,比如 '123456' -
openai_base_url
改为http://localhost:3040/v1/
-
openai_model_name
改为gpt-3.5-turbo
❓AttributeError: 'str' object has no attribute 'choices'`
这个问题是由于 OpenAI 或者其他 LLM,没有返回正确的回复导致的。
大概率是网络原因, 使用 VPN,或者设置 openai_base_url
为你的代理 ,应该就可以解决了。
❓RuntimeError: No ffmpeg exe could be found
通常情况下,ffmpeg 会被自动下载,并且会被自动检测到。 但是如果你的环境有问题,无法自动下载,可能会遇到如下错误:
RuntimeError: No ffmpeg exe could be found.
Install ffmpeg on your system, or set the IMAGEIO_FFMPEG_EXE environment variable.
此时你可以从 https://www.gyan.dev/ffmpeg/builds/ 下载ffmpeg,解压后,设置 ffmpeg_path
为你的实际安装路径即可。
[app]
# 请根据你的实际路径设置,注意 Windows 路径分隔符为 \\
ffmpeg_path = "C:\\Users\\harry\\Downloads\\ffmpeg.exe"
❓生成音频时报错或下载视频报错
failed to generate audio, maybe the network is not available.
if you are in China, please use a VPN.
failed to download videos, maybe the network is not available.
if you are in China, please use a VPN.
这个大概率是网络原因,无法访问境外的服务,请使用VPN解决。
❓ImageMagick is not installed on your computer
- 按照
示例配置
里面提供的下载地址
,安装 https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-29-Q16-x64-static.exe, 用静态库 - 不要安装在中文路径里面,避免出现一些无法预料的问题
如果是linux系统,可以手动安装,参考 https://cn.linux-console.net/?p=16978
感谢 @wangwenqiao666的研究探索
❓ImageMagick的安全策略阻止了与临时文件@/tmp/tmpur5hyyto.txt相关的操作
可以在ImageMagick的配置文件policy.xml中找到这些策略。
这个文件通常位于 /etc/ImageMagick-X
/ 或 ImageMagick 安装目录的类似位置。
修改包含pattern="@"
的条目,将rights="none"
更改为rights="read|write"
以允许对文件的读写操作。
感谢 @chenhengzh的研究探索
❓OSError: [Errno 24] Too many open files
这个问题是由于系统打开文件数限制导致的,可以通过修改系统的文件打开数限制来解决。
查看当前限制
ulimit -n
如果过低,可以调高一些,比如
ulimit -n 10240
❓AttributeError: module 'PIL.Image' has no attribute 'ANTIALIAS'
先看下当前的 Pillow 版本是多少
pip list |grep Pillow
如果是 10.x 的版本,可以尝试下降级看看,有用户反馈降级后正常
pip uninstall Pillow
pip install Pillow==9.5.0
# 或者降级到 8.4.0
pip install Pillow==8.4.0
反馈建议 📢
- 可以提交 issue 或者 pull request。
参考项目 📚
该项目基于 https://github.com/FujiwaraChoki/MoneyPrinter 重构而来,做了大量的优化,增加了更多的功能。 感谢原作者的开源精神。
许可证 📝
点击查看 LICENSE
文件
Star History
主题(topics):
automation, chatgpt, moviepy, python, shortvideo, tiktok
harry0703/MoneyPrinterTurbo同语言 Python最近更新仓库
2024-04-29 14:24:11 MetaCubeX/mihomo
2024-04-29 04:49:50 xtekky/gpt4free
2024-04-29 01:33:56 linruowuyin/Fhoe-Rail
2024-04-29 01:11:52 plaintextpackets/netprobe_lite
2024-04-28 04:29:49 marimo-team/marimo
2024-04-27 22:26:03 OpenMOSS/CoLLiE