
简介这是一套名为“AI漫剧生成大师”的完整前端工程源码包定位为基于AI的一站式短剧/漫剧创作工具面向内容创作者、独立开发者及对AIGC应用实现感兴趣的读者。平台贯通“一句话剧本到成片”的全自动化流程覆盖剧本生成、角色与场景设计、动画制作、配音合成等关键环节显著降低短剧和漫剧的内容生产门槛。压缩包共51个文件大小仅1.44MB以TypeScript/TSX源码为主20个ts、18个tsx另有4个JSON配置、2个YAML工作流描述、Markdown说明文档、HTML入口文件、环境变量示例等目录层级清楚适合直接对照学习。核心代码不仅实现了剧本编排、分镜管理、资源库、导出设置等业务模块还封装了DeepSeek、Gemini、MiniMax、豆包、OpenAI等多家大模型服务的统一调用层能够帮助开发者理解多模型接入、事件驱动配置与前端工程化组织方式。目前已有389人学习下载适合希望快速上手AI漫剧应用开发、参考完整项目架构的读者。1. AI漫剧生成大师为什么打包成 zip 的漫剧流水线值得自己搭一套“AI漫剧生成”这个方向过去看着很玄既要文字转脚本、脚本转画面还得保证几十个镜头的角色长得像同一个人最后配上口播生成成片。市面上确实有筛好参数的成品工具但多半以 zip 包形式分发——解压、装依赖、按 README 跑批处理完事输出一集竖屏漫剧。它的价值不在“自动生成”三个字而在“固定流程可复现”同一套素材跑两次结果不走样这才是内容团队敢批量生产的底气。这篇文章我会把 zip 里应该长什么样拆开讲清楚再给一套能本地跑通的最小方案、必调参数和踩坑记录适合想做批量漫剧内容但没有算法工程师的小团队。2. 拆解 zip 里的漫剧流水线六个模块与一条主链路2.1 主链路先画稳剧本到成片的数据流解压一个成熟的 AI 漫剧生成包本质上拿到的是六个模块的编排剧本生成模块负责把一段文字拆成分镜表角色设定模块固定了每个角色的外观特征词、参考图路径和权重画面生成模块用图生图方式产出关键帧配音模块把台词转成音频并给出时长字幕模块按音频时间码生成 SRT最后的渲染模块用 FFmpeg 把关键帧序列合成为带音轨和字幕的 MP4。我一般会先画数据流再写代码因为漫剧流水线所有坑都藏在“模块之间传什么”上面。剧本模块输出的分镜表至少要有六个字段镜号、场景、角色、动作、台词、预设时长。画面模块拿到这些字段后拼出完整的正面提示词和负面提示词。配音模块不能等画面全部生成完再跑它只需要台词和场景完全可以和画面生成并行。谁先谁后影响的不只是速度还有改稿成本——先出音轨画面生成时就能按真实音频时长反推关键帧数量避免“画面做完了才发现台词念不完”。模块之间传递数据尽量用 JSON 或 CSV 落盘不要用内存对象直接传。原因很朴素每个模块的进程独立重启是常态落盘之后即使中间某个环节崩了也能从断点续跑不用整个流水线从头再来。zip 包里真正值钱的不是某个模型而是这套分模块的结构和已经调好参数的工作流 JSON。2.2 角色一致性模块为什么说这是整个 zip 的核心不具备角色一致性模块的漫剧工作流叫“连环画生成器”具备角色一致性模块的才叫“漫剧生成大师”。这个模块做的事并不神秘为每个角色保存一张或多张参考图在生成每次分镜时把参考图经过特定权重注入到当前画面的潜空间里强制画面主体与参考图保持长相、服装、配色一致。我见到的 zip 包通常会带一个名为 characters 的目录里面每个角色一个子目录放着三件东西正脸参考图、全身参考图、角色描述文本。描述文本写法有讲究不能只写“男主叫李明”要写“李明二十岁上下黑色短发左眉尾有一道细疤穿深灰色连帽卫衣眼神偏冷漠”。这套描述会作为提示词前缀拼到每个分镜的正面提示词里。正面提示词里的角色特征描写是参考图之外的第二道保险。这里特别要提醒一点角色设定模块的参数不是越高越好。参考图注入权重过大会导致画面构图完全被参考图锁死角色就像被抠图贴上去一样和背景脱节权重过小又等于没有参考脸还是会漂。常见做法是权重控制在 0.7 到 0.9 之间并且在第一幕先测十张图确认角色最像时对应的权重值再固定成全局参数。2.3 画面生成与口播配音两个最容易拖慢流程的节点画面生成模块是整条流水线里耗时占比最高的环节。一个 60 秒的漫剧通常有 15 到 25 个分镜每个分镜如果按 512×768 分辨率、30 步采样来算单张在消费级显卡上大约要 8 到 15 秒。也就是说光画面生成这一步一集漫剧就得花掉半小时以上。很多打包好的 zip 里会提示你用低分辨率先生成然后经过后期放大模型做高清修复这样比直接生成高分辨率快得多。配音模块常见的坑则在线下。语音合成引擎输出的音频时长与分镜表预设时长常常不一致尤其遇到长台词和喘息、停顿多的台词。我的处理顺序是先把整集台词合成一条完整音轨拿到真实总时长再把每个分镜的台词按句裁剪出对应音频段最后用这些真实时长去渲染画面关键帧的停留时间。顺序反过来翻车率会很高。这里列出 zip 包里常见的工作流 JSON 配置项方便对照检查自己的工程配置项作用典型取值checkpoint全局底模决定画风漫画风模型character_ref_weight角色参考图注入强度0.7–0.9steps采样步数28–32cfg提示词引导系数6.0–8.0refiner_start高清修复接入位置0.75fps成片帧率25 或 30srt_margin字幕边距40–60px依赖版本也是 zip 分发最常见的翻车来源。不同机器上已安装的依赖版本不一致工作流可能直接报错或者画风悄悄变化。成熟的 zip 会带 requirements.txt 和锁定版本的 gpu 环境说明。我习惯在 config.yaml 里写版本范围并且把“能不能复现结果”当作第一验收标准。3. 自己搭一套最小复现环境、目录结构与第一条短视频3.1 按 zip 的习惯建立目录结构不需要等待别人的 zip 包发布目录结构自己可以先搭。这套结构是所有 AI 漫剧生成方案的基础后期无论换底模、换参考图生成方案目录都不需要大改。mkdir -p ai_manju/{scripts,workflows,characters,prompts,assets,inputs,outputs,logs} mkdir -p ai_manju/characters/role_001 mkdir -p ai_manju/assets/{fonts,music}我在本地复现时就是按这个目录落地的。每个子目录承担固定职责scripts 放编排脚本workflows 放 ComfyUI 的 API 格式工作流 JSONcharacters 下每个角色一个子目录prompts 放分镜表 CSV 和台词文本assets 放字体、背景音乐等不会经常改的素材inputs 和 outputs 分别是原始素材与成片输出logs 用来留流水线运行日志。有一点容易被新手忽略工作流 JSON 和模型文件不要放在同一个 zip 里分发。模型动辄几个 GB而工作流 JSON 只有几 KB分开放的好处是升级工作流时不需要重新下载大模型。一个成熟的包通常只携带“如何找模型、模型放哪个目录”的说明文件这个做法可以省掉大量传输成本。3.2 用分镜表驱动生成第一张画面最小可用方案不写复杂界面用 CSV 分镜表加脚本驱动。分镜表里每一行是一个分镜关键字段包括镜号、场景、角色特征、动作、镜头语言、台词、建议时长。下面是一个最小示例shot_id,scene,character,action,camera,line,duration 001,老街巷口,李明: 黑色短发/左眉疤/灰色卫衣,抬头看天空,中景仰拍,这里变了。,3 002,老街巷口,王叔: 白发/深蓝外套/拄拐杖,缓缓点头,近景平视,是啊变了。,3生成画面时脚本会把每一行拼成一张带镜头语言的正向提示词例如“中景仰拍年轻男子站在老街巷口抬头看天空黑色短发左眉疤痕灰色卫衣电影感光线”。负面提示词则整集统一维护在一份negative.txt里避免每个分镜拼错或遗漏。拼好提示词后通过工作流后端接口逐张提交生成任务。这里的核心技巧是“每张图都必须在同一套工作流配置下生成”尤其是底模、采样器、步数、CFG 这四个参数绝不能每张分镜单独手调。我见过不少人第一张图换了步数、第二张换了 CFG结果成片画风像两位画师混着画的。python scripts/generate_frames.py \ --workflow workflows/manhu_v1.json \ --prompts prompts/shot_table.csv \ --out outputs/frames \ --seed 9527注意--seed 9527这个参数。固定随机种子意味着同样的提示词跑多少次得到的第一张潜空间噪声都相同它是验证参数修改是否有效的前提。如果不固定种子你换了 CFG 数值后生成结果变了根本分辨不出是 CFG 起的作用还是随机噪声起的作用。3.3 关键帧合成短视频FFmpeg 参数详解画面生成完成后下一步是把 PNG 序列按帧率合成 MP4。这个环节用 FFmpeg 就够了不需要剪辑软件介入。ffmpeg -framerate 25 \ -i outputs/frames/shot_%03d.png \ -i assets/music/bgm.mp3 \ -c:v libx264 -pix_fmt yuv420p -crf 20 -preset medium \ -c:a aac -b:a 192k -shortest \ -vf scale1080:1920:force_original_aspect_ratiodecrease,pad1080:1920:(ow-iw)/2:(oh-ih)/2 \ outputs/preview.mp4-framerate决定每秒播放几张画面25 对应每张图停留 0.04 秒。-crf 20控制视频画质数值越小质量越高、文件越大20 是平衡点。-preset medium是编码速度与压缩率的折中如果画面量大可以换faster节省时间。scale与pad组合保证任何分辨率的输入图都被等比缩放并居中放置在 1080×1920 的竖屏画幅里不会拉伸变形。提示如果预览视频画质没问题但音画延迟多半是-shortest选项导致音频被截断错位。先单独合成无声视频再用音频软件对齐试试。这一版流程跑下来约等于一个迷你 zip 包分镜表即剧本脚本即执行者工作流文件即模块配置。后面所有改进都在这个骨架上加肉。4. 五个必调参数让漫剧从“能看”到“能发”4.1 种子与步数可复现性与画质的平衡固定种子是复现结果的“后悔药”。如果不固定种子像人物换衣服、场景光影突变这类问题排查起来非常折磨。我在批量生产时会把seed固定为一个奇数比如 9527然后给每一集设置一个seed_offset相当于在固定基础上加一个偏移量保证全集画质风格一致、但每集画面又不完全雷同。步数方面扩散模型并不是跑得越多越好。步数太少噪声没去干净画面灰蒙蒙超过某个临界点后画质不再提升反而开始变得油滑。漫画风格底的模型建议先固定在 28 步如果使用 30 步肉眼几乎看不出差别但每张图生成时间明显变长。批量生产时我不会用 35 步以上的参数除非画面里出现明显的脏噪点。4.2 CFG 与采样器风格化边界的两个旋钮CFG 是提示词对画面的牵引强度。数值太低画面元素和提示词对不上比如要的“中景仰拍”结果出来一张大头特写数值太高画面过饱和、边缘发硬、阴影脏像开满锐化的老照片。漫画风漫剧我一般压在 6 到 8偏写实的漫剧可以尝试 5.5 到 7。每次调整不超过 0.5这是精细调参的基本节奏。采样器对成片质感的整体影响偏玄学。关键是全局统一同一部漫剧不要走到一半换采样器。哪怕只是换同名不同尾缀的算法版本线条粗细和阴影排线方式都会有细微差别成片里就会出现“某些镜头画风特别锋利”的断层感。4.3 角色参考权重与参考图数量角色参考图权重的调整逻辑前面提过这里给一组更细的经验第一个分镜用手动生成十张候选图每张参考图只换权重、不换提示词对比选出最接近角色设定的值。低于 0.6角色特征基本会被提示词盖过去参考图形同虚设高于 0.95角色姿态完全拷贝参考图无法表现新的动作看起来像换头。当角色在场景中需要多个角度时一张正脸参考图不够。常见做法是每个角色配 3 张参考图正脸、侧面、全身。多张参考图同时参与生成时注意它们的风格要统一否则生成结果会出现“两张脸融合后变得谁也不像”的问题。参考图最好是同一集素材里先单独生成的定妆照而不是从成片里截图给模型当参考避免把背景噪点也学习进去。4.4 视频插帧与镜头节奏参数如果想让关键帧之间有平滑移动可以引入视频插帧模型做两帧之间的中间帧生成。常见配置是让插帧模型从相邻两张关键帧生成 3 到 5 张中间帧然后把帧率提高到 30 甚至 60。这一步会让漫剧产生轻微的运镜感适合同一分镜内需要缓慢推进或横移的场景。这个参数的坑在耗时。插帧模型比图像生成模型更吃显存一张中间帧生成耗时往往是关键帧的 1.5 倍以上且显存溢出也常发生在这。我的取舍是静态对话镜头不做插帧只对明确写了“推近”“横移”的分镜做插帧一般一集 60 秒漫剧里有 5 个运镜镜头就足够。4.5 字幕安全区与字体加载参数漫剧成片是要发出去的发布场景的界面底部进度条和文案按钮会遮住画面下方内容。字幕边距参数这意味着字幕不能贴底排放。我一般设srt_margin在画面总高度的 8%也就是 1920 高度的下边距 150px 左右。另一点是字体文件路径不能带中文和空格有些渲染库对 Unicode 路径支持不好换台机器就静默失败字幕直接消失。5. AI漫剧生成避坑实录解压报错、角色崩坏与镜号断层的 5 个现场5.1 解压报错could not find EOCD不是代码问题是包没传完现象拿到 zip 包解压时提示invalid zip archive: could not find EOCD或者解压到一半突然报文件头损坏。原因传输或复制过程中包被截断EOCD 是 zip 格式尾部的结束标记找不到它通常意味着文件的尾部数据压根没到设备上。解决第一件事不是重试解压而是校验文件大小与发布方标注的字节数是否一致。不一致就直接重新下载一致还报错考虑换一个解压工具老版本的解压器对 zip64 格式的兼容偶尔出问题。5.2 第三幕主角脸突然崩坏一个隐蔽的参考图读取 Bug现象前几集角色一致性都正常某一集中途开始脸型变化、五官移位但工作流参数完全没动。原因我遇到过一次是批量生成脚本在读取角色参考图时文件按名字排序角色子目录里不小心多了一张同前缀的缩略图导致参考图被读错。解决规定脚本只读characters/role_xxx/ref_front.png等固定文件名不读目录下的所有图片每次生成第一帧后立刻抽检传入的参考图路径确认程序实际加载的图片和预期一致。人眼看不出的“参考图加载错了”会让整集画面全部报废。5.3 场景切换时画风漂移底模被悄悄切换现象室内戏和室外戏单独看都正常放到同一集里风格明显不连贯浓淡、线稿密度、配色都变了。原因工作流 JSON 里按场景预置了两套不同的底模或者脚本在切换场景时会加载缓存里残留的另一个底模配置。解决全局统一加载一个底模场景切换只改提示词与参考图不改 checkpoint。在流水线验收时增加一道程序化检查读取每张分镜图生成时日志里记录的底模文件名全部相同才允许进入合成环节。5.4 配音时长与画面错位先出声音还是先出画面现象字幕和口型对得七七八八但一到角色停顿或叹气画面提前切走或者停留过久。原因画面是根据分镜表预设时长渲染的而真实语音时长没人提前量过。解决把“先跑语音合成、再按真实时长渲染画面”定为硬性流程。配音引擎输出的每条音轨都记录实际毫秒数写回分镜表画面渲染脚本只消费写回后的时长字段。这个改动让漫剧的节奏感立刻上一个台阶因为所有停顿都踩在了真实语调上。5.5 长分镜显存溢出大图与批量队列混在一起现象单个分镜输出分辨率不大但跑批处理时中途显存溢出工作流直接停摆。原因画面放大模块在后台占用了与主生成差不多的显存批量任务在前一张还没释放时就加载了下一张。解决开启显存清理与模型卸载策略——放大步骤完成后立刻释放权重不给下一个分镜残留进程。同时控制批处理队列的并发数队列深度设为 1配合显存锁机制避免两张高分辨率图同时驻留显存。这个坑看着是硬件问题其实是流程编排问题。6. 验收与进阶用回归测试守住“大师”的底裤6.1 添加流水线回归测试流水线改参数后最怕旧的功能悄悄坏掉。我现在习惯写一个回归测试脚本每次工作流或脚本改动后固定跑两个分镜逐一检查输出文件是否存在、分辨率是否符合预期、是否触发报错然后记录输出文件哈希值。python scripts/regression_test.py \ --shots 3 \ --expected-width 1080 \ --expected-height 1920 \ --hash-file logs/shots.hash这个脚本不验证生成画面是否好看只验证流水线是否还是“流动”的。画面质量靠人眼每集抽检流程是否顺畅靠回归测试把关。检查一下整个模块从分镜读取到输出落盘才算跑通。6.2 进阶多智能体协作代替人工捡漏后续可以引入多 AI 协作机制。剧本模型负责把长文案切分镜质检模型自动扫描生成的画面检查角色描述词和实际输出图片是否匹配。哪怕只是简单的字符串匹配检查也能提前拦下一批“穿帮”画面。做到这个阶段漫剧的生产节奏从“每集全程盯”变成“批量生成、集中审片”一天产出一集不是空话。这些年下来我最大的教训就是别迷信“高参数好模型”漫剧工程的核心是流程可控。过度调参不如锁定基线参数来得多产。现在的习惯是每次改动只动一个变量其余参数固定在 baseline 配置里。这个习惯帮我从无数个“刚才还好好的”里逃出来也让团队接手时少一段摸索期——希望帮到你。本文还有配套的精品资源点击获取