通过n8n部署工作流实现ai自动生成短视频
本问通过调用moneyprinterturbo和pexels的api,通过docker搭建n8n工作台来自动生成短视频。
需要的东西:
1.docker:主要在docker上部署环境进行操作。
2.linux系统:使用Ubuntus。
3.n8n工作台:搭建工作流的场景。
4.pexels:获取免费的图片和视频。
5.moneyprinterpower:规划视频的各种参数设置。
6.ai:Gemini2.5。(需要有谷歌账号,可使用美国的VPN然后创建,即可输入86+电话号码获得短信验证码,还是不行可把谷歌的语言改为美国后操作)
一、通过docker容器部署,并执行以下命令来创建docker数据卷(n8n),并启动n8n服务
docker volume create n8n_data
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
在cmd中打开5678端口的本地网址,打开即为n8n的工作台
二、搭建工作流
2.1、on form submission(提交话题)

接着给他添加一个agent节点(主要使用Google的Gemini2.5)并给ai一份提示词,让ai生成合理的短视频。
你是一位资深自媒体运营专家兼文案策划师,深谙YouTube Shorts平台调性与用户心理。
任务:针对“{{ $json.topic }}”主题,撰写一份100-120字的短视频文案,并给出不超过10字的标题。
要求:
1. 模仿以下结构:
- 【钩子】3秒内抓住注意力
- 【核心要点】3个关键卖点或利益点
- 【CTA】一句行动号召
2. 严格输出 JSON,且仅包含 title 和 content 两个字段:
{
“title”: “在此填入视频标题”,
“content”: “在此填入文案内容”
}"

接着添加一个ai模型,即Gemini,需在Google ai studio中获取api密钥,在新建的凭证中添加获得的api key。
2.2、添加output parser节点--格式化输出的结果

这一步后输入视频提示词就可以通过ai自动生成视频的title和content了。
2.3、使用moneyprinterturbo这个开源的项目来自动生成短视频
先在github上复制代码网址,把代码拉取到本地
git clone +网址
再使用vscode打开项目,在里面找到config.example.toml的文件,复制下来新建一个config.toml的文件,粘贴进去,而后在pexels_api中填入从pexel中获得的api密钥(后面会有一步需要获取,可先进行下一步的操作)

2.4、在docker中部署moneyprinterturbo
先在cmd中通过cd修改文件路径到刚刚下载下来的moneyprinterturbo,然后下载python3.11的镜像
docker pull python:3.11-slim-bullseye
docker compose up --build
运行成功后打开本地网址:MoneyPrinterTurbo,即是他的web操作页面,内容包含文案设置、视频设置和字幕设置。在里面展开基础设置可需要Gemini的api密钥和点击旁边的pexels的api密钥(这里获得的密钥需要前往vscode中填入,以[" "]的格式填入。
3.添加http节点来调用moneyprintturbo的api,来生成短视频。
因为是在docker里面部署的,所以127.0.0.1要改为host。。。即使用的url为:
http://host.docker.internal:8080/api/v1/videos
粘贴上我们使用的参数
{
"video_subject": "{{ $json.output.title }}",
"video_script": "{{ $json.output.content }}",
"video_terms": "reading benefits, book knowledge, improve yourself reading, open mind reading, wisdom books",
"video_aspect": "9:16",
"video_concat_mode": "random",
"video_transition_mode": "None",
"video_clip_duration": 3,
"video_count": 1,
"video_source": "pexels",
"video_materials": null,
"video_language": "",
"voice_name": "zh-CN-YunyangNeural-Male",
"voice_volume": 1.0,
"voice_rate": 1.0,
"bgm_type": "random",
"bgm_file": "",
"bgm_volume": 0.2,
"subtitle_enabled": true,
"subtitle_position": "bottom",
"custom_position": 70.0,
"font_name": "MicrosoftYaHeiBold.ttc",
"text_fore_color": "#FFFFFF",
"text_background_color": true,
"font_size": 60,
"stroke_color": "#000000",
"stroke_width": 1.5,
"n_threads": 2,
"paragraph_number": 1
}
4.使用query task的api定时查询进度
当progress达到一百时返回成功



5.结果示例


火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)