管理Prompt模板、模型配置和系统缓存
共 4 个模板
模板内容:
你是一个专业的影视剧本分析师。请仔细分析以下剧本,提取角色信息。
剧本:
${script}
画风:${style}
---
## 角色提取规则
### 1. 识别范围
- ✅ 提取所有在真实场景中出现的角色(包括主角和配角)
- ✅ 提取有对话或动作描写的角色
- ❌ 不要提取群体角色(如"邻居们"、"路人"、"群众")
- ❌ 不要提取非实体角色(只在屏幕、画面、回忆、对话中提及)
- ❌ 不要提取已故角色(只在文字中提及,没有实际出现)
### 2. 角色描述格式(标签化)
使用逗号分隔的标签化描述,类似Stable Diffusion的prompt格式:
- 性别和年龄段(必填):男性/女性,婴儿/幼儿/儿童/少年/青年/中年/中老年/老年
- 脸型:圆脸/方脸/瓜子脸/长脸/鹅蛋脸
- 眼睛:黑色眼睛/棕色眼睛/蓝色眼睛,大眼睛/小眼睛
- 发型:黑色短发/棕色长发/金色卷发,长度至耳/披肩/及腰
- 服装:具体颜色+款式(如"深蓝色连帽卫衣"、"白色衬衫")
- 配饰:眼镜/帽子/首饰/背包等
- 体型:偏瘦/中等/健壮/丰满
- 神情:疲惫/警觉/焦虑/平静等(可选)
**示例**:
"男性,青年,方脸,黑色眼睛,黑色短发略显凌乱,穿着灰蓝色连帽卫衣和深色工装裤,脚踩登山鞋,体型偏瘦,神情疲惫"
### 3. 年龄段定义
- 婴儿:0-2岁
- 幼儿:3-6岁
- 儿童:7-12岁
- 少年:13-17岁
- 青年:18-35岁
- 中年:36-55岁
- 中老年:56-65岁
- 老年:66岁以上
---
## 输出格式(JSON)
{
"characters": [
{
"name": "角色名",
"role": "主角" | "配角",
"gender": "男" | "女",
"ageGroup": "婴儿" | "幼儿" | "儿童" | "少年" | "青年" | "中年" | "中老年" | "老年",
"description": "标签化描述(逗号分隔)"
}
]
}
请严格按照JSON格式输出,不要添加任何其他内容。变量:
[{"description":"剧本内容","name":"script","type":"string"},{"description":"画风","name":"style","type":"string"}]
模板内容:
你是一个专业的影视剧本分析师。请根据以下剧本和已有角色信息,生成场景和分镜设计。
剧本:
${script}
画风:${style}
已有角色:
${characters}
---
## 场景划分规则
### 1. 场景定义
场景 = 地点 + 时间段
### 2. 场景切换条件
- 地点变化:从出租屋到便利店
- 时间跨越:从第28天到第30天
- 空间转换:从室内到室外
### 3. 场景命名格式
[地点]-[时间]
**示例**:
- 出租屋-暴雨夜
- 便利店-清晨
- 街道-午后
### 4. 视觉元素格式
时间+光线+地点+环境+氛围
**示例**:
"深夜,昏暗灯光,出租屋窗边,暴雨倾盆,积水漫过门槛,墙角霉菌滋生,压抑氛围"
---
## 分镜拆分规则(短视频思维)
### 核心理念
- 🎬 每个分镜都是一个"可截图的瞬间"
- 🎯 强调视觉冲击力,而不是叙事完整性
- ⚡ 节奏快、镜头多、画面丰富
### 拆分原则(创意优先)
1. **视觉冲击力**:每个视觉上有冲击力的瞬间都是独立分镜
- 环境特写(黄水、雨水、废墟)
- 人物特写(表情、眼神、动作)
- 物品特写(手机、食物、工具)
2. **情绪转折点**:每个情绪变化都是独立分镜
- 从平静到紧张
- 从希望到绝望
- 从犹豫到决定
3. **对话轮次**:每个对话轮次都是独立分镜
- A说话 → 独立分镜
- B回应 → 独立分镜
- A再说 → 独立分镜
4. **动作拆分**:连续动作可以拆分为多个分镜
- 环境描写 → 人物出现 → 人物动作 → 细节特写
5. **宁可多拆分**:不要过度合并,保持画面丰富和节奏快
**根据剧本内容自然拆分,不要刻意控制分镜数量。**
---
## 分镜描述规则
### 1. 描述内容
- 画面内容:人物、环境、物品、动作
- 简洁明确,突出重点
- 不要包含镜头语言(不要写"特写"、"全景"、"画外音"等)
- 不要包含情节解释(只描述看到的画面)
### 2. 时长估算
根据内容复杂度动态估算时长(通常4-12秒),**必须返回小数点后1位的数字**:
- 对话分镜:根据台词长度调整(短对话6.5秒,长对话10.8秒)
- 动作分镜:根据动作复杂度调整(简单动作4.5秒,复杂动作8.7秒)
- 环境分镜:通常较短(4.2-6.5秒)
- 情绪转折:给予足够时间展现(6.8-8.5秒)
**重要**:禁止使用整数秒(如6.0、8.0、10.0),必须根据内容精确估算。
---
## 输出格式(JSON)
{
"scenes": [
{
"name": "场景名称(地点-时间)",
"visualElements": "视觉元素描述(时间+光线+地点+环境+氛围)",
"storyboards": [
{
"content": "分镜台词或描述",
"characterNames": ["角色1", "角色2"],
"duration": 7.5
}
]
}
]
}
---
## 重要提示
1. 场景一致性:所有分镜必须在场景的视觉范围内
2. 创意优先:不要过度合并,宁可多拆分
3. 短视频思维:每个分镜都是一个吸引眼球的画面
4. 角色匹配:分镜中的角色名称必须来自"已有角色"列表
请严格按照JSON格式输出,不要添加任何其他内容。变量:
[{"description":"剧本内容","name":"script","type":"string"},{"description":"画风","name":"style","type":"string"},{"description":"已有角色列表","name":"characters","type":"string"}]
模板内容:
你是一个专业的影视剧本分析师。请仔细分析以下剧本,提取角色信息和分镜设计。
剧本:
${script}
画风:${style}
---
## 角色提取规则
### 1. 识别范围
- ✅ 提取所有在真实场景中出现的角色(包括主角和配角)
- ✅ 提取有对话或动作描写的角色
- ❌ 不要提取群体角色(如"邻居们"、"路人"、"群众")
- ❌ 不要提取非实体角色(只在屏幕、画面、回忆、对话中提及)
- ❌ 不要提取已故角色(只在文字中提及,没有实际出现)
### 2. 角色描述格式(标签化)
使用逗号分隔的标签化描述,类似Stable Diffusion的prompt格式:
- 性别和年龄段(必填):男性/女性,婴儿/幼儿/儿童/少年/青年/中年/中老年/老年
- 脸型:圆脸/方脸/瓜子脸/长脸/鹅蛋脸
- 眼睛:黑色眼睛/棕色眼睛/蓝色眼睛,大眼睛/小眼睛
- 发型:黑色短发/棕色长发/金色卷发,长度至耳/披肩/及腰
- 服装:具体颜色+款式(如"深蓝色连帽卫衣"、"白色衬衫")
- 配饰:眼镜/帽子/首饰/背包等
- 体型:偏瘦/中等/健壮/丰满
- 神情:疲惫/警觉/焦虑/平静等(可选)
**示例**:
"男性,青年,方脸,黑色眼睛,黑色短发略显凌乱,穿着灰蓝色连帽卫衣和深色工装裤,脚踩登山鞋,体型偏瘦,神情疲惫"
### 3. 年龄段定义
- 婴儿:0-2岁
- 幼儿:3-6岁
- 儿童:7-12岁
- 少年:13-17岁
- 青年:18-35岁
- 中年:36-55岁
- 中老年:56-65岁
- 老年:66岁以上
---
## 场景划分规则
### 1. 场景定义
场景 = 地点 + 时间段
### 2. 场景切换条件
- 地点变化:从出租屋到便利店
- 时间跨越:从第28天到第30天
- 空间转换:从室内到室外
### 3. 场景命名格式
[地点]-[时间]
**示例**:
- 出租屋-暴雨夜
- 便利店-清晨
- 街道-午后
### 4. 视觉元素格式
时间+光线+地点+环境+氛围
**示例**:
"深夜,昏暗灯光,出租屋窗边,暴雨倾盆,积水漫过门槛,墙角霉菌滋生,压抑氛围"
---
## 分镜拆分规则(短视频思维)
### 核心理念
- 🎬 每个分镜都是一个"可截图的瞬间"
- 🎯 强调视觉冲击力,而不是叙事完整性
- ⚡ 节奏快、镜头多、画面丰富
### 拆分原则(创意优先)
1. **视觉冲击力**:每个视觉上有冲击力的瞬间都是独立分镜
- 环境特写(黄水、雨水、废墟)
- 人物特写(表情、眼神、动作)
- 物品特写(手机、食物、工具)
2. **情绪转折点**:每个情绪变化都是独立分镜
- 从平静到紧张
- 从希望到绝望
- 从犹豫到决定
3. **对话轮次**:每个对话轮次都是独立分镜
- A说话 → 独立分镜
- B回应 → 独立分镜
- A再说 → 独立分镜
4. **动作拆分**:连续动作可以拆分为多个分镜
- 环境描写 → 人物出现 → 人物动作 → 细节特写
5. **宁可多拆分**:不要过度合并,保持画面丰富和节奏快
**重要:必须细致拆分,每个对话、每个动作、每个情绪变化都是独立分镜。通常一个500字剧本应该产生20-30个分镜。**
---
## 分镜描述规则
### 1. 描述内容
- 画面内容:人物、环境、物品、动作
- 简洁明确,突出重点
- 不要包含镜头语言(不要写"特写"、"全景"、"画外音"等)
- 不要包含情节解释(只描述看到的画面)
### 2. 时长估算
根据内容复杂度动态估算时长(通常4-12秒):
- 对话分镜:根据台词长度调整(短对话6秒,长对话10-12秒)
- 动作分镜:根据动作复杂度调整(简单动作4-6秒,复杂动作8-10秒)
- 环境分镜:通常较短(4-6秒)
- 情绪转折:给予足够时间展现(6-8秒)
---
## 输出格式(JSON)
**注意:分镜数量要求**
- 短剧本(300-500字):至少15-20个分镜
- 中等剧本(500-800字):至少20-30个分镜
- 长剧本(800+字):至少30-40个分镜
**输出格式:**
{
"characters": [
{
"name": "角色名",
"role": "主角" | "配角",
"gender": "男" | "女",
"ageGroup": "婴儿" | "幼儿" | "儿童" | "少年" | "青年" | "中年" | "中老年" | "老年",
"description": "标签化描述(逗号分隔)"
}
],
"scenes": [
{
"name": "场景名称(地点-时间)",
"visualElements": "视觉元素描述(时间+光线+地点+环境+氛围)",
"storyboards": [
{
"content": "分镜台词或描述",
"characterNames": ["角色1", "角色2"],
"duration": 8.0
}
]
}
]
}
---
## 重要提示
1. 场景一致性:所有分镜必须在场景的视觉范围内
2. 创意优先:不要过度合并,宁可多拆分
3. 短视频思维:每个分镜都是一个吸引眼球的画面
4. 角色描述:使用标签化格式,适合AI图像生成
请严格按照JSON格式输出,不要添加任何其他内容。模板内容:
为分镜生成详细的提示词。
风格:${style}
角色:
${characters}
分镜:
${storyboards}
返回JSON数组,${count}个分镜:
[
{
"id": "分镜ID",
"subjectPrompt": "主体提示词",
"actionDescription": "动作描述",
"cameraMovement": "运镜方式"
}
]
【主体提示词要求】
描述画面的主体内容:
1. 角色:出现的角色名称和动作
2. 表情:角色的表情和情绪
3. 构图:画面的构图方式(特写、中景、全景等)
简洁明确,突出重点。
【动作描述要求】
描述画面中的动作和运动:
1. 角色动作:角色的具体动作(走、跑、坐、站等)
2. 物体运动:物体的运动方式(飘、落、飞等)
3. 动作细节:动作的细节和节奏
简洁明确,突出重点。
【运镜方式要求】
描述镜头的运动方式:
1. 镜头运动:推、拉、摇、移、跟等
2. 镜头角度:俯视、仰视、平视等
3. 镜头速度:快速、缓慢、匀速等
简洁明确,突出重点。
现在开始生成,严格按照以上要求返回JSON格式的结果。变量:
[{"description":"画风","name":"style","type":"string"},{"description":"角色列表","name":"characters","type":"string"},{"description":"分镜列表","name":"storyboards","type":"string"},{"description":"分镜数量","name":"count","type":"number"}]