D136+: 编码锁死+自然语言理解 双层提示词协议
编码层(精简锁死·不可变): ⊢ CHAR-003: 18岁男性·白色长衫·黑色长发半束·175cm挺拔 ⊢ PROP: 竖式悬挂·破旧木质·【天道宗】 场景层(自然语言·AI理解为什么): ⊢ 场景: 宗门收徒日·灵霄宗排队·天道宗无人问津 苏白有系统→不绝望→喊话是宣言不是乞求→叹气是烦躁不是认命 让AI理解人物动机→自己推理→生成有灵魂的画面 动作层(自然语言·AI发挥): → 苏白站在牌匾下,双手叉腰,自信笑容 冰朔: '编码锁死不可变的,自然语言让AI理解为什么——如果全锁死,所有可能性都没有了'
This commit is contained in:
parent
c2e9224e67
commit
fce8bf5ae4
@ -65,83 +65,63 @@ async function main() {
|
||||
function buildPrompt(shot, encoding) {
|
||||
const locks = encoding.continuity_locks;
|
||||
|
||||
// ═══ D136+ HLDP编码提示词引擎 ═══
|
||||
// 冰朔: "编码的结构肯定有更高的权重。AI拿到编码后去组合编码,
|
||||
// 然后照着编码去找你后面给他翻译的汉字。"
|
||||
// ═══ 编码+自然语言 双层协议 ═══
|
||||
// 冰朔: 编码锁死不可变的(人物/道具)→ 只锁关键属性,精简。
|
||||
// 自然语言解释为什么(场景/动机)→ 让AI理解原因→自己推理。
|
||||
// 如果全锁死,AI没有了"灵光一闪"的可能性。
|
||||
//
|
||||
// 原理: HLDP的 ⊢ / · / | / → 这些标记符号天然构成层级结构。
|
||||
// AI模型的注意力机制对结构化输入敏感——
|
||||
// 每个 ⊢ 是一个锚点,每个 · 是一个属性分支。
|
||||
// 编码权重 > 自然语言翻译权重。
|
||||
//
|
||||
// 结构:
|
||||
// ⊢ CHAR · 锁定 ← 最高权重·不可变
|
||||
// ⊢ PROP · 锁定 ← 紧随其后
|
||||
// ⊢ 空间 ← 克制描述
|
||||
// → 动作(自然语言翻译) ← 编码后的汉字辅助
|
||||
// 三层结构:
|
||||
// ⊢ 编码层 (锁死·不可变) ← 精简CHAR/PROP关键属性
|
||||
// ⊢ 场景层 (自然语言·理解) ← AI理解为什么→自己推理
|
||||
// → 动作层 (自然语言·发挥) ← 具体做什么·给AI空间
|
||||
|
||||
let prompt = '';
|
||||
|
||||
// ─── 编码区: CHAR锁定 ───
|
||||
// ─── 编码层: 只锁关键属性 ───
|
||||
if (shot.char_ref && locks?.characters?.[shot.char_ref]) {
|
||||
const charLock = locks.characters[shot.char_ref];
|
||||
prompt += `⊢ CHAR-003 · 苏白 · 锁定: 全镜一致不可变\n`;
|
||||
prompt += ` 外貌: 18岁亚洲男性 | 五官俊秀·剑眉·明亮大眼 | 自信笑容露齿\n`;
|
||||
prompt += ` 服饰: 白色长衫·腰间束带·袖口挽起 | 黑色长发半束半披\n`;
|
||||
prompt += ` 身形: 175cm·挺拔·肩膀开阔\n`;
|
||||
prompt += ` 气质: 开朗·自信·略带痞气·穷但不自卑\n`;
|
||||
prompt += charLock.locked_desc + '\n';
|
||||
prompt += `⊢ CHAR-003 · 苏白 · 编码锁定\n`;
|
||||
prompt += ` 18岁男性·白色长衫·黑色长发半束·175cm挺拔\n`;
|
||||
}
|
||||
|
||||
// ─── 编码区: PROP锁定 ───
|
||||
if (shot.prop_ref && locks?.props?.[shot.prop_ref]) {
|
||||
const propLock = locks.props[shot.prop_ref];
|
||||
prompt += `⊢ PROP · ${shot.prop_ref} · 锁定: 不可变\n`;
|
||||
prompt += ` 方向: ${propLock.orientation} | 材质: ${propLock.material}\n`;
|
||||
prompt += ` 文字: ${propLock.text}\n`;
|
||||
prompt += propLock.locked_desc + '\n';
|
||||
prompt += `⊢ ${shot.prop_ref} · 编码锁定\n`;
|
||||
prompt += ` 竖式悬挂·破旧木质·【天道宗】\n`;
|
||||
}
|
||||
if (shot.prop_ref_2 && locks?.props?.[shot.prop_ref_2]) {
|
||||
const propLock2 = locks.props[shot.prop_ref_2];
|
||||
prompt += `⊢ PROP · ${shot.prop_ref_2} · 锁定: 不可变\n`;
|
||||
prompt += ` 方向: ${propLock2.orientation} | 材质: ${propLock2.material}\n`;
|
||||
prompt += ` 文字: ${propLock2.text}\n`;
|
||||
prompt += propLock2.locked_desc + '\n';
|
||||
prompt += `⊢ ${shot.prop_ref_2} · 编码锁定\n`;
|
||||
prompt += ` 横式立地·破旧木板·招生广告: ${propLock2.text}\n`;
|
||||
}
|
||||
|
||||
// ─── 编码区: 空间 ───
|
||||
// ─── 场景层: 自然语言 → AI理解为什么 ───
|
||||
if (encoding.scene) {
|
||||
prompt += `\n⊢ 场景 · 自然语言理解\n`;
|
||||
prompt += ` ${encoding.scene}\n`;
|
||||
}
|
||||
|
||||
// ─── 空间 ───
|
||||
if (shot.env && locks?.environments?.[shot.env]) {
|
||||
const hasChar = !!(shot.char_ref && locks?.characters?.[shot.char_ref]);
|
||||
if (hasChar) {
|
||||
// 有主体时的克制空间描述
|
||||
prompt += `⊢ 空间 · 锁定: 不可喧宾夺主\n`;
|
||||
prompt += ` 位置: 修仙广场·人群边缘角落\n`;
|
||||
prompt += ` 光线: 白天·金色阳光\n`;
|
||||
prompt += ` 景别: ${shot.framing}\n`;
|
||||
} else {
|
||||
// 纯环境镜使用完整锁定文本
|
||||
prompt += `⊢ 空间 · 锁定: ENV-002百宗会广场\n`;
|
||||
prompt += locks.environments[shot.env].locked_desc + '\n';
|
||||
if (!hasChar) {
|
||||
// 纯环境镜
|
||||
prompt += `\n⊢ 空间\n`;
|
||||
prompt += ` 修仙广场·人群边缘角落·金色阳光·3D动画渲染\n`;
|
||||
}
|
||||
}
|
||||
|
||||
// ─── 翻译区: 动作描述 ───
|
||||
// ─── 动作层: 自然语言 → AI发挥 ───
|
||||
prompt += `\n→ 景别: ${shot.framing}`;
|
||||
if (shot.emotion?.type) prompt += ` | 氛围: ${shot.emotion.type}`;
|
||||
prompt += `\n`;
|
||||
|
||||
if (shot.action) {
|
||||
prompt += `→ ${shot.action}\n`;
|
||||
}
|
||||
|
||||
// 文字标注
|
||||
if (shot.text_elements) {
|
||||
prompt += `→ 画面中可见文字: ${shot.text_elements}\n`;
|
||||
}
|
||||
|
||||
// ─── 风格约束 ───
|
||||
prompt += `⊢ 风格约束:\n`;
|
||||
prompt += ` 3D动画渲染·中国风仙侠·电影级光影·高质感\n`;
|
||||
prompt += ` 景别: ${shot.framing}`;
|
||||
if (shot.emotion?.type) prompt += ` | 氛围: ${shot.emotion.type}`;
|
||||
prompt += `\n`;
|
||||
prompt += ` 禁止: 真人写实·卡通·现代元素·水印·字幕`;
|
||||
prompt += `⊢ 风格: 3D动画渲染·中国风仙侠·电影级光影·高质感\n`;
|
||||
prompt += `⊢ 禁止: 真人写实·卡通·现代元素·水印`;
|
||||
|
||||
return prompt;
|
||||
}
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
"episode": "ep01",
|
||||
"tempo": "slow_build",
|
||||
"emotion_main": "悬",
|
||||
"scene": "修仙界百宗会广场,今天是宗门收徒的日子。灵霄宗门庭若市,队伍排到望不到头。而天道宗——穷得只剩一块破牌匾,无人问津。但苏白有系统,他知道自己早晚是世界第一宗。所以他不绝望,他站在破牌匾下大声吆喝,不是因为绝望,是因为笃定。他的喊话不是乞求,是宣言。围观的人嘲笑他,讽刺完散去,风吹起落叶——但苏白的叹气不是认命,是系统进度条走太慢的烦躁。",
|
||||
"emotion_curve": [
|
||||
{ "pos": "0-5s", "intensity": 3, "type": "悬", "role": "建立" },
|
||||
{ "pos": "5-10s", "intensity": 6, "type": "燃", "role": "登场" },
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user