
很多人最近都在问我同一个问题Claude Opus 5.5 到底能不能直接生成视频说句大实话我一开始也以为它像那些AI视频工具一样输一句提示词就能吐出一段成品。但真正把这条链路跑通之后我才反应过来——它确实能“做视频”但方式跟大多数人想象的不太一样。Claude Opus 5.5 本身不渲染像素它不是视频生成模型。它的位置在更上游负责把“你脑子里的模糊想法”变成“视频模型能听懂的分镜脚本、提示词和技术参数”。真正把文字变成画面的是 ComfyUI 这类生成工作流。换句话说Claude 是大脑ComfyUI 是手中间还得有一根骨架把两者接起来。这篇文章就把这根骨架完整拆给你看包括我在用 Claude 做分镜、用 ComfyUI 出帧、被 OOM 爆显存折腾到半夜的全过程。1. 先理清楚Claude Opus 5.5 在这条链路里到底是什么角色1.1 语言模型不碰渲染它负责的是决策密集型工作很多人踩坑的根源是把“视频生成”理解成了单一动作输入一句话模型吐出一段视频。实际上哪怕最强的视频生成模型也只擅长处理“可见事实的一句话”——某个主体在某种光线和运镜下做某个动作。Claude Opus 5.5这种语言模型的强项不在像素级别而在决策层面。它可以判断一段30秒的视频应该拆成几个镜头每个镜头几秒钟可以决定镜头从低角度推近还是俯拍可以把“我想要一种孤独的感觉”翻译成“黑猫蹲在积水路面中央雨滴落下红蓝霓虹灯在湿地面上形成倒影”。这些决策都有一个共同点高频、非线性、需要语义理解而视频生成模型恰恰没有这种全局规划能力。所以我给你的第一个认知是“让Claude做视频”的准确含义是让它成为视频生产流水线的“总导演”。它不负责画每一帧但负责告诉“画画的模型”每一帧该怎么画。1.2 一套清晰的AI视频生产分工大脑、手和骨架我在本地跑了一整套AI视频工作流之后习惯把系统拆成三个部分部件承担者具体工作大脑Claude Opus 5.5创意判断、剧本结构、分镜、镜头语言、正负提示词、剪辑脚本、字幕手ComfyUI 视频生成模型图像生成、首尾帧生成、视频帧生成、超分、补帧、输出MP4骨架工作流JSON Python脚本 FFmpeg把Claude输出的结构化数据传给ComfyUI调用API轮询任务拼接片段有人可能觉得那我直接用 ComfyUI 不就行了问题是ComfyUI 不会帮你规划剧情。你往里面填提示词的时候如果连“这一段应该拍什么、下一段怎么转场”都没想清楚生成出来的素材就一定是散的。Claude 在这个链路里的核心价值就是持续产出高质量、可执行的决策信息让手和骨架不用思考只管执行。这套分工跑顺了之后我最大的感受是真正的瓶颈不在 GPU而在前期“决策密度”太低。Claude 做的事情恰好是把决策密度拉满。2. 从“一句话创意”到“一套可执行的分镜文件”2.1 为什么要让 Claude 输出结构化中间产物而不是直接聊天我刚开始干过一件傻事直接跟 Claude 说“帮我拍一条雨夜霓虹城市的猫30秒”然后把它输出的那几段非常漂亮的描写性文字整个粘贴到 ComfyUI 的正向提示词里。结果生成出来的画面又乱又空有时候猫变成了一个色块有时候霓虹灯糊成一片。问题出在哪里Claude 写出来的是“散文”而视频模型要的是“工程指令”。散文是给人看的讲究氛围和留白工程指令是给模型看的讲究单位时间内可见、可测量的具体事实。后来我给自己定了一条规矩Claude 输出的内容里必须包含可执行的工程字段。要么是分镜表格要么是 JSON。我一般让它输出 JSON 结构因为后面接 ComfyUI API 自动化的时候最方便。一个典型的分镜 JSON 长这样{ project: { title: 雨夜霓虹城市的猫, duration_sec: 30, aspect_ratio: 16:9, total_shots: 6 }, shots: [ { shot_id: 1, shot_length_sec: 5, length_frames: 150, subject: 一只黑猫蹲在积水路面中央, camera: 低角度缓慢推近35mm镜头, lighting: 雨夜霓虹灯红色与青色双光源湿地面反射, action: 猫回头看向镜头瞳孔放大耳朵转动, transition: 淡入从黑色渐变出现, negative_prompt: 低质量,模糊,变形,水印,低分辨率 } ] }你可能会问为什么每个字段都要单独拆开因为后面接模型的时候每个字段都有对应位置。镜头描述可以放到图生视频的条件输入里光线描述可以放进提示词负向提示词单独填转场方式可以用来决定片段之间怎么拼接。结构化输出不是为了好看是为了让整条流水线每个环节都能吃到正确的信息。2.2 一份可以直接复制的 Claude 分镜提示词模板下面这个提示词模板是我现在每次起项目的默认入口。你可以直接把整段复制给 Claude只改主题和总时长你现在是一位资深广告导演和AI视频分镜师。你的任务是把用户给出的创意主题拆解成一套可直接用于AI视频生成的工程分镜文件。 要求 1. 输出严格JSON格式不要输出任何解释性文字。 2. 每个镜头都必须包含shot_id、shot_length_sec、length_frames、subject、camera、lighting、action、transition、positive_prompt、negative_prompt。 3. positive_prompt 必须使用具体可见的视觉词汇禁止使用抽象形容词。 4. 拍摄对象如果包含人物或动物必须清晰描述其外形、动作、位置。 5. 镜头时长要符合叙事节奏一组30秒视频至少包含4个镜头。 6. 请根据主题推演完整的小故事结构而不是重复同一场景。 创意主题雨夜霓虹城市的猫 总时长30秒 比例16:9 视觉风格赛博朋克写实胶片质感这份模板的关键是“只输出JSON不输出解释性文字”。一旦 Claude 开始解释“我这么设计是因为……”那些 token 就浪费了还会干扰后续自动化解析。我实测过加上这句话之后输出直接进入可解析状态后面写 Python 脚本时省了不知道多少事。2.3 我踩过的坑提示词太“文艺”生成结果就失控我知道有人会说Claude 写出来的文字多美啊为什么不直接用它你看下面这个对比就明白了。类型示例ComfyUI 生成结果抽象文艺“雨夜的执念霓虹与孤猫的对望”画面变色、主体漂移、构图杂乱、模型进入“发散状态”具体工程“黑猫蹲在湿漉漉的柏油路上红色霓虹从左侧照射青色霓虹从右侧照射猫回头看向镜头眼睛反射出路灯浅景深雨滴落在背景中”主体稳定光线方向明确动作清晰可复现差别在哪抽象词没有锚点。模型收到“执念”这种词只能用模糊的分布去猜猜出来的东西当然不稳定。而“红色从左侧打光、青色从右侧打光”是可见、可测量的模型有能力把它画准。所以我后来在 Claude 的系统提示词里加了一条固定规则所有正向提示词必须包含“主体的位置、主体的动作、光源方向和颜色、镜头焦段和机位、环境材质”五个维度缺少任何一个就自动补全。这一条规则帮我把废片率降了至少一半。3. 画面不是在 Claude 窗口里出来的ComfyUI 侧的执行细节3.1 ComfyUI 在链条里到底执行了什么Claude 输出的是分镜 JSON 和提示词接下来要执行的是 ComfyUI。它是目前本地生成视频最顺手的执行环境节点式操作模型加载、文本编码、采样、VAE 解码、帧处理每一步都是可见的节点。在 ComfyUI 里跑视频生成核心链路一般是这样的加载视频生成模型比如LTX、Wan、Hailuo 对应不同的模型权重把 Claude 生成的正向提示词接进文本编码节点设置采样步数和帧数经过多次去噪采样之后得到潜变量最后通过 VAE 解码成图像序列再用输出节点合成视频文件。很多人以为 ComfyUI 是“一键生成”其实它更像一个后厨。Claude 是写菜单的人ComfyUI 是把菜单变成菜品的地方。你要做的是把 Claude 写出来的“工程指令”准确填到对应节点里然后根据显存和效果反复调整参数。3.2 用首尾帧锁住动作LTX 2.3 这一类模型的玩法现在视频生成领域经常看到一个说法叫“ltx2.3首尾帧生成视频”。这是什么意思常规的文生视频你给一句提示词模型自由发挥运动方向不可控。首尾帧生成则是给模型一个明确的起点画面和终点画面让模型自己“脑补”中间这一段怎么过渡。这套玩法特别适合叙事型视频。你想拍“猫从画面左侧走到右侧然后回头”直接文生视频大概率拍成猫原地跳一下但如果你先准备一张猫在左边的图、一张猫在右边的图让模型在两张图之间生成中间帧动作路径就会被锁住。实操路径大概是这样的先用图像生成模型生成第一帧和最后一帧保持主体、光线、镜头角度一致。把首帧图和尾帧图分别接入 ComfyUI 的首帧节点和尾帧节点。加载 LTX 2.3 模型把首尾帧作为条件输入提示词写清楚中间动作“猫从左向右走步伐缓慢尾巴轻摆”。设置帧数比如两秒48帧生成中间过程。生成后检查运动是否顺滑如果有跳变把问题反馈给 Claude让它重新缩窄动作描述比如把“步伐缓慢”改成“左前爪先落地然后是右前爪每一步间隔0.5秒”。这里有个关键技巧首帧和尾帧的风格不一致生成结果就会闪。我常用的办法是让 Claude 为两帧生成同一份“画面一致性描述”然后把这套描述同时用在两张图的生成提示词里保证光线、色调、镜头焦段完全一致。3.3 FramePackWrapper把长视频拆成“包裹”来降低显存压力如果你搜过“comfyui生成视频时爆内存”大概率也见过“FramePackWrapper”这个名字。社区里关于“comfyui-framepackwrapper技术实践”的讨论其实指向的是同一个问题视频生成的内存占用是随着帧数线性增长的但显存是固定的。FramePackWrapper 的思路可以理解成一个打包策略。它不把一整段长期视频一次性塞给模型而是把视频拆成若干小帧包每一包包含前几帧作为上下文生成下一小段然后再滚动更新。这样做有两点直接好处一是每次生成的压力被限制在小块内显存峰值显著下降二是可以连续滚动理论上只要你有耐心就能不断往下延长视频。我更愿意把它理解成一种“工程策略”而不是某个具体的魔法节点。它背后的原则是宁可多调度几次也别让显存在一瞬间被塞爆。这条原则反过来也适用于整个 ComfyUI 工作流。4. 内存溢出与“无限视频”两个热搜背后的工程真相4.1 comfyui生成视频时爆内存别急着加显存先按顺序排查最近“comfyui生成视频时爆内存”几乎成了高频词。我自己的习惯是遇到 OOM先不要无脑开大显存。很多内存溢出是可以在配置层规避的。我一般按下面这个顺序排查第一步先确认是显存爆了还是系统内存爆了。系统内存爆掉通常会直接卡死或者进程被杀显存爆掉则会出现 CUDA out of memory 的报错。第二步检查是不是同时加载了多个模型。ComfyUI 会把已加载的模型驻留在显存里你如果又加载了一个文生图模型又加载了一个视频模型显存自然不够。把不需要的模型先卸载掉。第三步检查精度设置。FP16 改成 FP8 可以省不少显存画面质量损失通常在可接受范围内。第四步降低 batch size。视频生成一次处理的帧数越多显存峰值越高适当调低帧数或分段生成是立竿见影的手段。第五步降低分辨率。视频生成里 512x512 换成 256x256显存占用不是减一半而是减四倍。画面的长宽对显存占用是平方级放大。第六步启用 CPU offload 或者交叉注意力优化。比如 xformers、Flash Attention这些手段把一部分计算分流能显著降低峰值。我把常见症状整理成了表格排查的时候可以直接对号入座现象大概率根因缓解手段启动即爆显存多个模型常驻卸载用不到的模型按需加载帧数一调高就爆batch size 过大降低 batch分帧生成后拼接分辨率稍微调高就爆显存容量不足降分辨率开 offload换 FP8运行一段时间后爆缓存或历史任务未清理重启工作流清理临时节点仅视频模型爆注意力机制开销过大开 Flash Attention压缩上下文帧数4.2 “ai无限制生成视频”到底是怎么一回事热搜词里还有个很诱人的说法叫“ai无限制生成视频”还有人搜“comfyui无限生成视频”。我也被这两个词骗过。真实情况是没有哪个模型能一口气生成无上限的长视频。就算有显存也不答应。所谓的“无限”本质是一套循环生成管道。你可以这样做先让 Claude 把长故事切分成无数个短镜头再让 ComfyUI 每次只生成其中一小段生成完毕之后把这一段的最后一帧作为下一段的起始帧然后由 Claude 给出下一段的提示词。如此循环每一段都衔接上一段拼接起来就能在工程上接近“无限”延长。你可能会想既然每次只生成几秒那么“无限”是不是就是不停手对但这里有三个关键约束。一是上下文记忆模型不可能记住前面所有帧所以每次只能接最近的一两帧这导致故事很难有长期连贯性。二是角色一致性同一个角色只要隔了几段脸就会漂所以要用参考图和字符锁定节点。三是内容规划Claude 必须把整个故事的目标和节奏保持在它的上下文窗口里每一段新提示词都要围绕大纲走否则后边生成的东西会慢慢跑偏。顺嘴提一句还有一个看起来沾边但完全不同的方向叫“上传一段视频生成对应的三维场景”那是神经重建和三维高斯溅射的领域走的是三维重建路线跟本篇文章谈的文本驱动视频生成不是一个赛道。4.3 本地部署自动化AI视频生成的最小脚本把“无限制生成”落到工程上其实可以做成一个自动化循环。我的做法是Claude 负责无限供给分镜ComfyUI API 负责消耗分镜中间用 Python 脚本串起来。伪代码结构大概长这样import requests import time COMFY_API http://127.0.0.1:8188 def run_comfy_workflow(shot): workflow load_template(shot[template]) set_workflow_text(workflow, 正向提示词, shot[positive_prompt]) set_workflow_text(workflow, 负向提示词, shot[negative_prompt]) if shot.get(first_frame): set_workflow_image(workflow, 首帧, shot[first_frame]) if shot.get(last_frame): set_workflow_image(workflow, 尾帧, shot[last_frame]) resp requests.post(f{COMFY_API}/prompt, json{prompt: workflow}).json() task_id resp[prompt_id] while True: status requests.get(f{COMFY_API}/history/{task_id}).json() if status.get(task_id, {}).get(status, {}).get(completed): break time.sleep(1) return fetch_output_video(task_id) for shot in claude_generate_shots(雨夜霓虹城市的猫, 30): video_path run_comfy_workflow(shot) last_frame extract_last_frame(video_path) shot[first_frame] last_frame save_and_append(video_path)这段代码的写法取决于你本地 ComfyUI 的具体版本和节点定义不同模板的字段名长得不一样。但核心循环的逻辑是通用的取一个分镜、填提示词、丢给 ComfyUI、等待完成、抽最后一帧交给下一个分镜。做到这一步“本地部署自动化AI视频生成”就已经不再是概念而是一个每天能自动吐素材的小工厂。5. 实测一回5秒样片Claude 该写多少个字的提示词5.1 从样片开始设定目标与预算网上有个提问很典型“minimax h3 生成5秒视频提示词需要多少字”。提问者以为决定成片质量的是字数但跑了这么多项目下来我的答案是决定质量的不是字数是信息密度。我拿“雨夜霓虹城市的猫”这个主题做一次完整实测。目标就定在5秒帧数40分辨率1280x720。Claude 收到主题之后给出的正向提示词全文不算太长大概在两百字出头但我把它拆开看里面每一句都能对应到画面中的一个具体元素。5.2 Claude 产出的提示词长什么样这就是 Claude 为这5秒样片生成的正向提示词我原样贴出来一只湿漉漉的黑猫蹲在柏油路中央毛皮上有细密的水珠眼睛反射出两侧霓虹灯的彩色光斑。红色霓虹灯从画面左侧照射青色霓虹灯从画面右侧照射湿地面映出红蓝交错的倒影。低角度机位35mm镜头浅景深背景的雨丝和广告牌灯光轻微虚化。猫缓慢回头看向镜头瞳孔微微放大耳朵一角抖动雨水从背毛滑落。整体画面略带胶片颗粒高对比度赛博朋克氛围。请注意这里没有“孤独”“惆怅”“赛博”这类抽象概念。赛博朋克氛围是靠红青双光源、霓虹倒影、雨丝这些可见事物撑起来的。整段提示词的信息密度很高每个名词和动作都在为画面提供确定锚点。实际操作过程中5秒视频给模型的正向提示词一般控制在150到300字之间。少于100字模型发挥空间大结果不可控超过500字多余描述会被模型忽略甚至稀释关键信息。Claude 在这里的价值就是帮你把 300 字拧干把水分挤掉。5.3 从一帧到成片最小可跑通链路我的执行链路是这样的第一步让 Claude 输出上面那段提示词同时让它生成首帧和尾帧的画面描述。第二步把提示词接入 ComfyUI先用文生图节点生成首帧图再用相同提示词和首帧图组合出尾帧图确保两帧风格一致。第三步加载 LTX 2.3 节点把首帧尾帧分别接到对应输入端正向提示词填 Claude 那段描述设置 40 帧采样步数取 20 步开始生成。第四步如果模型只输出图像序列就用 FFmpeg 把序列合成视频。我最常用的命令长这样ffmpeg -framerate 8 -i frame_%04d.png -c:v libx264 -pix_fmt yuv420p rain_cat.mp4第五步回放把问题丢回给 Claude。比如“第二段不受控尾巴动作过于机械”Claude 会自动修正提示词把“尾巴轻摆”改成“尾巴从身体左侧缓慢扫向右侧末端停顿半秒”。这个迭代闭环才是 Claude 参与视频生产最值钱的地方。我给你算一笔成本账如果用本地模型硬件投入是一劳永逸的边际成本主要是电费如果用在线 API那就严格控制迭代次数先出5秒样片验证提示词再决定要不要跑30秒正片。在线模型一次性跑30秒的失败成本太高分批、分镜、逐步试错才是降本的关键。6. 如果把这条链路跑顺我最想提醒你的三件事6.1 别让 Claude 孤军奋战把“导演注释”和“生成提示词”分开我给 Claude 的回复里经常同时要求两列输出一列是“导演注释”解释这个镜头的叙事意图一列是“正向提示词”是直接喂给模型的工程语言。前者给回看分镜的人看后者给 ComfyUI 吃。这两件事混在一起Claude 就会写出又文艺又冗长的提示词两头不讨好。6.2 显存不是仓库是车间本地跑 ComfyUI最容易犯的毛病是一次加载一堆模型、保留一堆缓存。显存应该被当成工厂车间而不是仓库——不需要的材料要及时清走生成完的素材要立刻写到硬盘。我后来在自动化脚本里强行加了一行“任务结束后释放所有模型”OOm 出现频率大幅下降。6.3 先定试错成本再谈长视频但凡要生成超过10秒的内容我都会先跑一个5秒样片把提示词、模型选择、帧率全部定型再扩展到整个项目。这也是为什么我倒过来反复强调“5秒样片”这个单位。它小到可以快速试错大到能暴露绝大多数问题。以前我动不动直接跑30秒烧掉的时间和算力足够我用样片迭代三轮了。最后再分享一个我现在正在折腾的方向让 Claude 看一眼 ComfyUI 返回的错误日志自己修正提示词和参数再把修复后的文本提交回管线。这等于把“导演”和“执行工程师”合并成一个闭环。目前我已经能做到让它对常见的显存溢出和提示词语义错误自动给出替代方案虽然还需要人在关键节点把关但整个“Claude ComfyUI”的视频生产节奏已经比最开始快了不止一倍。