这段时间收到不少私信问AI短剧的剧本怎么写。发现一个比较普遍的问题:很多人拿着写小说的方式写AI短剧剧本,结果到了生成环节各种不顺——镜头拆不出来、场景太复杂模型画不了、对话太长节奏拖垮。这篇文章聊聊我目前摸索出的一个适合AI生成的剧本结构,大家一起来看看!
先说一个可能不太符合直觉的观点:
AI短剧的剧本,不是写给观众看的,是写给AI看的。观众看的是最终生成的画面,但剧本是给AI的"施工图纸"。这个认知转变比较重要。传统影视剧本是写给导演、演员、摄影看的,中间有人来理解和转化。但AI短剧的剧本直接喂给模型,中间没有"翻译层"。所以剧本的写法需要适配模型的"理解方式"。
一、传统剧本为什么不适合直接用
先看看传统剧本长什么样:
INT. 咖啡馆 - 日
小明坐在靠窗的位置,手指无意识地敲着桌面。他已经等了四十分钟了。门铃响了,小红推门进来,带着一身外面的寒气。她看到小明,犹豫了一下,还是走了过去。
小明:(压着情绪)你来了。
小红:(把包放在椅子上)路上堵车。
这段写得挺好的,有氛围、有情绪、有潜台词。但问题在于——如果直接拿去喂AI,会遇到几个麻烦:
●"靠窗的位置"是哪个窗?模型不知道咖啡馆长什么样,需要你描述
●"手指无意识地敲着桌面"这个动作模型很难准确生成
●"带着一身外面的寒气"这是文学修辞,模型画不出来
●"犹豫了一下"微表情对目前的AI来说还是个难点
传统剧本里有大量"人的理解能转化但AI直接理解不了"的信息。这些信息不是多余的,只是需要换一种方式来表达。
核心原则:把"文学性描述"翻译成"视觉性描述"。模型不需要"带着寒气",需要" wearing a thick coat, breath visible in cold air, pink cheeks from cold"。二、ScriptFrame的四层结构
我目前的剧本结构分四层,从粗到细:
这个结构的核心思路是逐层细化。L1决定方向,L2拆解节奏,L3落实到画面,L4翻译成模型语言。每一层都是对上一层的具体化,不是推倒重来。
下面逐层讲一下每层怎么写。
三、L1:故事骨架
L1只需要两样东西:
●一句话核心冲突:谁想要什么,什么阻止了他
●三幕结构:建置(15%)→ 对抗(70%)→ 结局(15%)
举个例子:
核心冲突:一个外卖员发现顾客留下的求救纸条,想救人但被卷入危险。
建置(前30秒):外卖员日常送餐,在一份订单里发现纸条
对抗(中间2分钟):返回查看→被发现→逃跑→反击
结局(最后30秒):脱困报警,但回头看那扇窗,灯还亮着
L1的作用是确定整集的节奏配比。3分钟的短剧,建置不超过45秒,否则观众没耐心。对抗段是主体,占2分钟左右。结局要快,30秒内收掉。
L1不是写故事梗概,是写节奏配方。核心冲突定方向,三幕比例定节奏。四、L2:场景序列
L1确定节奏后,L2开始拆场景。每个场景需要写清楚四样东西:
| |
|---|
| 模型需要知道画什么环境,"咖啡馆"和"深夜便利店"的视觉差异很大 |
| |
| |
| 这个场景在叙事上干什么(交代/铺垫/冲突/转折),关系到镜头语言分配 |
一个3分钟的短剧通常4-6个场景。场景太多节奏碎,太少又显得空。
这里有个比较重要的原则:场景尽量简单。
AI生成画面的能力跟场景复杂度成反比。"一个人在空旷的走廊里走"很好生成,"一个人在拥挤的商场里穿过人群"就难得多。所以在写L2的时候,要有意识地选择视觉上简单的场景。
写剧本的时候就要考虑"AI画不画得出来"。这不是限制创意,是在创意和可行性之间找平衡。五、L3:镜头清单
L3是把每个场景拆成具体镜头。这是跟分镜衔接的一层。
每个镜头写三行:
●画面:这个镜头里能看到什么(谁在做什么,什么在画面里)
●镜头语言:景别+运镜+光影(这一步可以接LensKit的知识库)
●时长:这个镜头持续几秒(影响剪辑节奏)
举个例子:
镜头3-2
画面:外卖员低头看手里纸条,表情从疑惑变为紧张
镜头语言:特写 + 缓推 + 侧光
时长:3秒
一个3分钟短剧通常20-30个镜头。平均每个镜头5-8秒,对话镜头可以到10秒,动作镜头3-4秒就够了。
L3的一个比较重要的技巧是控制每个镜头的信息量。一个镜头只表达一个动作或一个情绪,不要塞太多东西。"外卖员看纸条+犹豫+转身离开"这个应该拆成三个镜头,而不是一个。
一个镜头一件事。信息量越少,模型生成质量越高,观众接收越清晰。六、L4:生成指令
L4是把L3的每个镜头翻译成英文提示词。这一层是直接喂给模型的,所以要按模型能理解的方式来写。
一个完整的L4提示词通常包含这些部分:
●角色锚点:贴入角色的外貌描述(接CharLock的锚点表)
●场景描述:环境的视觉描述(不是"咖啡馆",是"small cafe interior, wooden tables, large window with afternoon light, plants on windowsill")
●动作描述:角色在做什么(动词+对象,避免抽象描述)
●镜头语言:景别+运镜+光影(接LensKit)
●风格引导:整体视觉风格方向
这五部分拼在一起,就是一个完整的生成指令。前面几层的工作做得越细,L4的翻译就越顺。
目前L4的翻译我会用大模型辅助——把L3的镜头描述和角色锚点一起喂给模型,让它输出结构化的英文提示词。但不会完全依赖模型,生成后还是需要人工过一遍,把模型可能理解偏的地方修正。
L1到L4是逐层细化的过程。前面的层做好了,后面的层就是在做"翻译"而不是"创作"。七、一个完整的例子
拿前面外卖员的故事,走一遍四层流程:
L1 故事骨架
冲突:外卖员发现求救纸条,想救人但陷入危险
建置30s → 对抗120s → 结局30s
L2 场景序列
场景1:公寓楼道·夜·外卖员·建置(30s)
场景2:顾客门口·夜·外卖员·发现纸条(20s)
场景3:楼道·夜·外卖员+可疑人·冲突追逐(70s)
场景4:街道·夜·外卖员·脱困(25s)
场景5:公寓外景·夜·外卖员·结局留白(15s)
L3 镜头清单(节选场景2)
2-1:外卖员站在门口递外卖袋 | 中景+固定+顶光 | 4s
2-2:手伸进袋子拿餐盒,看到袋底纸条 | 特写+缓推+侧光 | 3s
2-3:纸条特写"救我" | 大特写+固定+低光 | 2s
2-4:外卖员抬头看门,表情变化 | 近景+缓推+侧光 | 3s
L4 生成指令(节选镜头2-3)
Extreme close-up, static shot, low-key lighting, a small handwritten note with text "HELP ME" held by trembling fingers, dim doorway background, shallow depth of field, thriller atmosphere, cinematic color grading, 35mm film look
从L1到L4,信息量逐层增加,但每一层做的事情都很简单——上一层拆出来的每个块,在下一层里细化。不需要创意跳跃,只需要"把抽象变具体"。
好的AI短剧剧本不是"写得好",是"拆得好"。每一层都在把模糊变清晰,直到模型能执行。ScriptFrame还在持续优化。后面想做的事包括:把L1到L3的拆解流程自动化(大模型辅助),以及建立一个"场景视觉模板库"(常见场景的英文描述模板,减少L4的手动翻译量)。
有建议或者想交流的,评论区见。
感谢阅读
AI短剧实战笔记 · 持续分享实操经验
觉得有帮助的话,随手点个赞、在看、转发 👇