Skip to content

🧠 提示词工程技术说明文档 (Prompt Engineering Technical Guide)

版本说明 (Version History)

  • V3.0 (2026-03-13): 全面重构 Prompt 架构,引入 Role/CoT/Self-Correction,针对 Seedance 12s 视频生成优化节奏与声画同步。
  • V2.0 (2026-01-01): 引入智能优化自动注入逻辑 (Token 降噪、意象补全)。

一、 核心优化策略 (Core Strategies)

1. 专家角色与系统约束 (Role & System Constraints)

将原先分散的 User 消息重构为强约束的 System 消息,明确区分“规则层”与“任务层”。

  • Role: "你是一位拥有十年经验的电影级分镜设计师... 擅长将抽象文字转化为具象画面指令。"
  • Effect: 提升模型对专业术语(如推拉摇移、光影氛围)的敏感度。

2. 语义加权与前置 (Semantic Weighting)

针对视频模型(Seedance/Sora)的 Primacy Effect (首因效应),优化 Prompt 词序。

  • 策略: 强制将 [Camera Move][Subject Description] 置于 Prompt 最前。
  • 逻辑: Zoom In, Black hole... > ...black hole... Zoom In
  • 细节堆叠: 鼓励使用丰富细节(如 "fluffy white persian cat")而非简单词汇("cat")来隐式增加权重。

3. 三明治节奏策略 (Sandwich Pacing)

打破“短视频碎镜头”魔咒,充分释放 Seedance 12s 长视频能力。

  • 旧模式: 3s + 3s + 3s + 3s (流水账)
  • 新模式 (三明治):
    1. Hook (2-3s): 极速猛推/快剪,瞬间吸睛。
    2. Core (8-12s): 沉浸式长镜头,展示完整过程或细腻情感。
    3. Ending (2-3s): 升华/留白/反转。
  • 实现: 在 Prompt 中明确指示 “必须包含至少一个 8s-12s 的长镜头”

4. 链式思维 (Chain of Thought, CoT)

强制模型在生成具体 JSON 前进行“思考”。

  • 新增字段: design_rationale (设计思路)
  • 指令: "在生成具体分镜前,先用简练文字阐述本视频的叙事策略、情绪曲线和视觉节奏。"
  • 效果: 显著提升了分镜之间的逻辑连贯性,减少了跳跃感。

5. 自查与自修正 (Self-Correction)

利用 LLM 的推理能力,在输出前进行自我审查。

  • 检查清单:
    1. 台词长度: 是否 > 60字?(物理极限)
    2. 运镜冲突: 是否存在“同时推拉”?
    3. 时长匹配: 8s 镜头是否有足够台词或显式留白?
    4. Seedance 适配: 长镜头是否有足够画面细节?

6. 动态提示词注入 (Dynamic Prompt Injection)

根据用户选择的视觉风格 (visual_tone) 和剪辑节奏 (pace),动态注入专业的影视镜头语言知识库。

  • 触发机制: 前端选择 "悬疑"、"治愈"、"赛博朋克" 等风格标签。
  • 注入内容:
    • Suspense (悬疑): "Low-key lighting, Dutch Angle, Slow Zoom"
    • Romance (治愈): "Soft Light, Backlight, Floating Camera"
    • Cyberpunk (赛博): "Neon Lights, High Contrast, Vertical Composition"
  • 价值: 让同一个通用模型在不同垂直领域表现出截然不同的导演风格。

二、 声画同步优化 (Audio-Video Sync)

针对“画面还在播,声音没了”的尴尬中间态,实施了以下逻辑:

视频时长台词策略Prompt 指令
短 (2-4s)精炼短句 (5-15字)"快节奏,金句"
中 (5-7s)标准解说 (20-30字)"正常语速描述"
长 (8-12s)二选一策略A (解说流): "建议 40-60 字以填满时长"
B (意境流): "显式留白,仅音乐渲染"

三、 代码实现参考 (Code Reference)

1. UnifiedLlmService.php

  • getSceneRole: 定义不同场景(选题/分镜)的专家人设。
  • buildPromptStructureByScene: 构建 System/User 消息结构,注入 JSON Schema。
  • getScenePromptText: 包含所有核心 Prompt 逻辑(权重、负向、CoT、Self-Correction)。
  • buildSettingsInstruction: 处理前端参数映射(如 videoLength)。

2. JSON Schema 变更

json
{
  "topic": "...",
  "design_rationale": "本片采用先抑后扬...", // 新增 CoT 字段
  "storyboard": [
    {
      "description": "...",
      "line": "...",
      "duration": 10, // 支持 8-12s
      "cohesion_mode": "cut" // 或 continuous
    }
  ]
}

四、 待办优化 (Future Roadmap)

  • [MUSE-009] Multi-Agent Workflow: 将目前的单体 Prompt 拆解为 Creative Director -> DOP -> Editor 的多智能体流水线。
  • [FEAT-007] Dynamic Prompt Injection: [已完成] 根据用户选择的风格(悬疑/治愈),动态注入专用的镜头语言知识库。
  • [FEAT-006] Few-Shot Learning: 构建高质量的分镜范例库(Input -> Output),让模型进行模仿学习。