只需提供一个视频 主题 或 关键词 ,就可以全自动生成视频文案、视频素材、视频字幕、视频背景音乐,然后合成一个高清的短视频。
感谢 AIHubMix 对本项目的赞助。AIHubMix 深度适配 OpenAI、Claude、Gemini、DeepSeek、智谱、千问等全球顶级最新模型,一站式快速接入 GPT-5.5、deepseek-v4-flash 等 700+ 模型(含多个免费模型),提供企业级生产稳定性保障。
- 完整的 MVC架构,代码 结构清晰,易于维护,支持
API和Web界面 - 支持视频文案 AI自动生成,也可以自定义文案
- 支持多种 高清视频 尺寸
- 竖屏 9:16,
1080x1920 - 横屏 16:9,
1920x1080
- 竖屏 9:16,
- 支持 批量视频生成,可以一次生成多个视频,然后选择一个最满意的
- 支持 视频片段时长 设置,方便调节素材切换频率
- 支持 中文 和 英文 视频文案
- 支持 多种语音 合成,可 实时试听 效果
- 支持 字幕生成,可以调整
字体、位置、颜色、大小,同时支持字幕描边设置 - 支持 背景音乐,随机或者指定音乐文件,可设置
背景音乐音量 - 视频素材来源 高清,而且 无版权,也可以使用自己的 本地素材
- 支持 OpenAI、AIHubMix、Moonshot、Azure、gpt4free、one-api、通义千问、Google Gemini、Ollama、DeepSeek、MiniMax、 文心一言, Pollinations、ModelScope 等多种模型接入
更真实的合成声音 |
||
|---|---|---|
demo-portrait-1.mp4 |
default.mp4 |
demo-portrait-2.mp4 |
demo-landscape.mp4 |
demo-landscape-2.mp4 |
- 建议系统:Windows 10 或 MacOS 11.0 以上,或主流 Linux 发行版
- GPU 不是必需项,但如果你希望本地转录、更快的视频处理或更顺畅的批量生成体验,建议使用带显存的独立显卡
| 项目 | 最低配置 | 推荐配置 | 理想配置 |
|---|---|---|---|
| CPU | 4 核 | 6 到 8 核 | 8 核及以上 |
| RAM | 4 GB | 8 GB | 16 GB 及以上 |
| GPU | 非必须 | 4 GB 显存及以上 | 8 GB 显存及以上 |
- 如果你主要依赖云端 LLM、云端 TTS 和在线素材源,CPU 与内存比 GPU 更重要
- 如果你启用
faster-whisper、批量生成或更重的本地处理链路,GPU 会明显提升速度
- Windows 用户:优先使用一键启动包,适合快速体验
- MacOS / Linux 用户:优先使用
uv sync --frozen进行本地部署 - 想要隔离运行环境:优先使用 Docker 部署
免去本地环境配置,点击直接在 Google Colab 中快速体验 MoneyPrinterTurbo
下载一键启动包,解压直接使用(路径不要有 中文、特殊字符、空格)
当前提供的安装包仍是 v1.2.6 的旧打包版本,建议下载后先执行 update.bat 更新到最新代码。
- 百度网盘(v1.2.6): https://pan.baidu.com/s/1wg0UaIyXpO3SqIpaq790SQ?pwd=sbqx 提取码: sbqx
- Google Drive (v1.2.6): https://drive.google.com/file/d/1HsbzfT7XunkrCrHw5ncUjFX8XX4zAuUh/view?usp=sharing
下载后,建议先双击执行 update.bat 更新到最新代码,然后双击 start.bat 启动
启动后,会自动打开浏览器(如果打开是空白,建议换成 Chrome 或者 Edge 打开)
- 尽量不要使用 中文路径,避免出现一些无法预料的问题
- 请确保你的 网络 是正常的,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_provider设置为aihubmix,并填写对应的 API Key。
如果未安装 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注意:最新版的docker安装时会自动以插件的形式安装docker compose,启动命令调整为docker compose up
打开浏览器,访问 http://127.0.0.1:8501
打开浏览器,访问 http://127.0.0.1:8080/docs 或者 http://127.0.0.1:8080/redoc
视频教程
- 完整的使用演示:https://v.douyin.com/iFhnwsKY/
- 如何在Windows上部署:https://v.douyin.com/iFyjoW3M
推荐使用 uv 管理 Python 环境和依赖,默认使用 Python 3.11
git clone https://github.com/harry0703/MoneyPrinterTurbo.git
cd MoneyPrinterTurbo
uv python install 3.11
uv sync --frozen如果你暂时不使用 uv,也可以继续使用 venv + pip
python3.11 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt说明:
pyproject.toml是主依赖定义文件uv.lock是锁文件,建议默认执行uv sync --frozenrequirements.txt仅保留给旧的pip安装方式兼容使用
注意需要到 MoneyPrinterTurbo 项目 根目录 下执行以下命令
.\webui.bat在 CMD 中也可以执行 webui.bat。
webui.bat 会优先使用项目 .venv 或一键包内置 Python;如果没有找到项目 Python,但已安装 uv,会自动切换为 uv run streamlit。
如需允许局域网内其他设备访问 WebUI,可以先执行 set MPT_WEBUI_HOST=0.0.0.0,再运行 webui.bat。
uv run streamlit run ./webui/Main.py --browser.gatherUsageStats=False如果你已经手动激活了虚拟环境,也可以直接执行:
sh webui.sh启动后,会自动打开浏览器(如果打开是空白,建议换成 Chrome 或者 Edge 打开)
uv run python main.py如果你已经手动激活了虚拟环境,也可以直接执行:
python main.py由于该项目的 部署 和 使用,对于一些小白用户来说,还是 有一定的门槛,在此特别感谢
录咖(AI智能 多媒体服务平台) 网站基于该项目,提供的免费AI视频生成器服务,可以不用部署,直接在线使用,非常方便。
感谢佐糖 https://picwish.cn 对该项目的支持和赞助,使得该项目能够持续的更新和维护。
佐糖专注于图像处理领域,提供丰富的图像处理工具,将复杂操作极致简化,真正实现让图像处理更简单。
所有支持的声音列表,可以查看:声音列表
默认 TTS 服务是 Edge TTS(免费,不需要 API Key)。在 WebUI 中它显示为 “Azure TTS V1”,两者指的是同一个免费服务。你可以在 config.toml 中设置 voice_name,也可以直接在 WebUI 的声音下拉框中选择。
说明: WebUI 中的 “Azure TTS V1”(Edge TTS,免费)和 “Azure TTS V2”(付费 Azure Speech SDK)是两个不同选项,只有 V2 需要配置 Azure API Key。
如果你希望使用质量更高的 Azure TTS V2 声音,需要在 config.toml 中配置 Azure Speech 凭据:
[azure]
speech_key = "your-azure-speech-key"
speech_region = "eastus"Azure TTS V2 需要开通 Azure Speech Services 订阅。v1.1.2 新增的 9 种 Azure 声音整体会比 Edge TTS 更自然。
当前支持2种字幕生成方式:
- edge: 使用 Edge TTS 返回的时间戳对齐字幕。速度快,不需要 GPU,普通机器也可以运行;但复杂句子的时间戳偶尔可能不够准确。
- whisper: 使用本地
faster-whisper转写生成后的音频,并生成更细粒度的时间戳。速度较慢(CPU 上通常需要几秒到约 1 分钟,取决于模型大小),需要下载模型(large-v3-turbo约 250 MB,large-v3约 3 GB),但不依赖 TTS provider 的时间戳,字幕准确性通常更好。
可以修改 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 目录下,你也可以放进去自己的字体。
通常情况下,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"当前版本已经不需要 ImageMagick。
项目升级到 MoviePy 2.x 后,字幕渲染已经改为使用 Pillow,不再依赖 ImageMagick。如果你仍然看到 ImageMagick 相关错误,通常说明运行的是旧版本代码。请先执行
git pull更新代码,Windows 用户也可以运行update.bat更新。
这个问题是由于系统打开文件数限制导致的,可以通过修改系统的文件打开数限制来解决。
查看当前限制
ulimit -n如果过低,可以调高一些,比如
ulimit -n 10240LocalEntryNotFoundError: Cannot find an appropriate cached snapshot folder for the specified revision on the local disk and
outgoing traffic has been disabled.
To enable repo look-ups and downloads online, pass 'local_files_only=False' as input.
或者
An error occurred while synchronizing the model Systran/faster-whisper-large-v3 from the Hugging Face Hub:
An error happened while trying to locate the files on the Hub and we cannot find the appropriate snapshot folder for the
specified revision on the local disk. Please check your internet connection and try again.
Trying to load the model directly from the local cache, if it exists.
解决方法:点击查看如何从网盘手动下载模型
- 可以提交 issue 或者 pull request。
点击查看 LICENSE 文件