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
+661
View File
@@ -0,0 +1,661 @@
目标肯定是把api优化到接入网页版,我最总要的是自动化流水下,人工,效率太低;网页版应该也是掉api的把,按官网的api文档参数传递参数,?
对,你的判断基本正确:
> **网页版本质上也是调用模型服务,但它不等于“公开 API 文档里那几个参数直接调用”。**
更准确地说:
```text
网页版 = 模型 API + 官方产品层优化 + 内部路由 + 隐藏参数/策略 + 后处理
你自己接 API = 公开 API + 你自己实现产品层优化
```
所以你的目标应该是:
> **把自己的 API 流水线做成“接近网页版体验”的产品层,而不是只照文档传 prompt。**
---
# 一、网页版是不是也调 API
大概率是。
但它调的可能是:
1. 官方内部 API
2. 与公开 API 类似但参数更多的接口;
3. 包含系统 prompt、路由、自动优化、重试、候选筛选的服务;
4. 可能还带有前处理、后处理和质量筛选。
所以不能简单理解成:
```text
网页版输入框内容 = API prompt
网页版生成按钮 = 公开 API 调用
```
真实情况更像:
```text
用户输入
官方前端
提示词增强
安全审核
模型路由
参数补全
生成多个候选 / 重试
质量过滤
后处理
展示结果
```
你自己接 API,就需要把中间这些层做出来。
---
# 二、按官网 API 文档传参数够不够?
**能跑通,但不一定能跑出网页版效果。**
官网 API 文档告诉你的是:
```text
接口怎么调用
参数怎么传
返回值怎么解析
错误怎么处理
```
但通常不会完整告诉你:
```text
网页版内部怎么改写 prompt
网页版怎么选模型
网页版怎么设置隐藏参数
网页版怎么做多候选
网页版怎么判断哪条结果最好
网页版怎么做图像预处理
网页版怎么做后期增强
```
就像你调用视频模型 API
```json
{
"prompt": "一个女人在雨夜奔跑",
"duration": 5,
"ratio": "9:16"
}
```
可以生成视频。
但网页版可能内部实际会变成:
```text
realistic cinematic vertical short drama, Chinese woman, rainy night street, wet asphalt reflections, handheld tracking shot, medium close-up, anxious but restrained expression, natural motion, dramatic lighting, no face distortion, no extra fingers, stable camera...
```
还可能自动加:
```text
参考图处理
镜头稳定约束
人物一致性约束
负面词
运动强度
光影风格
候选筛选
失败重试
```
所以文档参数是基础,**产品层优化才决定最终效果**。
---
# 三、你要做的不是“人工网页版”,而是“API 自动网页版”
你的目标很清楚:自动化流水线,人工太低效。
那你应该把网页版背后的逻辑拆成系统模块:
```text
Prompt Builder
Provider Router
Capability Matrix
Context Builder
Asset Preprocessor
Candidate Generator
Quality Evaluator
Retry / Repair
Post-processing
Cost Controller
```
你当前系统已经有不少基础:架构里已经有 `AiRouterService``PromptBuilderService``ProviderConfig``LiveActionModule``MediaModule``FFmpeg``RenderTask``BullMQ Worker`,而且视频侧已经支持 Provider fallback、成本估算、候选片段、人工选择和合成流程。
所以你现在不是从 0 做,而是要继续补齐“官方网页版隐藏的优化层”。
---
# 四、API 要接近网页版,需要做 10 层
## 1. Prompt 增强层
不要让用户原始输入直接进模型。
```text
用户提示词 / 小说章节 / 分镜
Prompt Builder
模型专用 Prompt
```
你现在真人视频已有 `live-action-prompt-engine-v2`,能输出 scene type、camera、lighting、VFX、negative prompt、actor consistency rules 等,这个方向是对的。
但还要继续加强:
```text
豆包专用模板
可灵专用模板
海螺专用模板
Sora 专用模板
图生视频模板
文生视频模板
真人短剧模板
玄幻大场面模板
对话镜头模板
```
---
## 2. Provider 能力矩阵
不同模型能力不一样,不能统一传同一组参数。
要记录:
```text
支持时长
支持比例
支持分辨率
是否支持首帧
是否支持尾帧
是否支持角色参考图
是否支持多参考图
是否允许真人照片
是否支持同步声音
是否支持种子 seed
是否支持运动强度
失败率
平均耗时
平均成本
适合场景
```
你上传的架构文档里也明确把 Provider 能力矩阵列为待优化点,包括时长、分辨率、首帧、尾帧、角色参考图、真人照片、多参考图、同步声音等。
这层必须做。
---
## 3. 参数适配层
你不能写死:
```text
duration=5
resolution=720p
ratio=9:16
```
应该由 Router 根据 Provider 能力自动转。
比如:
```text
豆包支持 5s / 10s
可灵支持 5s / 10s,图生更稳
海螺 Fast 适合低成本对话
Sora 适合高价值镜头
```
同一个分镜,传给不同 Provider 的参数应该不一样。
---
## 4. 角色一致性层
短剧最重要的是角色不换脸。
你现在已经有:
```text
GlobalCharacter
GlobalCharacterAsset
Character
CharacterImage
CharacterDesignVersion
CharacterState
ActorProfile
```
而且设计上区分了“真人脸包”和“项目内定妆锚点图”,这很正确。
下一步要强化:
```text
角色视觉档案
角色锚点图优先级
服装状态变体
受伤状态变体
同一集角色锁定配置
每个镜头引用哪个角色版本
```
不要每个镜头重新描述一个角色。
---
## 5. 参考图预处理层
网页版通常会自动处理图。
你自己 API 要做:
```text
裁剪主体
统一比例
增强清晰度
去水印/去杂乱边缘
人脸区域检测
生成角色锚点图
生成场景首帧
保存参考图版本
```
尤其是图生视频,首帧图质量决定一半结果。
---
## 6. 多候选生成层
不要一个分镜只生成一次。
建议:
```text
普通镜头:1-2 个候选
重要镜头:3-4 个候选
关键爆点镜头:多 Provider 生成
```
你的现有架构已经支持“同一分镜可以用多个视频模型生成多个候选,合成前选择最终片段”,这个要保留并加强。
---
## 7. 自动质量评分层
每个候选视频要打分。
评分维度:
```text
角色是否一致
是否崩脸
动作是否完成
镜头是否稳定
是否符合分镜
画面是否真实
是否多手多脚
是否有明显伪影
是否适合接入下一镜头
是否可用于成片
```
低分自动重试,高分进入候选池。
---
## 8. 失败重试 / Fallback 层
你现在 Router 已经有 fallback
普通路线、高价值路线、成本检查、预算检查、Provider 跳过原因。
继续加强:
```text
Provider 超时但外部 running → 继续轮询
Provider 失败 → 换备用模型
同模型失败 2 次 → 降级 prompt
动作太复杂失败 → 自动拆成两个镜头
时长不支持 → 自动拆段
```
---
## 9. 后处理层
API 原始视频不是成片。
你要做:
```text
统一分辨率
统一帧率
统一色调
裁剪补齐
镜头拼接
字幕
配音
BGM
SFX
响度标准化
封面截图
转码
```
你当前 FFmpeg 已经做了标准化片段、竖屏 720x1280、fps、concat、音频混合、字幕、BGM、SFX、编码 fallback 等,这是非常正确的方向。
---
## 10. Prompt 调试面板
这是你后面提质最关键的后台工具。
每个分镜要能看到:
```text
原始分镜
最终 Prompt
负面词
Provider
Provider 参数
参考图
Router 决策
跳过原因
成本估算
生成结果
评分
失败原因
```
你文档里也提到需要增加“Prompt 调试面板”,展示最终提交给 Provider 的完整参数、参考图、负面词、成本估算,方便测试。
这个必须做,越早做越好。
---
# 五、网页版效果怎么反推到 API?
你可以用一个“反推流程”。
## 第一步:网页版测试
同一个镜头在网页版测:
```text
简单 prompt
详细 prompt
图生视频
不同参考图
不同时长
不同动作复杂度
```
记录:
```text
输入词
生成效果
失败点
角色一致性
动作完成度
画面风格
```
---
## 第二步:总结模板
把好结果拆成模板:
```text
角色描述模板
场景模板
动作模板
镜头模板
光影模板
负面词模板
```
---
## 第三步:写进 Prompt Builder
例如:
```text
xianxia_transformation_template
realistic_dialog_template
identity_reveal_template
emotional_closeup_template
action_chase_template
```
你现有 Prompt Builder 已经有 `dialog``conflict``reveal``identity_reveal``xianxia_transformation``action` 等场景模板,可以继续扩展。
---
## 第四步:API 批量验证
同一分镜跑:
```text
豆包
可灵
海螺
Sora
```
记录真实成本、耗时、成功率、质量评分。
---
## 第五步:更新 Router
最后把经验变成规则:
```text
对话镜头 → 海螺 Fast
情绪特写 → 豆包 Seedance 2.0
动作镜头 → 可灵 / 豆包
玄幻大场面 → 豆包 / Sora
关键爆点 → 高价值路线
普通过渡 → 低成本路线
```
这样你的 API 系统会越来越接近甚至超过手工网页版效率。
---
# 六、官网 API 文档参数要怎么用?
你要分三层用。
## 第一层:硬参数
这些必须严格按文档:
```text
model
prompt
image_url / reference_image
duration
aspect_ratio
resolution
callback_url
seed
watermark
```
---
## 第二层:业务参数
这是你系统自己的参数,不一定传给 Provider,但用于路由和控制:
```text
scene_type
route_tier
importance_score
motion_intensity
emotion_intensity
character_consistency_required
cost_level
retry_policy
candidate_count
```
---
## 第三层:Prompt 组件参数
这些最终会被 Prompt Builder 合成 prompt
```text
character_identity
costume
location
main_action
camera_shot
camera_move
lighting
mood
visual_style
continuity_rules
negative_prompt
```
也就是说,后台不要只保存一个 `prompt_text`
最好保存:
```json
{
"raw_prompt": "",
"prompt_components": {},
"final_prompt": "",
"negative_prompt": "",
"provider_params": {},
"router_decision": {}
}
```
你文档里 Prompt Builder 已经输出 prompt components、negative prompt、director plan、motion director、lip sync policy 等,这个方向继续做。
---
# 七、你的最终方向是对的
你的目标不是:
```text
人工去网页版一个个生成
```
而是:
```text
用 API 复刻网页版背后的自动化产品层
```
最终应该是:
```text
小说章节
自动转剧本
自动分镜
自动角色锁定
自动选 Provider
自动构建 Prompt
自动生成多候选
自动质检
自动选择 / 人工少量审核
自动合成
```
人工只做:
```text
选题
角色锚点确认
关键分镜审核
最终成片确认
```
不是每个镜头都人工调。
---
# 八、你现在最该补的三个功能
按优先级:
## 1. Provider 能力矩阵
这是 API 稳定性的地基。
不做这个,就会大量 Provider 报错、参数不匹配、生成失败。
---
## 2. Prompt 调试面板
没有这个,你不知道为什么某个镜头生成差。
---
## 3. 视频质量评分 / 多候选自动选择
没有这个,你只能人工看大量视频,效率会很低。
---
# 九、最终答案
是的,网页版大概率也是基于模型服务,但它不是简单调用公开 API 参数。
你的目标应该是:
> **用公开 API + 自己的 Prompt Builder + Router + 角色资产 + 多候选 + 质检 + 后处理,做出接近网页版甚至更适合批量生产的自动化系统。**
按官网 API 文档传参数只是第一步。
真正决定效果的是你自己的产品层。
一句话:
> **网页版强在“官方替你做了优化”;
> API 强在“你可以把优化变成自动化流水线”。
> 你要做的,就是把网页版里的人工和隐藏优化,沉淀成自己的后台规则、Prompt 模板、Router 策略和质检系统。**