feat: expand novel IP and production workflows

This commit is contained in:
www
2026-09-18 08:14:05 +02:00
parent b2ae4600b4
commit d9c81a3ac0
235 changed files with 117971 additions and 2721 deletions
@@ -0,0 +1,323 @@
# AI 真人/漫剧视频流水线测试踩坑记录 V1
更新时间:2026-06-12
用途:
- 记录测试阶段已经遇到的问题、原因判断、系统优化点。
- 后续接入 Kling、Seedance、Wan、Vidu、Runway、Veo 等平台时,按同一套准入标准测试,避免重复烧钱。
- 本文件是运营/开发测试手册,不替代 `docs/` 里的系统需求文档。
## 当前阶段定位
当前仍是测试磨合阶段,不追求一次性自动发布。
目标顺序:
1. 跑通自动化流水线。
2. 找到各 Provider 的能力边界。
3. 把失败原因转成系统规则。
4. 形成可恢复、可路由、可统计成本的生产流程。
5. 最后再逐步提高自动化比例。
## 已验证结论
### Hailuo 适合做什么
Hailuo / MiniMax Hailuo 2.3 Fast 当前更适合:
- 都市真人短剧普通镜头。
- 中景、远景、走路、转身、递物、沉默、反应镜头。
- 咖啡厅、街道、办公室、豪车、酒店、家庭等现实场景。
- 旁白 + 字幕 + BGM 推动剧情的短剧。
- 成本敏感的批量生产。
当前实测成本:
- `minimax_hailuo_23_fast`:约 `$0.317 / 10秒`
- `minimax_hailuo_23`:约 `$0.467 / 10秒`
### Hailuo 不适合硬扛什么
Hailuo 对以下镜头可控性不足:
- 凌空翻滚、复杂武打、连续打斗。
- 精准手诀、结印、舞蹈式手部动作。
- 法相天地、千臂法身、巨型神像复杂动作。
- 一镜中塞太多高复杂动作。
- 正脸强台词口型同步。
处理原则:
- 不要在同一失败动作上无脑重跑 Hailuo。
- 如果同类复杂动作 1-2 次失败,优先切换 Provider 或补动作参考/姿势关键帧。
- 修仙、法相、打斗、次元壁穿越等镜头默认标记为高价值/高复杂度,不按普通都市镜头处理。
## 分镜时长经验
### Hailuo 时长设计规则
Hailuo 当前按真实可用规格优先设计:
- 常规可用镜头时长:6 秒 / 10 秒。
- 真人短剧主流程优先按 10 秒长镜头设计。
- 只有非常简单的过渡镜头、环境镜头、无台词动作镜头,才考虑 6 秒。
- 不再设计 7 秒、8 秒这种无法直接匹配 Hailuo 输出规格的镜头。
系统规则:
- 导演分镜上限必须允许 10 秒。
- 如果原分镜明确是 10 秒,prepare 阶段不得自动压缩成 5 秒或 8 秒。
- 负面约束里的“避免嘴部特写”不能导致镜头被误判成 insert 特写。
- “手里的道具”不能被误判成“手部特写”,只有手部/手指/手掌/手腕/手势等明确关键词才算 insert。
### 3 秒碎片问题
法相天地三段式测试暴露问题:
- 镜头切太碎,像图片拼接。
- Hailuo 实际输出常按 6 秒返回,系统再裁成 3/3/4 秒时,动作容易被截断。
- 复杂动作被拆太短,会失去电影感和动作连贯性。
结论:
- 普通反应镜头:3-5 秒可以。
- 都市剧情镜头:5-6 秒更稳。
- 复杂动作/爆点镜头:优先 8-10 秒一镜到底。
- 不能把 6 秒 Provider 输出硬裁成 3 秒作为长期策略。
### 10 秒一镜到底结论
法相天地 10 秒 Hailuo 测试已验证:
- Hailuo API 可以返回 10 秒。
- 10 秒一镜到底比 3 段裁切更连贯。
- 人物、服装、场景稳定性明显提升。
- 但复杂动作本身仍受 Provider 能力限制。
系统规则:
- `action_score >= 8``importance >= 8` 的镜头,优先生成 8-10 秒单镜头。
- 如果 Provider 不支持目标时长,再由系统拆分,不要随意裁切关键动作。
## Prompt Engine 经验
直接把剧情发给视频模型,质量不稳定。
必须通过 Prompt Engine 组装:
- 角色。
- 场景。
- 主动作。
- 镜头大小。
- 运镜。
- 动作时间轴。
- 情绪表演。
- 灯光。
- 特效时机。
- 声音卡点。
- 负面约束。
已落地:
- Motion Director Prompt。
- 10 秒仙侠一镜到底时间轴。
- Hailuo 长镜头 prompt 上限提升。
仍需注意:
- Prompt 只能提高概率,不能保证复杂动作精确执行。
- 复杂动作需要动作参考图、姿势关键帧或更强 Provider。
- 如果同一个 Prompt 多次失败,继续加形容词意义不大。
## 角色一致性经验
当前测试发现:
- 没有固定角色定妆图/锚点图时,人物容易漂移。
- 修仙/奇幻镜头更容易因为特效导致人物脸和服装变化。
- 都市短剧也需要固定林凡、陈雪、王伯这类角色锚点。
系统规则:
- 真人短剧正式验收前必须先做角色锚点图。
- 新剧首轮至少固定主角、女主、关键配角。
- Provider 小样要使用同一角色锚点和同一关键帧,避免测试结果不可比。
## 声音与字幕经验
没有声音、没有字幕、没有 BGM 的视频判定为失败。
已经遇到的问题:
- 屏幕女孩测试:无声音、无字幕,发布感不足。
- 口型镜头:语音先到,嘴型后动。
- 部分合成音量偏低,视觉还可以但情绪不够。
系统规则:
- 每条可发布视频必须包含字幕。
- 每条可发布视频必须包含 BGM 或环境底噪。
- 情绪镜头必须有 SFX:雨声、脚步、门声、心跳、低频冲击、sting 等。
- 合成后必须跑音量检测。
- 音量偏低时重新后期合成,不一定重跑视频。
## 台词与 lip-sync 经验
没有稳定 lip-sync Provider 前,不要把关键台词做成正脸大嘴型特写。
当前策略:
- `lip_sync_required=true` 但没有真实 lip-sync Provider 时:
- 改成旁白。
- 改成字幕。
- 改成中景/侧脸/轻口型。
- 避免正脸嘴部特写。
未来接入 lip-sync Provider 后:
- 只给关键正脸台词使用。
- 不全片 lip-sync,避免成本翻倍。
- lip-sync 放在视频片段生成后、FFmpeg 合成前。
## 成本控制经验
默认策略:
- 每个镜头默认只生成 1 条。
- 不默认生成 2-3 条候选。
- 只有封面级、爆点、最后反转、人工验收阶段才允许候选 2 条。
- 任何候选数增加都必须进入成本预估和审计日志。
当前后台已支持:
- AI 接入列表展示每 10 秒成本。
- Provider `cost_summary`
- 单次成本上限。
- 当日成本上限。
- `price_per_second=0` 不当成免费,而是提示需账单回填。
## Provider 路由经验
推荐基础路由:
```text
普通都市镜头
=> Hailuo
都市高价值镜头
=> Hailuo 优先,必要时 Kling / Vidu / Wan 对比
修仙 / 法相 / 打斗 / 次元壁 / 复杂动作
=> Premium Provider 候选
正脸台词
=> 有 lip-sync Provider 才允许正脸特写,否则中景/旁白/字幕
成本超预算
=> Premium -> Hailuo -> Seedance/Mock
```
不要把“平台选择”写死在业务代码里,必须走 Router。
## Provider 准入测试标准
每接入一个新视频 Provider,都按固定小样测试:
1. 同一项目。
2. 同一角色锚点图。
3. 同一关键帧。
4. 同一镜头文本。
5. 同一目标时长。
6. 同一分辨率/比例。
7. 记录真实成本。
8. 记录失败原因。
9. 记录生成耗时。
10. 记录人工观感评分。
必须记录:
- `provider_code`
- `model_name`
- `clip_id`
- `asset_id`
- `duration`
- `cost_actual`
- `quality_score`
- `human_acceptance`
- `failure_reason`
- `prompt_version`
- `keyframe_asset_id`
## 人工验收标准
当前 mock-qc 分数只能说明流程没坏,不能代表可发布。
真人视频上线前必须人工看:
- 人物是否稳定。
- 动作是否连贯。
- 镜头是否像真实拍摄。
- 字幕是否准确。
- 声音是否完整。
- BGM/SFX 是否有情绪。
- 口型是否明显穿帮。
- 是否有明显 AI 手、脸、身体变形。
- 成本是否在预算内。
## 不要重复踩的坑
- 不要把 mock-qc 通过当成真实质量通过。
- 不要无音频/无字幕就判断视频流程合格。
- 不要用 3 秒碎切测试复杂动作。
- 不要在 Hailuo 上反复烧复杂修仙动作。
- 不要把 `price_per_second=0` 当成免费。
- 不要默认生成 2-3 条候选。
- 不要让正脸台词在没有 lip-sync 时直出。
- 不要只看最终成片,要保留脚本、分镜、prompt、关键帧、音频、视频片段、合成记录。
- 不要默认认为 `mock-video` 就是全链路零成本;如果 TTS Provider 已启用真实平台,Mock 视频合成仍可能调用真实 TTS。零成本压测要显式指定 `mock-voice` 或关闭音频。
- 真实 Hailuo / Kling / Wan 等图生视频前必须先跑 preflight,确认关键帧是 PNG/JPG/WebPMock SVG 只能测流程,不能直接发给真实视频 Provider。
- Hailuo Fast 跑都市真人 10 秒镜头可用,5 条 10 秒顺序生成约 9 分钟,总成本记录 `$1.585`;后续应进入队列并在后台显示耗时。
- 只用单张临时关键帧会改善画面质感,但不能彻底解决同脸一致性;要上架必须补“角色锚点图 / 定妆图 / 同脸参考图”流程。
- 都市短剧 Hailuo 长镜头比 3-6 秒碎切更像真人短剧,但部分镜头仍会像关键帧慢推;Prompt 里要继续强化明确动作、人物走位、视线、反应和镜头结束动作。
- 角色锚点图 V1 对关键帧生成有效:同一角色的脸、服装、气质会比临时起图更稳;但 Hailuo Fast 当前按单首帧图生视频跑,不能直接吃多角色参考图,所以运动中仍可能轻微改脸。
- 锚点重跑应优先挑第 1 镜、第 3 镜、第 5 镜这类“角色出场 / 冲突 / 反转”镜头;默认候选仍为 1 条,避免成本翻倍。
- 真人短剧对白不能一镜一段 TTS 直接读完;只要 `dialogue_text` 里出现 `角色名:台词`,必须拆成多段 TTS,每段记录 `speaker_name` / `character_id` / `voice_id` / `voice_style`
- 角色声线是发布级基础配置:顾辰、林雨薇、周浩、管家这类核心角色必须先在 Character 表绑定声音;否则即使画面像真人,声音也会变成解说感。
- 主持人、旁白也要当作独立声线处理;如果没有角色记录,至少要走固定 narration / host voice,不能复用男主或女主声音。
- 多声线 TTS 只解决“谁在说话”的问题,不解决“嘴型同步”;正脸台词仍要继续走 lip-sync 或中景轻口型策略。
- TTS 声音 ID 不能只看名字想当然:`Chinese (Mandarin)_Gentle_Senior` 在老管家场景听感偏女,不适合作为中老年男管家默认声线;当前老管家默认改为 `Chinese (Mandarin)_Gentleman`,但仍需人工听感确认。
- 核心角色上线前要做“角色声线小样验收”:每个角色先生成 1-2 句固定台词试听,确认性别、年龄、气质,再进入整集成片,避免整集重合成。
- Hailuo 2.3 标准版 1080P 比 Fast 768P 清晰度和雨夜质感略好,但第 5 镜 A/B 证明它不能单独解决“像图片动”的问题;高价值反转镜头更需要三关键帧/动作参考/更强 Provider,而不是只把 Fast 换成标准版。
- Provider A/B 测试必须保护当前成片:生成候选后要恢复 `storyboard_shots.video_clip_asset_id`,避免实验 clip 自动替换正式整集。
- 动作节拍链式生成 V1 对高价值反转镜头有效:第 5 镜用 2 段 Fast 生成,第二段用第一段结尾帧作为首帧,比单首帧慢推更能呈现“递卡 -> 看卡震惊”的动作链。
- action beat 不能默认全片开启:成本、耗时都会增加,适合反转/封面/爆点/高价值动作镜头;普通对话镜头仍用单条生成。
- preflight 必须按 action beat 的真实分段估算成本,否则后台会低估费用;第 5 镜 action beat 从单条 `$0.317` 变为 2 段 `$0.3804`
- action beat 只解决“动作链更连续”,不解决“同一角色像同一个演员”;整集样片必须单独检查人物脸、年龄感、发型、服装是否跨镜稳定。
- 真实视频生成不能只传角色名字;必须把本镜出现角色的 ActorProfile 注入 provider prompt,并在 task input 记录 `actor_lock`,否则后台无法审计“这条视频到底有没有走锁脸策略”。
- prepare 阶段不要把全项目角色描述混进单镜 prompt;单镜只允许注入本镜出现的人物,否则多人项目会增加串脸概率。
- Hailuo 当前配置不是强角色参考模型,`supports_character_reference=false`;它可以做低成本图生视频,但发布级真人短剧要靠“角色锚点图生成首帧 + 强一致性 prompt + 人工抽检”,必要时横测支持角色参考的 Provider。
- 如果整集都换脸,不要继续盲目重跑全片;应先重跑第 1 / 3 / 5 镜这种出场、冲突、反转镜头,对比抽帧确认角色锁定是否有效,再决定是否整集重跑。
- 多角色音频不能把跨平台 voice_id 混用:`coral` 属于 OpenAI TTS,不能直接发给 MiniMaxProvider 层必须做 voice_id 适配或降级到当前 Provider 默认声线。
- MiniMax TTS 返回 JSON 时必须先检查 `base_resp.status_code`;否则账号权限、voice_id、group_id 等真实错误会被误报成 `EMPTY_AUDIO`
- 小说上传走 encrypted JSON/base64 时,实际 HTTP body 会比原文件大约 33%;后端 body limit 必须高于文件限制,否则会先被 `request entity too large` 拦截。
## 下一步建议
短期优先:
1. 继续围绕都市真人短剧做 Hailuo 量产质量优化。
2. 做角色锚点图/定妆图 V1。
3. 做动作参考/姿势关键帧 V1。
4. 用同一固定镜头横测 Kling / Seedance / Wan / Vidu。
5. 建 Provider 准入表:质量、成本、失败率、耗时。
6. 做 BGM/SFX 发布级音量标准。
7. lip-sync 只做关键台词小样,不先全片接入。
长期原则:
- Hailuo 做低成本量产。
- 高价值镜头交给高质 Provider。
- Router 负责自动选模型。
- QA + 人工抽检负责质量闭环。
- 成本、失败、重试、降级全部进入审计。
@@ -0,0 +1,239 @@
# 短剧引擎现状与设计 V1
> 文档状态:当前有效
> 基线日期:2026-07-15
> 适用范围:分集、剧本、动态分镜、视觉资产、视频候选、质量控制与成片合成。
## 1. 当前定位
短剧引擎负责把已确认的故事内容转为可生产镜头,并持续管理人物、场景、表演、声音和后期之间的关系。当前系统同时支持真人/仿真人短剧、原生音频视频和传统“图片 + TTS + 字幕”合成,不应把任何单一模型当成完整导演系统。
## 2. 核心原则
1. 剧情完整度优先于固定镜头数量。
2. 分镜时长由对白、动作、停顿和转场预算共同决定。
3. 角色、服装、场景和关键道具必须引用明确资产版本。
4. 首帧、首尾帧、多图参考和纯文本生成按镜头需要选择。
5. 视频模型负责画面和可用原生声音,稳定文字 UI、字幕和进度条优先由后期完成。
6. 表演、运镜、声音和镜头衔接都属于质量评分,不只检查画面清晰度。
7. 每个付费请求必须保留完整提交参数和实际 Provider。
## 3. 生产对象
| 对象 | 作用 |
| --- | --- |
| `Episode` | 分集目标、顺序、状态和质量信息 |
| `EpisodeScript` | 已确认的单集剧本与版本 |
| `StoryboardShot` | 镜头时长、动作、对白、运镜、声音、Prompt 和衔接 |
| `Character` / `GlobalCharacter` | 项目角色与可复用演员资产 |
| `CharacterState` | 角色在特定时间点的服装、伤势、情绪等状态 |
| `ProjectVisualAsset` | 场景、道具及其主版本 |
| `ShotImage` | 首帧、尾帧、关键帧和候选图 |
| `VideoClip` | 单镜视频候选、实际模型、QC 和选择状态 |
| `Asset` | 图片、视频、音频、字幕和成品的统一素材记录 |
| `RenderTask` | 异步任务、重试、成本和人工介入 |
## 4. 标准流程
```mermaid
flowchart LR
Source[连续原文快照] --> Analysis[原著分析合同]
Analysis --> Bible[改编圣经合同]
Bible --> Episode[分集计划合同]
Episode --> Continuity[三集连续性检查]
Continuity --> Release[人工放行一集]
Release --> Script[单集剧本]
Script --> Shot[动态分镜]
Shot --> AssetPlan[角色/场景/道具资产计划]
AssetPlan --> Prompt[镜头 Prompt]
Prompt --> Frame[关键帧/参考图]
Frame --> Video[视频候选]
Video --> QC[自动 QC]
QC --> Select[重试/回退/人工选择]
Select --> Compose[字幕/声音/BGM/SFX/转场]
Compose --> Render[FFmpeg 成片]
Render --> Review[审核与作品库]
```
`splus_v1` 新项目使用上述结构化写路径。旧项目的 StoryBible、Episode 和历史 Prompt 保持原样,不自动迁移;旧写接口不能向新项目写入。原著分析、改编圣经和分集计划均追加新版本,并保存来源、质量问题和人工确认记录。
## 5. 剧本到分镜
### 5.1 剧本审核
每集应对照来源文本和上下集,检查:
- 核心事实、动机和因果是否保留。
- 是否为压时长而删掉必要台词或反应。
- 对白是否像角色在表演,而不是信息段落拼接。
- 心理旁白、悬疑信息和听觉线索是否服务情绪。
- 本集钩子、高潮和尾点是否成立。
### 5.2 动态时长
时长估算至少包含:
```text
对白朗读时间
+ 动作完成时间
+ 反应/停顿时间
+ 运镜落点时间
+ 前后镜衔接余量
```
模型支持的单次最大时长不是目标时长。台词无法完整说完时,优先延长或按完整戏剧节拍拆镜,禁止靠加速到听不清来硬塞。
### 5.3 分镜字段
单镜至少应明确:
- 当前镜头的戏剧目标。
- 角色站位、视线、入画和离画方向。
- 按时间段划分的动作与表演。
- 逐句台词、说话者、语气和开始时机。
- 景别、机位、镜头运动和最终落点。
- 环境声、对白、系统声、SFX 和 BGM 节奏。
- 与上一镜的接入动作、声音桥或视觉桥。
- 与下一镜的尾帧、视线、运动方向或声音预埋。
- 禁止项和资产版本。
## 6. 资产一致性
### 6.1 角色
- 先确定全局角色和当前项目外观版本。
- 服装、发型、年龄、伤势和持有物由 `CharacterState` 固定。
- 三视图用于角色母版,不代表每个镜头都应直接上传整张三视图。
- 同场多人应明确各自参考图和身份,避免参考关系错配。
### 6.2 场景
- 场景主资产应至少覆盖关键方向、空间结构和标志物。
- 同一连续场景不得仅靠文字重复描述来维持一致性。
- 对联、牌匾、二维码、屏幕等精确文字内容应由后期层处理,模型画面保留合理空间和时长。
### 6.3 道具
- 剧情证据、武器、手机、银铃、文件等关键道具应有主资产或明确外观约束。
- 道具在人物手中时要描述持握手、方向、前后位置和动作路径。
## 7. 图像输入模式
| 模式 | 适用情况 | 主要风险 |
| --- | --- | --- |
| 纯文本 | 无既有资产、探索性镜头 | 角色和空间漂移最大 |
| 单首帧 | 同一空间内连续表演、动作可自由发展 | 尾点不可控 |
| 首尾帧 | 明确起止构图、动作落点或转场接力 | 首尾差异过大时中间形变 |
| 多图参考 | 同时约束人物、场景、道具,或测试模型参考能力 | 参考权重错配、剧情控制有限 |
选择原则:使用能满足镜头目标的最少参考图。首尾帧需要处于同一时空、同一服装、可连续运动,不能拿两个独立海报硬桥接。
## 8. 视频生成
当前支持:
- 单镜和批量生成。
- 单首帧、首尾帧和多图参考。
- 多候选与人工选择。
- Kling 原生音频、Seedance 等真实视频 Provider。
- Provider preflight、成本估算和异步轮询。
请求记录应包含:
- 原始业务 Prompt 和最终提交 Prompt。
- 参考图顺序、资产 ID、用途和临时 URL。
- 请求时长、比例、分辨率、模型和 Provider 参数。
- 是否要求原生音频、实际返回音轨。
- Provider 任务 ID、状态、耗时、成本和失败原因。
特殊对照测试可以按用户要求“原样 Prompt + 指定图片”提交,此时不得自动注入公共润色词;系统应明确标记为 bypass/实验请求,避免污染正式模板结论。
### 8.1 当前统一画幅
- 新生产任务统一使用16:9横屏。
- 1080P视频固定1920×1080,关键帧固定2560×1440,原生4K固定3840×2160。
- 新的 Production Contract、Generation Plan、关键帧 Prompt、视频请求和 FFmpeg 合成都读取同一横屏常量。
- 历史素材与已冻结计划不原地改写;旧镜头重新生成时创建新的16:9计划修订。
### 8.2 Kling 视频角色元素
视频角色元素负责回答“角色是谁、长什么样、使用什么声线”;分镜 Prompt 只负责场景、动作、表演、台词与运镜。
生产步骤:
1. 从已确认角色锚点生成3-8秒身份源视频,默认8秒、1080P、16:9。
2. 人物正面起始,依次左转约30度、回正、右转约30度并回正;背景与灯光保持中性。
3. 在 Kling 元素库人工创建视频角色元素;当前不宣称存在已验证的公开创建 API。
4. 将真实 `element_id`、元素名称、源视频、声线和质检结果导入 `CharacterProviderBinding`
5. 质检分达到90后才能审批为正式主元素。
6. Generation Plan 冻结角色到元素的映射;正式 Omni 请求提交真实 `element_list`
7. 新 S+ 镜头缺少任何出场角色的已审批元素时,在付费调用前阻断。
Prompt 内的 `<<<element_n>>>` 与 API `element_list[n]` 必须一一对应。网页端 `@名称` 只用于手工操作,不能冒充已绑定 API 元素。
## 9. 声音设计
声音层包括:
- 角色对白和心理旁白。
- 机械系统音或非人物提示音。
- 环境声、拟音和冲击音效。
- BGM、高潮音乐和转场声音桥。
- 模型原生音轨、后期 TTS 与补充音频。
系统音必须在 Prompt 中与角色声线分离,说明音色、节奏、响度和播放窗口;仍不稳定时由后期独立音轨替换。字幕仅展示实际说出的台词,不包含角色名、动作说明或生成残留符号。
## 10. 质量控制
自动 QC 至少覆盖:
- 角色身份、脸型、年龄和服装一致性。
- 场景空间、道具和文字占位是否正确。
- 动作是否按方向完成,是否出现穿模或多余人物。
- 台词是否完整、中文是否清楚、声线是否串角色。
- 嘴型、说话时机和字幕窗口是否协调。
- 运镜是否服务表演,有无硬切、漂移或无意义运动。
- 首尾是否能接前后镜。
- 画质、闪烁、畸变、音量和可播放性。
自动评分用于筛选和重试,不直接等于发布通过。关键镜头和最终成片必须允许人工确认。
## 11. 合成与后期
当前 FFmpeg 链路支持:
- 分辨率、帧率、像素格式和音轨归一。
- 硬切、淡入淡出、模糊、声音桥等转场。
- 原生音轨、附加音频、BGM、SFX 和环境音混合。
- ASS/字幕烧录。
- UI 提示框、进度条和稳定中文信息层。
- 无源音轨时的兜底声音。
正式合并流程应输出完整成片,而非只做裸拼接。每次合成需保存镜头顺序、裁剪范围、转场、字幕、UI 和混音参数,以便可重复生成。
## 12. 当前风险
1. 动态分镜、声音和后期策略变化后,部分测试仍使用旧期望。
2. 真人关键帧和真人合并任务并未全部通过 Worker 执行。
3. Scene Composer 和原创音乐默认关闭,项目间配置容易产生理解差异。
4. LipSync 只有抽象,当前真实 Provider 未启用。
5. Provider 临时参考图公网可达性尚未形成统一 preflight。
6. 自动字幕、UI 时间点与台词结束边界仍需更多成片回归样本。
## 13. 不可破坏的规则
1. 不删改用户已确认的总剧本事实,分镜只能做可追踪改编。
2. 不在用户要求原样测试时偷偷注入模板。
3. 不用未确认的角色或服装锚点替换主资产。
4. 不把模型生成的乱码文字当作正式 UI。
5. 不在对白未结束时切镜。
6. 不把多个候选误当成同一镜重复提交。
7. 不在没有参数快照的情况下宣称某模型效果优劣。
## 14. 下一阶段
- 建立剧本/分镜逐镜 98+ 审核量表的机器可读版本。
- 补齐视频合成、字幕和真人任务的 Worker 执行器。
- 为每次视频调用展示实际路由、参考图和回退链。
- 增加完整成片 E2E:镜头生成 -> 选择 -> 字幕/UI -> BGM/SFX -> 合并。
- 将高质量人工评审结果沉淀为可版本化 Prompt 经验,而不是无边界自动追加。