一次创作,多形态输出。从剧本到漫剧、小说、广播剧、数字人,AI 驱动的全格式智能影音生产线。
AI漫剧工厂是一套面向内容创作者的智能影音生产线。用户输入一个创意(文本/梗概/脚本),系统通过 LLM 剧本创作、AI 图像生成、视频合成、语音克隆、口型同步等技术链路,自动输出漫剧视频、小说、广播剧、数字人口播视频等多种形态的内容。
系统顶层架构升级为「一创作中枢 + 四业务中心 + 六大资源库」。创作中枢负责项目调度、世界观记忆、任务编排和质量审查;四中心负责各形态内容生产;六大资源库提供全平台共享数据。
项目工作台 — 全平台项目总览,快速切换中心
世界观记忆 (Universe Memory) — 角色长期状态、关系变化、道具归属、时间线、伏笔追踪,多集连续性保障
任务调度 — 统一任务队列,优先级管理,Worker 分配
模型调度 — GenerationExecutor 抽象层,ComfyUI/Direct/Remote/Cloud 可替换执行器
质量审查 — ReviewAgent + ContinuityAgent 审核面板
1. 创意/梗概:输入故事创意、世界观梗概、角色简要
2. 读取宇宙状态:从宇宙系统读取角色当前状态、时间线、未解决伏笔、道具归属,生成本集上下文包
3. 剧本生成:LLM 基于上下文包生成结构化剧本(对白/旁白/动作描述/音效)
4. 分镜拆解:LLM 将剧本段落拆解为结构化分镜(镜头类型/景别/运镜/台词/角色定位)
5. 运镜方案:调用运镜知识库,为每个镜头匹配专业镜头语言(推/拉/摇/移/跟/正反打)
6. 资源锁定:角色/场景/道具资产锁定,确认后派生版本而非覆盖
7. 分镜图生成:ComfyUI z-image-turbo 生成高清静帧,人工确认后锁定
8. 480p 分镜视频:ComfyUI LTX-Video 分镜图+运动提示 → 25帧短视频(854×480, 8 steps)
9. 配音/音效:GPT-SoVITS 角色配音 + FFmpeg 音效/BGM
10. 超分到 1080p:统一插帧、超分、调色、降噪、锐化
11. 剪辑合成导出:FFmpeg 拼接+混音+字幕+转场,输出 1080p 成片
12. 写回宇宙:生成本集记忆更新,人工确认后写回宇宙系统
小说中心将漫剧剧本自动转换为小说格式(含环境描写、心理活动、对话润色),支持多卷/多章管理和字数统计。
多轨音频编辑(对白轨/旁白轨/音效轨/BGM轨),GPT-SoVITS 角色配音,FFmpeg 多轨混音。
基于角色形象 + 声音克隆的数字人短视频生成,适用于口播、新闻播报、知识科普等场景。
任意中心的内容可通过 ScriptConversionService 无损转换到其他中心:
转换后自动转换角色/场景/道具引用关系,适配目标格式规范。
六大资源库是四中心共享的"创作素材池",每个资源在不同中心间保持全局唯一标识,支持跨中心复用和一致性约束。
资源库不仅是素材存储,更是创作约束引擎——每个资源携带的属性信息在管线各环节被主动读取并转化为约束条件:
character.name → 分镜对话的角色归属character.gender+age → 语音克隆参数character.appearance → 图像生成 prompt 注入character.clothing → 角色图一致性约束character.personality+backstory → LLM 剧本行为约束character.voice_ref → GPT-SoVITS 声线复用scene.scene_type → 分镜背景类型scene.time_of_day → 图像光照条件scene.weather → 环境氛围参数scene.layout → 构图空间约束scene.image_ref → 关键帧一致性prop.prop_type → 分镜中出现条件prop.appearance → 图像 prompt 约束prop.plot_role → 剧本中功能约束prop.era → 时代一致性约束| 约束层 | 来源 | 作用目标 | 作用说明 |
|---|---|---|---|
| 角色外观 | character.appearance | ImageAgent · 分镜图像 | ComfyUI prompt 中注入角色外貌描述,保证同一角色在多个分镜中外观一致 |
| 角色声音 | character.voice_ref | VoiceAgent · GPT-SoVITS | GPT-SoVITS 加载角色参考音频 [角色名]_ref.wav,后续所有对白使用克隆声线 |
| 角色行为 | character.personality + backstory | LLM · 剧本/对白生成 | Qwen3 在生成对白时注入角色人格/背景,约束言行一致性 |
| 场景背景 | scene.image_ref + layout | ImageAgent · 分镜图像 | 同一场景的多个分镜共享背景描述,保证空间环境一致 |
| 场景氛围 | scene.time_of_day + weather | ImageAgent · 光照参数 | ComfyUI prompt 注入"黄昏/雨天/室内暖光"等氛围描述 |
| 道具出现 | prop.plot_role + PropUsage | ContinuityAgent · 剧情跟踪 | ContinuityAgent 检查道具在剧情中的出现/消失是否符合剧情逻辑 |
| 分镜景别 | shot.shot_type | ImageAgent · 构图 | 全景/中景/近景/特写 → ComfyUI prompt 注入距离和构图描述 |
| 运镜方式 | shot.camera_movement | VideoAgent · 视频生成 | 静态/推/拉/摇/移/跟 → ComfyUI LTX 视频 workflow 注入运动描述 |
| 连续性检查 | ContinuityAgent | 所有资源 | LLM 检查:角色行为一致性 / 时间线连贯性 / 世界观一致性 / 伏笔追踪 / 场景一致性 / 角色关系一致性 |
| GPU 资源门控 | ResourceManager | LLM + ComfyUI | text_stage() / gpu_stage() 上下文管理器,防止 Ollama 与 ComfyUI 同时争用 GPU VRAM |
漫剧中心:创建角色林晓(设定:女/25岁/程序员/蓝白风衣)→ 生成参考图像 → 所有分镜使用该外观约束
小说中心:林晓角色属性(personality/backstory)→ 注入 LLM 小说创作,保证角色性格一致
广播剧中心:林晓声音克隆(voice_ref = 林晓_ref.wav)→ 所有对白用同一声线 → 混音合成
数字人中心:林晓形象 + 声音 → 数字人主播 → 口播脚本 → GPT-SoVITS + SadTalker → 视频导出
整个过程中,角色、场景、道具、剧本资源通过全局 asset_id 串联,任意中心修改资源属性将影响所有关联内容。
当前资源库解决了单集内的角色/场景/道具一致性。世界观记忆在此基础上增加时间维度,保障多集连载的长期连续性:
状态:CharacterMemory / CharacterRelation / TimelineEvent / PropUsage 表已存在,ContinuityAgent 已实现六维检查。完整的生成前→生成后双阶段约束流待集成。
知识库是 AI漫剧工厂的"科学大脑",专为科普漫剧和内容创作中的知识严谨性设计。它通过 LLM 实现从知识提取、结构化、科普化翻译到准确性校验的全链路管理,同时扩展支持导演镜头案例的学习与复用。
| 类型 | 说明 | 来源 |
|---|---|---|
fact | 事实性知识条目 | LLM 提取/手动创建 |
concept | 概念定义与说明 | LLM 提取/联网研究 |
relation | 概念/人物之间的关系 | LLM 提取/手动创建 |
event | 事件记录 | LLM 提取/手动创建 |
timeline | 时间线 | 自动生成/手动创建 |
director_case | 导演镜头案例分析 | DirectorCaseService (视频分析) |
每个镜头经 LLM 分析后输出以下 8 个维度,支持按技术类型检索相似镜头:
| 维度 | 可能取值 | LLM 分析依据 |
|---|---|---|
| 景别 | 特写/近景/中景/全景/远景/大远景 | 画面主体占比 |
| 运镜方式 | 固定/推/拉/摇/移/跟/升降/手持/斯坦尼康 | 镜头运动轨迹 |
| 构图特点 | 三分法/对称/引导线/框架构图/留白 | 画面布局 |
| 光线风格 | 自然光/侧光/背光/顶光/柔光/硬光/伦勃朗光/剪影 | 光照分布 |
| 色彩基调 | 暖调/冷调/高饱和/低饱和/单色/对比色 | 色调分布 |
| 情绪表达 | 紧张/悲伤/欢快/神秘/庄重/浪漫/悬疑 | 画面氛围 |
| 运镜目的 | 自由文本 | LLM 语义理解 |
| 适用场景 | 自由文本 | LLM 语义理解 |
前端入口位于侧边栏"知识库"(图标:Collection),页面功能:
每个项目、剧集、分镜、资源都经过统一状态流转,确保生产过程可追踪、可回滚、可审计。状态机是创作中枢的核心编排依据:
将 ComfyUI 从"核心依赖"降级为"可替换执行器",所有生成任务通过抽象接口调用:
后端 FastAPI 服务分 37 个路由模块,共计 211 端路由。
详细 API 文档请查看 API 文档 页面或直接访问 /docs(Swagger UI)。
| 条件 | 路由结果 |
|---|---|
| 本地 ComfyUI 健康且 queue_load ≤ 0 | → 本地生成(默认) |
| 本地 queue_load > 0(繁忙) | → 检查 NAS ComfyUI |
| NAS ComfyUI 不健康或 GPU 利用率 > 25% | → 继续使用本地(即使繁忙) |
| 本地不健康 | → 自动启动 NAS ComfyUI 接管 |
| 视频生成(LTX) | → 始终本地(需本地专用 workflow) |
| 配音生成 | → 始终 NAS (GPT-SoVITS) |
| 口型同步 | → SadTalker(本地) / MuseTalk(NAS) 可选 |
GET /health — 节点健康 + 已注册服务列表POST /services/start?name=comfyui — 远程启动指定服务POST /services/stop?name=comfyui — 远程停止服务WORKER_NODES 配置发现 NAS,启动时依次调用 /services/startZ: 盘| 变量 | 值 | 说明 |
|---|---|---|
COMFYUI_BASE_URL | http://127.0.0.1:8188 | 本地 ComfyUI 地址 |
GPT_SOVITS_BASE_URL | http://192.168.3.140:9880 | NAS GPT-SoVITS 地址 |
MUSETALK_BASE_URL | http://192.168.3.140:9881 | NAS MuseTalk 地址 |
OLLAMA_BASE_URL | http://127.0.0.1:11434 | Ollama LLM 地址 |
REMOTE_COMFYUI_ENABLED | True | 启用 NAS ComfyUI 作为备份 |
REMOTE_COMFYUI_WORKER_URL | http://192.168.3.140:9100 | Worker API 地址 |
WORKER_NODES | 192.168.3.140:9100|comfyui+gpt-sovits | 启动时自动远程启动服务 |
COMFYUI_LOCAL_QUEUE_BUSY_THRESHOLD | 0 | 本地队列忙阈值(0=立即启用远程备份) |
REMOTE_COMFYUI_MAX_GPU_UTILIZATION | 25 | NAS GPU 利用率 > 25% 时跳过 |
IMAGE_WORKFLOW_MODE | z_image_turbo | ComfyUI 图像工作流模式 (z_image_turbo / stable_sdxl) |
完整路线图 → 查看路线图页面