资讯动态

Qwen+ComfyUI本地流水线:文字生成漫画剧集实战

发布时间:2026/10/23 8:23:02 来源:尧图企业网站定制
本地跑通一套“文字生成漫画剧集”的流水线是我这两年折腾得最有成就感的一件事。标题里说的 Qwen 加 ComfyUI说白了就是把“写剧本”和“画分镜”这两件原本要靠人熬通宵的活拆成两个能本地跑的模块Qwen 负责把一段故事梗概扩写成带台词、带场景描述的分镜脚本ComfyUI 负责按脚本逐格出图最后拼成一条能直接发出去的漫剧。整套东西不依赖任何在线服务模型权重和节点都躺在自己硬盘里断网也能干活。适合谁看如果你手上有一台显存 12G 以上的机器懂一点 Python 环境配置又想做点连载内容但不想被出图成本卡脖子那这套流程基本就是为你准备的。下面我按自己实际搭环境的顺序把每个环节的取舍、参数和踩过的坑都摊开讲。1. 整体方案设计与模块拆解1.1 为什么选“本地双模块”而不是一体化工具市面上有不少号称“一键生成漫画”的工具但用下来普遍有两个硬伤一是剧本和画面绑死在一个黑盒里改一句台词整条重跑二是出图风格锁死想换个画风就得换工具。我最后定下来的方案是剧本生成与图像生成彻底解耦中间用一份结构化的 JSON 分镜表做交接。Qwen 那边只负责产出文本ComfyUI 那边只认这份 JSON 里的字段两边互不干扰。这么拆的好处很直接。剧本不满意改 Qwen 的提示词重跑几秒钟的事不浪费一点显存画风不满意换 ComfyUI 里的 checkpoint 和 LoRA剧本一个字不用动。而且 JSON 分镜表本身是可读的你完全可以手动改两行再喂给 ComfyUI灵活性比一体化工具高一个量级。选 Qwen 而不是别的开源模型核心原因是它对中文叙事和对话格式的遵循度在同类里比较稳。漫剧脚本需要模型理解“第几格、谁在说话、什么表情、背景是什么”这种带结构的指令Qwen 系列在指令跟随上的表现实测下来比不少同参数量模型少很多“自由发挥”。至于 ComfyUI选它是因为节点式工作流天生适合“批量按脚本出图”这种场景一个 For Each 循环节点就能把 JSON 里的 N 个分镜挨个跑一遍换成别的界面工具反而要写更多胶水代码。1.2 整套流水线的数据流长什么样我把数据流画成一条直线方便你理解每个环节的输入输出故事梗概你手写200 字以内→ 喂给 QwenQwen 输出分镜 JSON含每格的场景、角色、台词、镜头描述→ 存成storyboard.jsonComfyUI 读取 JSON→ 逐格生成图片 → 输出到frames/目录后期拼接可选用 ffmpeg 或剪辑软件→ 成片这条链路里唯一需要“编程”的地方是第 3 步的循环逻辑但 ComfyUI 有现成的批量节点实际配置量比想象中小。我一开始也担心要写一堆 Python 脚本结果发现大部分工作是在调提示词模板和节点连线代码量几乎为零。1.3 硬件与软件的最低门槛先把丑话说前面这套东西对硬件是有要求的别拿轻薄本硬上。我整理了一张实测门槛表环节最低配置舒适配置说明Qwen 推理8G 显存7B 量化版16G 显存14B 量化版纯 CPU 也能跑但慢到怀疑人生ComfyUI 出图8G 显存SDXL 基础12G 以上SDXL 多 LoRA分辨率越高显存吃越狠硬盘60G 空闲150G 以上模型权重是大头内存16G32G加载模型时峰值很高软件侧需要 Python 3.10 或 3.113.12 部分节点还不兼容别踩这个坑、ComfyUI 本体、以及一个能跑 Qwen 的推理框架。我用的组合是 ComfyUI 加它自带的模型加载节点Qwen 那边用常见的本地推理工具加载量化权重两边通过文件系统交换数据不搞进程间通信简单粗暴但极其稳定。注意Qwen 和 ComfyUI 如果同时驻留显存8G 卡会直接爆。我的做法是分时复用——先跑完剧本生成把 Qwen 从显存里卸掉再启动 ComfyUI 出图。多花几十秒加载时间换来的是不爆显存。2. 剧本生成环节的核心细节2.1 分镜 JSON 的字段设计是成败关键很多人卡在这一步是因为让模型“随便写个脚本”结果输出格式每次都不一样ComfyUI 根本没法解析。我的经验是字段结构必须由你定死模型只负责填内容。我最终用的分镜表结构是这样的{ title: 剧集标题, panels: [ { panel_id: 1, scene: 场景描述一句话, characters: [角色A, 角色B], action: 这一格发生的动作, dialogue: 台词内容, camera: 镜头类型如特写/中景/远景, mood: 情绪关键词 } ] }这个结构里scene、action、camera、mood四个字段最终会被拼成 ComfyUI 的正向提示词dialogue单独拿出来做后期字幕。为什么把镜头和情绪单独拆字段而不是塞进 scene 里因为实测发现模型在“场景描述”里很容易漏掉镜头信息拆成独立字段后我在提示词模板里强制要求它每格都填完整率从六成提到了九成五以上。2.2 提示词模板的写法与迭代过程给 Qwen 的指令不能太随意。我第一版提示词写的是“请把下面的故事改写成漫画分镜”结果它输出的是一段散文式的描述根本没法解析。后来改成角色设定 输出格式 示例三段式效果立刻不一样。核心模板长这样你是一名漫画分镜师。请把用户提供的故事改写成 N 格分镜。 严格按以下 JSON 格式输出不要输出任何解释文字 {上面那个结构} 要求 1. 每格必须有 scene、action、camera、mood 四个字段 2. camera 只能从[特写, 近景, 中景, 全景, 远景]中选 3. 台词要口语化每格不超过 30 字这里有个细节值得说示例比规则管用。我在模板末尾附了一格完整的示例模型照着示例填的准确率明显高于只给规则。这跟人一样你给个模板它抄比让它凭空理解格式靠谱得多。迭代过程中我还发现格数不能一次要太多。让模型一次生成 20 格后面几格质量会明显下滑甚至开始重复前面的内容。我的做法是分段生成——先让它出前 8 格再基于已有内容续写后 8 格每次生成时把前面的摘要带上连贯性和质量都稳很多。2.3 参数设置与输出稳定性控制Qwen 推理时的几个参数直接决定输出稳不稳我踩过的坑都在这温度temperature设 0.7 左右比较合适。太高1.0 以上台词会飘太低0.3 以下每格描述雷同。漫剧需要一点创意但不能失控0.7 是我反复试出来的甜点。top_p0.9配合温度用过滤掉低概率的怪词。最大输出长度按格数估算每格大约 150 到 200 token8 格就给 1600留点余量设 2000。设太小会截断JSON 直接不合法。重复惩罚1.1 左右防止它反复用同一个形容词。实操心得JSON 解析失败是这一步最常见的报错。我的兜底方案是写一个小的清洗函数把模型输出里 JSON 前后的多余文字比如“好的以下是分镜”用正则切掉再尝试解析。十次里有八九次是这种前缀污染导致的失败清洗一下就好了。3. ComfyUI 出图工作流的搭建3.1 基础工作流的节点构成ComfyUI 这边我搭的是一个“读 JSON → 循环 → 拼提示词 → 出图 → 存盘”的线性工作流。核心节点不多但每个都得配对文本加载节点读取storyboard.json这里我用的是能解析 JSON 的自定义节点把 panels 数组拆成一条条记录。循环节点ComfyUI 生态里有批量处理节点能把数组逐条喂给下游。没有的话用“索引递增 队列”也能凑合但批量节点省事得多。提示词拼接节点把 scene、action、camera、mood 四个字段用逗号连成一段正向提示词。这一步我用了字符串拼接节点顺序是“场景 动作 镜头 情绪”实测这个顺序出图最贴合预期。采样器 checkpoint 加载常规的 KSampler 加模型加载没什么特别的。保存节点按panel_id命名存到frames/目录方便后期按顺序拼。整个工作流连下来大概十几个节点第一次搭可能要半小时搭好之后存成模板以后换故事只改输入文件就行。3.2 提示词拼接的工程化处理直接把四个字段用逗号连起来是不够的中间要加“权重修饰”。我的拼接模板是这样的{scene}, {action}, {camera} shot, {mood} atmosphere, comic style, clean lineart, high detail后面那几个固定后缀是画风锚点。comic style和clean lineart保证出图是漫画感而不是写实照片high detail提升细节。这几个词是我试了十几版之后留下的去掉任何一个画风都会跑偏。还有个容易被忽略的点负面提示词要统一。我在工作流里固定了一段负面提示词专门压制漫画里常见的崩坏lowres, bad anatomy, extra fingers, watermark, text, signature, blurry, deformedextra fingers和bad anatomy是人物出图的重灾区尤其手部。加上之后废图率明显下降。text和watermark是为了防止模型自己在图里“写字”漫剧的台词是后期加的图里带字会很难看。3.3 分辨率与批次参数的取舍漫剧一般是竖屏或横屏固定比例我按发布平台的习惯选了 832×1216竖屏 2:3 左右。这个分辨率在 12G 显存上跑 SDXL 刚好不爆再高就得开分块或者降批次。批次参数上有个反直觉的经验一次跑一张比一次跑四张更稳。批量出图虽然快但显存峰值高而且一旦某张崩了整批都得重来。我的做法是循环节点里每次只出一张靠循环本身实现批量牺牲一点速度换稳定性。实测下来单张出图加循环比四张一批的总耗时只多一成左右但废图率低很多。参数我的设置调整建议分辨率832×1216显存紧张降到 768×1152采样步数28低于 20 细节不足高于 35 收益递减CFG7漫画风格 6-8 之间比较稳采样器DPM 2M Karras通用性好崩图少批次1靠循环实现批量4. 角色一致性的实战解法4.1 一致性为什么是漫剧的命门漫剧和单张插画最大的区别是同一个角色要在几十格里长得一样。如果第一格主角是短发第五格变长发观众立刻出戏。这是整套流程里最难啃的骨头也是我花时间最多的地方。纯靠提示词描述外貌比如“黑色短发、戴眼镜的年轻女性”根本不够模型每次理解都有偏差。我试过三种方案最后是组合拳才解决。4.2 三种一致性方案的对比与组合方案原理效果成本提示词固定描述每格都写同样的外貌词一般细节会漂零成本角色 LoRA用角色图训练专属 LoRA好但训练费时需要 20-30 张图参考图注入用 IPAdapter 类节点注入角色参考图较好即时生效需要一张清晰参考图我的最终方案是参考图注入为主提示词固定描述为辅。先用一张满意的角色图作为参考通过参考图注入节点让每格出图都向这张图靠拢同时在提示词里保留基础外貌描述做双保险。这样不用训练 LoRA省了大量时间一致性也够用。如果角色要长期连载、出场极多那还是值得花时间训一个角色 LoRA。训练大概需要 20 到 30 张多角度、多表情的图用常见的 LoRA 训练工具跑几个小时。训好之后一致性是最高的但前期投入不小适合确定要长期做的项目。4.3 参考图注入的实操细节参考图注入有几个参数直接影响效果我调了很久才摸清注入强度0.6 到 0.8 之间。太低角色不像太高会把参考图的构图也带进来导致每格姿势都一样。0.7 是我常用的值。注入层一般注入到中间层效果最好太浅只影响颜色太深会锁死构图。参考图质量参考图必须是干净的单人图背景越简单越好。我一开始用了一张带复杂背景的图结果每格背景都被污染换成白底图后立刻正常。踩坑记录参考图注入和负面提示词会打架。有次我负面词里写了simple background结果参考图的白底被压制角色边缘出现奇怪的杂色。后来把负面词里的背景相关项去掉才解决。这类冲突只能靠试没有通用答案。5. 批量出图与后期拼接5.1 循环出图的稳定性保障批量跑几十格最怕中途某一格崩了导致整个队列卡死。我的做法是在循环节点外面包一层错误跳过逻辑——某一格出图失败比如显存瞬时不足记录日志后跳过继续下一格最后统一补跑失败的格。ComfyUI 的部分批量节点支持这种容错没有的话就得自己在节点逻辑里加判断。另外出图前我会先跑一遍“低质量预览”——把步数降到 8快速出一遍所有格检查构图和角色一致性有没有大问题。确认没问题再全量跑高质量版本。这一步能省下大量返工时间因为构图错了的话高质量跑也是白跑。5.2 台词与字幕的合成图出完了台词还没上。我的做法是从storyboard.json里把每格的dialogue抽出来按panel_id顺序生成字幕文件SRT 格式再用 ffmpeg 把图片序列和字幕合成视频。字幕的样式字体、位置、描边在 ffmpeg 的滤镜参数里调我一般用白字黑边放在画面下方三分之一处这是漫剧比较通用的排版。如果要做成带配音的版本可以把台词喂给本地语音合成工具生成音频再按时间轴对齐。这一步我做得比较粗糙因为漫剧很多是静音配字幕的配音属于加分项不是必需项。5.3 成片节奏的把控最后拼成片时每格的停留时长很影响观感。我的经验是按台词长度定停留时间——短台词停 2 秒长台词按每秒 5 个字估算。纯画面无台词的格停 1.5 秒左右。节奏太快观众看不清太慢又拖沓。这个没有标准答案多剪几版找感觉。6. 常见问题与排查速查6.1 高频报错与解决思路现象可能原因解决方向JSON 解析失败模型输出带前缀/后缀文字正则清洗后再解析出图全黑或全噪模型加载失败或显存不足检查 checkpoint 路径降分辨率角色每格都不一样参考图注入未生效或强度太低提高注入强度检查参考图质量手部崩坏严重负面提示词缺失加bad anatomy, extra fingers循环中途卡死单格失败导致队列阻塞加错误跳过逻辑画面带莫名文字模型自行生成文字负面词加text, watermark6.2 几个只有实操才会遇到的坑第一个坑是模型切换时的显存残留。Qwen 跑完切到 ComfyUI有时候显存没完全释放导致 ComfyUI 加载模型时报 OOM。我的解决办法是跑完 Qwen 后手动清一次显存缓存或者干脆重启推理进程。多花十几秒省得排查半天。第二个坑是文件路径里的中文和空格。ComfyUI 的部分节点对含中文或空格的路径处理有问题读 JSON 时静默失败。把工作目录改成纯英文无空格路径后这类玄学问题全消失了。第三个坑是采样器和 checkpoint 的匹配。有些 checkpoint 配某些采样器会出奇怪的色块换采样器就好。这不是 bug是模型训练时的采样器偏好问题多试几个组合就能找到最搭的。6.3 性能优化的几个实用技巧模型常驻如果连续做多集别每次都重新加载模型让 ComfyUI 保持运行只换输入 JSON加载时间能省一大半。预览降步数前面说的低质量预览步数降到 8 到 10速度能快三倍以上用来验证构图足够。分目录管理每集一个独立目录JSON、参考图、输出帧、成片分开存后期找素材不抓瞎。我吃过所有文件堆一个目录的亏找一张参考图翻了十分钟。这套流程我从搭环境到跑通第一集成片前后花了大概一周其中大半时间在调提示词和一致性。真正跑顺之后一集 20 格的漫剧从写梗概到出成片熟练的话两三个小时能搞定。后续如果想扩展可以往两个方向走一是把语音合成接进来做全自动配音二是把分镜模板做成可复用的预设不同题材换不同模板。我个人在实际操作中的体会是这套东西的价值不在于“全自动”而在于把重复劳动交给机器把创意判断留给自己——哪一格构图不对、哪句台词别扭还是得人来拍板机器只是把出图这个最耗时的环节压缩到了几分钟。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑