摄影知识库调用(Cinematography KB)
一、这个库解决什么
镜头提示词里最关键的不是"写得长",而是关键细节对不对:光圈决定景深与质感、焦距决定空间关系、 光位决定皮肤有没有塑料感、色调决定气质。这些以前靠模型自由发挥,同一个题材能出十种风格。 本技能让 Agent 在落字段前先去库里走一圈,按当前场景取"最适合的那一行",把参数意图翻译成画面语言。
库的总则(必须遵守):视频生成模型不认技术参数(F 值/ISO/快门数值),只认视觉效果描述。 所以:参数进 trace(给监制复核),提示词正文只写画面语言。
二、库的结构
- 位置:
bundles/ai-video/library/cinematography-kb/(19 篇 +_INDEX.md) - 统一九章式:核心概念 → 分类速查 → 分场景实战 → 视频特有规则 → 常见误区 → ⑥ 意图→提示词映射表(核心调用区,中英双语)→ 提示词模板 → 决策树 → 关联知识
- 主题:OPTICS-001 光圈 / 002 焦距视角 / 003 快门运动模糊 / 004 ISO 画质; CINE-001 运镜 / 002 景别;LIGHT-001 光位质感 / 002 时段色温 / 003 夜景人工光; COLOR-001 色调配色 / 002 影调;PHYS-001 流体粒子 / 002 材质纹理; SCENE-001 天气氛围 / 002 人群空间;STYLE-001 风格谱系 / 002 镜头节奏; HUMAN-001 人像全案;NARR-001 情绪→画面配方(配方层/收口层)
三、怎么调用(工具)
| 工具 | 用途 |
|---|---|
cineread.index | 全库索引 + 缺篇体检(缺篇必须显式报出,不许静默) |
cineread.search | 按意图检索(返回可直接落字段的中英写法) |
cineread.aperture | 按场景推荐光圈档(f 值 → 画面语言;依据 OPTICS-001 §三 场景表 / §八 决策树) |
cineread.recipe | 情绪配方(NARR-001):先取整条配方,再按配方回查各专题细节 |
cinewrite.enrich | 把知识条目注入镜头卡字段,必须带溯源 trace |
命令行同口径:node bundles/ai-video/connectors/cine-kb-bridge/cli.mjs <health|index|search|aperture|recipe|enrich>
四、注入纪律(写进提示词的规矩)
- 数量:每镜最多 3 条(外加光圈顾问 1 条),一条只落一个字段(
depth_of_field/lighting/composition/camera_movement/color_palette/props/baseline/makeup)。 - 矛盾闸:时段/天气/风格矛盾的知识一律不许注入——日景不配"逆光日落剪影"、 白天巷口的灯笼不算夜景、传统水乡不配"赛博霓虹"。
- 不重复:卡片已写景别时不叠加别的景别;卡片已写景深时只补光圈顾问的画面语言。
- 可溯源:每次注入都写
cine-kb trace(命中主题/行名/注入文本/建议参数/缺篇), 供监制复核"这句画面语言是从哪条知识来的"。 - 只增不改:知识库是产品资产,升级靠新增版本与条目,禁止就地覆盖或删除。
五、边界
- 只管"镜头语言与质感",不改叙事、不改事实、不决定时长与镜头数量(那是剧本/剪辑环节)。
- 库未覆盖的题材要如实说"库里没有对应条目",不要拿近似条目硬凑。
- 检索不到合适条目时,允许结论是"本镜不需要额外知识注入"——宁可不加,也不要加错。
六、工艺判据(场景 → 取哪一行 → 落哪个字段 → 来源)
| 判据 | 取库方式 | 落到哪个字段 | 判据出处 |
|---|---|---|---|
| 需要景深/质感方向 | cineread.aperture(场景表 / 决策树) | depth_of_field | KB:OPTICS-001 §三/§八 |
| 需要空间关系/压缩感 | 焦距条目(视角与畸变) | composition | KB:OPTICS-002 |
| 需要运动模糊/节奏 | 快门与运动条目 | camera_movement | KB:OPTICS-003 |
| 需要光位与皮肤质感 | 光位条目(方向/质感) | lighting | KB:LIGHT-001 |
| 需要时段色温一致性 | 时段条目 | lighting / color_palette | KB:LIGHT-002 |
| 需要配色与影调 | 色调/影调条目 | color_palette | KB:COLOR-001/002 |
| 需要材质与流体细节 | 物理条目(水/烟/布料/食物) | props / baseline | KB:PHYS-001/002 |
| 需要情绪配方(收口) | cineread.recipe 取整条配方再回查专题 | 多字段(≤3 条 + 光圈 1 条) | KB:NARR-001 |
| 知识未覆盖本场景 | 如实报"库里没有对应条目" | — | KB:本套件 §五 |
七、失败模式(症状 → 检测器 → 处置)
| 症状 | 检测器 | 处置 |
|---|---|---|
| 提示词里出现 F 值/ISO/帧率等参数 | 参数扫描(参数只进 trace) | 改写为画面语言后重出 |
| 注入短语与卡片时段/天气矛盾 | 矛盾闸(时段/天气/风格共现检查) | 丢弃该条注入,回库另取;不允许"先注入再解释" |
| 同一字段被注入多条 / 总数超限 | 数量校验(每镜 ≤3 条 + 光圈 1 条) | 按优先级裁剪并留 trace |
下发了模板占位符([主体]/[元素]) | 退化哨兵(NaN/undefined/[占位符]) | 实例化后重出;无法实例化则不入提示词 |
| 否词被当成正向信号("无光污染的星空") | 否定剥离后再匹配 | 修正信号词并加回归用例 |
| 注入条目无法回源(说不清来自哪条知识) | trace 溯源检查(主题/行名/文本) | 该条注入判失败,补 trace 或撤回 |
| 库缺篇/缺行 | cineread.index 缺篇体检 | 显式报缺口并走提案补库;不得静默跳过 |