
AI 生视频这个赛道最近半年我身边做内容的朋友几乎都在聊。有人用扣子搭了个工作流把一篇公众号文章直接转成带配音的短视频有人用 ComfyUI 把产品图批量生成动态展示还有人干脆把整套流程封装成一个 Agent输入一个标题就自动出片。但真正动手的时候大部分小白卡在同一个地方工具太多、概念太杂、不知道从哪一步开始。这篇内容就是把我自己从零跑通「AI 生视频 Agent」的完整路径拆开讲包括为什么选扣子而不是别的平台、ComfyUI 在整条链路里到底扮演什么角色、工作流怎么搭才不会跑一半崩掉以及我踩过的那些坑。不管你是完全没接触过 Agent 的内容创作者还是想从手动剪辑转向自动化生产的运营这套思路都能直接拿去用。1. 先搞清楚 AI 生视频 Agent 到底在解决什么问题1.1 手动做一条视频的时间都花在哪了我先算一笔账。一条 60 秒的短视频如果纯手动做流程大概是想选题10 分钟、写脚本20 分钟、找素材30 分钟、剪辑拼接40 分钟、配音配乐15 分钟、导出检查10 分钟。加起来两个多小时这还是在素材现成的情况下。如果要做系列内容每天一条光人力成本就扛不住。AI 生视频 Agent 的核心价值不是「让视频变得更好看」而是把上面这条链路里重复性最高、决策成本最低的环节自动化掉。选题和脚本仍然需要人来把关但素材生成、配音、拼接、导出这些步骤完全可以交给一个搭好的工作流去跑。我自己的做法是人只负责输入一个标题和一段核心观点Agent 负责把剩下的全部跑完最后我只需要审核和微调。这样一条视频的实际人工介入时间从两小时压缩到十五分钟以内。1.2 Agent 和普通工作流的本质区别很多人把「工作流」和「Agent」混着用其实两者在 AI 生视频场景里的分工很明确。工作流是确定性的流水线你定义好第一步做什么、第二步做什么它就按顺序执行。比如「读取文案 → 调用 TTS 生成配音 → 调用生图模型生成画面 → 拼接 → 导出」。每一步的输入输出都是固定的不会自己判断。Agent 则是在工作流之上加了一层决策能力。它可以根据输入内容自己判断这段文案适合用什么风格的画面配音用男声还是女声视频长度控制在多少秒甚至可以在生成失败时自动重试或换一个方案。打个比方工作流像是一条固定路线的公交Agent 像是一个会看路况自己选路线的司机。对于 AI 生视频这种「输入内容千变万化」的场景纯工作流往往不够灵活加上 Agent 的决策层之后出片质量会稳定很多。1.3 为什么小白应该从扣子入手而不是自己写代码市面上做 Agent 的平台不少扣子、Dify、FastGPT、n8n 各有各的定位。我试过一圈之后给新手的建议是如果你不是程序员先从扣子开始。原因有三个。第一扣子的可视化编排界面足够直观拖拽节点就能搭出一条完整链路不需要写一行代码。第二它内置了大量现成的插件和模型调用能力包括文本生成、图像生成、语音合成这些 AI 生视频必需的模块省去了自己对接 API 的麻烦。第三扣子的工作流调试功能做得比较完善每一步的输入输出都能实时看到出问题的时候容易定位。Dify 更偏向企业级应用编排FastGPT 强在知识库问答n8n 适合做系统间的自动化集成。如果你的目标是「快速跑通一条 AI 生视频链路」扣子的上手曲线是最平缓的。2. 扣子工作流的搭建逻辑从输入标题到输出视频2.1 整体链路拆解一条完整的 AI 生视频工作流我把它拆成六个节点输入节点接收标题和核心观点脚本生成节点调用大模型把标题扩写成带分镜的脚本配音生成节点把脚本转成语音文件画面生成节点根据分镜描述生成对应的图片或视频片段合成节点把配音和画面按时间轴拼接输出节点导出最终视频文件这六个节点里第 2 和第 4 是最容易出问题的环节后面会单独展开讲。先说一下整体搭建时的一个关键原则每个节点的输出格式必须严格对齐下一个节点的输入格式。我见过太多人卡在「脚本生成完了但配音节点读不懂」这种低级问题上本质就是节点之间的数据格式没有约定好。2.2 脚本生成节点的提示词设计脚本生成是整个工作流的起点它的输出质量直接决定了后面所有环节的天花板。我用的提示词结构是这样的你是一个短视频脚本生成助手。请根据以下标题和核心观点生成一份适合 60 秒短视频的脚本。 标题{{title}} 核心观点{{point}} 要求 1. 脚本分为 4-6 个分镜每个分镜包含画面描述用于生成图片、旁白文案用于生成配音 2. 旁白文案总字数控制在 180-220 字之间对应约 60 秒的语速 3. 画面描述要具体包含场景、主体、风格关键词 4. 输出格式为 JSON 数组每个元素包含 scene_desc 和 voice_text 两个字段这里有几个细节值得展开说。字数控制是最容易被忽略的中文 TTS 的正常语速大约是每秒 3-4 个字60 秒的视频对应 180-240 字。如果你不限制字数模型可能给你生成 500 字的文案配音出来两分半画面根本对不上。输出格式用 JSON而不是自然语言是为了让后面的节点能程序化地解析。扣子的工作流支持结构化输出你在提示词里明确要求 JSON 格式模型就会按这个格式返回后续节点可以直接按字段取值。2.3 配音节点的参数选择扣子内置了语音合成能力但参数选不对出来的效果会很奇怪。我实测下来比较稳的配置是参数推荐值说明音色通用女声/男声避免选情感过于强烈的音色语速1.0-1.1 倍略快于正常语速短视频节奏更紧凑音量默认后续合成时统一调整输出格式MP3兼容性最好有个坑要提醒配音生成的时间戳信息一定要保留。后面画面和配音对齐的时候需要知道每句话在音频里的起止时间。如果平台支持返回时间戳务必勾选如果不支持就需要在合成节点里用固定时长来估算精度会差一些。2.4 画面生成ComfyUI 在链路里的位置扣子本身可以调用图像生成模型但如果你对画面质量有更高要求或者需要生成动态视频片段ComfyUI 是更专业的选择。ComfyUI 是一个基于节点式编排的图像/视频生成工具它的优势在于工作流可以高度定制。比如你可以搭一条「文生图 → 图生视频 → 超分辨率」的链路每个环节的模型、参数、采样器都能自己控制。秋叶整合包把常用的模型和插件都打包好了安装之后基本开箱即用。在 AI 生视频 Agent 的整体架构里ComfyUI 通常作为画面生成的后端存在。扣子负责编排整个流程和决策当需要生成画面时通过 API 调用 ComfyUI 的工作流把画面描述传过去拿回生成的图片或视频片段。这种分工的好处是扣子负责「逻辑」ComfyUI 负责「画质」。你可以在 ComfyUI 里慢慢调模型和参数调到满意为止然后固化成一条工作流让扣子反复调用。2.5 合成与输出节点的注意事项合成节点要做的事情是把配音和画面按时间轴对齐。如果配音节点返回了时间戳直接按时间戳切分画面即可如果没有就需要按分镜数量平均分配时长。输出格式建议选 MP4分辨率 1080P帧率 30fps。这个配置在主流平台上的兼容性最好。如果要做竖版短视频分辨率改成 1080x1920。提示合成节点是整个工作流里最耗时的环节如果视频较长建议加一个超时重试机制避免因为单次合成失败导致整个工作流中断。3. ComfyUI 画面生成的实操细节3.1 秋叶整合包的安装与初始配置秋叶整合包是国内 ComfyUI 用户最常用的安装方式它把 Python 环境、常用模型、核心插件都打包好了解压即用。安装步骤不复杂但有几个地方新手容易卡住。第一解压路径不要有中文和空格。这个问题在 Windows 上特别常见路径里有中文会导致部分插件加载失败。建议直接解压到 D 盘根目录比如D:\ComfyUI。第二首次启动会自动下载依赖这个过程可能需要几分钟取决于网络情况。如果卡在某个依赖上不动可以检查一下整合包版本是否和你的系统匹配。第三模型文件要放到正确的目录。文生图模型放在models/checkpoints图生视频模型放在models/video或对应插件指定的目录。放错位置的话工作流加载时会报「模型未找到」。3.2 文生图工作流的关键参数搭一条用于 AI 生视频的文生图工作流核心参数有这么几个采样器推荐 DPM 2M Karras 或 Euler a前者细节更丰富后者速度更快采样步数20-30 步足够超过 30 步收益递减明显CFG Scale7-9 之间太低画面发散太高画面僵硬分辨率512x512 生成后再放大比直接生成 1024x1024 更稳定我自己的习惯是先用低分辨率快速出草图确认构图没问题之后再放大。这样试错成本低调整起来也快。3.3 图生视频的两种技术路线目前 ComfyUI 里做图生视频主要有两条路线路线一基于 AnimateDiff 的动画生成。它的原理是在文生图的基础上加入时序注意力层让生成的帧之间保持连贯。优点是配置相对简单缺点是生成长视频时容易出现画面漂移。路线二基于 SVDStable Video Diffusion的图生视频。输入一张静态图模型直接生成一段几秒的动态视频。优点是动态效果自然缺点是单次生成的时长有限通常只有 2-4 秒。对于 AI 生视频 Agent 来说我建议用路线二。因为 Agent 的工作流通常是「每个分镜生成一段短片段最后拼接」SVD 的单次生成时长刚好匹配这个需求。AnimateDiff 更适合做单段较长的动画。3.4 把 ComfyUI 工作流接入扣子的方式ComfyUI 本身提供了 API 接口启动时加上--listen参数就可以接受外部请求。扣子这边通过 HTTP 请求节点调用 ComfyUI 的 API把画面描述和参数传过去等待返回结果。具体流程是在 ComfyUI 里搭好工作流用「保存 API 格式」导出 JSON在扣子的 HTTP 请求节点里把 JSON 里的提示词字段替换成变量发送 POST 请求到 ComfyUI 的/prompt接口轮询/history接口获取生成结果从返回结果里提取图片或视频的路径这里有个实操经验ComfyUI 的生成是异步的你发送请求之后不会立刻拿到结果需要轮询查询状态。轮询间隔建议 2-3 秒太频繁会给服务器压力太慢会影响整体流程速度。4. 跑通之后才会遇到的坑4.1 画面和配音对不上的问题这是最常见的问题。表现是配音说到第三句了画面还停在第一句。根本原因是分镜时长和配音时长没有对齐。我的解决方案是以配音时长为准来切分画面。具体做法是配音生成后先获取总时长然后按每个分镜的文案字数占比来分配画面时长。比如总时长 60 秒第一个分镜文案占 30%那第一个画面就显示 18 秒。如果配音节点能返回每句话的时间戳那就更精确了直接按时间戳切分即可。4.2 生成内容风格不统一AI 生视频最怕的就是画面风格跳来跳去。第一个分镜是写实风第二个变成卡通第三个又成了赛博朋克。观众看着会很出戏。解决办法是在脚本生成阶段就锁定风格关键词。在提示词里明确要求「所有分镜的画面描述都包含相同的风格词」比如统一加「电影感、暖色调、浅景深」。然后在 ComfyUI 的工作流里把风格词作为固定前缀拼接到每个画面描述前面。4.3 工作流跑一半中断的排查思路工作流中断的原因通常有三类模型调用超时、数据格式不匹配、资源不足。排查的时候按这个顺序来先看日志里最后成功执行的是哪个节点然后检查这个节点的输出格式是否符合下一个节点的输入要求。如果是模型调用超时检查一下是不是单次请求的内容太长或者并发数太高。如果是资源不足看看显存占用是不是满了ComfyUI 生成高分辨率图片时显存占用会飙升。我自己的习惯是每加一个新节点就先单独测试确认它能正常输出之后再接入主流程。这样出问题的时候范围就缩小到最近加的那个节点排查效率高很多。4.4 并发和稳定性问题当你想批量生成视频的时候并发问题就来了。ComfyUI 默认是单任务队列同时发多个请求会排队执行。如果扣子这边设置了较短的超时时间排在后面的请求就会超时失败。我的做法是在扣子这边加一个队列控制限制同时发送给 ComfyUI 的请求数量不超过 2 个。虽然整体速度慢一些但稳定性高很多。另外ComfyUI 的队列长度也要关注如果积压太多可以考虑加一台机器做负载分担。5. 从跑通到好用几个提升出片质量的经验5.1 脚本分镜的颗粒度控制分镜不是越多越好。我试过 8 个分镜的脚本结果每个画面只有 7 秒左右观众还没看清就切走了。后来固定在 4-6 个分镜每个画面 10-15 秒观看体验明显更好。另外每个分镜的画面描述要有一个明确的视觉主体。不要写「一个人在思考人生」这种模糊的描述要写「一个年轻女性坐在窗边手托下巴窗外是城市夜景暖色灯光」。描述越具体生成出来的画面越可控。5.2 配音和背景音乐的平衡纯配音的视频听起来比较干。加一层背景音乐观感会好很多。但音乐音量要控制好建议在 -20dB 到 -15dB 之间确保不会盖过人声。扣子的合成节点如果支持多轨道混音直接加一条音乐轨道即可。如果不支持可以先用音频处理工具把配音和音乐混好再传给合成节点。5.3 批量生成时的命名和归档当你一天要生成几十条视频的时候文件命名就很重要了。我的命名规则是日期_标题关键词_版本号比如20250115_AI生视频_v1。这样后期查找和替换都方便。归档的时候按日期建文件夹每个文件夹里放当天的脚本、配音、画面和成片。虽然多花几分钟整理但后面要改的时候能省很多时间。5.4 什么情况下应该放弃自动化改回手动不是所有视频都适合自动化。我的判断标准是如果这条视频的核心竞争力在画面创意上就手动做如果核心竞争力在信息传递上就自动化。比如产品功能介绍、知识科普、新闻速递这类视频观众关注的是信息本身画面只要过得去就行自动化完全够用。但如果是品牌宣传片、创意短片画面本身就是内容的一部分那就需要人工精雕细琢。我在实际使用中最大的体会是Agent 不是用来替代人的而是用来把人从重复劳动里解放出来让人把精力放在真正需要创造力的环节上。搭好一条稳定的工作流可能需要花两三天时间但一旦跑通后面每天节省的时间是实实在在的。