ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

零真人演员?AI短剧从剧本到成片的全流程制作指南

零真人演员?AI短剧从剧本到成片的全流程制作指南 最近刷视频时发现一个很有意思的趋势海外平台上出现了大量完全由 AI 生成画面的短剧出镜角色一个真人都没有剧情套路却非常“上头”——逆袭打脸、系统绑定、重生复仇、契约夫妻。评论区里外国网友追更热情极高有的作品单集播放量甚至超过了不少真人短剧。作为技术人我第一次看到这类作品时第一反应不是刷剧情而是拆解它的制作链路。这类“零真人演员”的爽剧本质上是一条完整的 AIGC 生产流水线剧本由大语言模型生成画面由图像模型生成动态效果由视频生成模型完成配音和配乐则由语音合成与 AI 音乐工具负责。整个过程不需要摄影棚、不需要演员、不需要剧组一个人用一台电脑就能跑通。这篇文章会围绕“AI 生成短剧”这个主题系统拆解从剧本到成片的全流程包括工具选型、环境准备、完整实战案例、常见问题和工程化建议。无论你是想了解 AIGC 短视频怎么做还是想尝试搭建自己的 AI 内容生产流水线这篇文章都可以作为一份入门指南来看。1. 背景与核心概念什么是“没有真人的爽剧”1.1 现象背后AIGC 内容进入“剧集化”阶段过去一两年里AI 生成内容经历了几个明显的阶段最早是 AI 生成图片大家热衷于生成头像和壁纸后来是 AI 生成短视频几秒钟的动态画面已经能带来很强的视觉冲击而现在AI 生成内容正在进入“剧集化”阶段即把单张图片、单段视频串联成一个有完整故事线的连续短片。所谓“一个真人都没有的爽剧”指的就是这种完全由 AI 生成角色的短剧。它可以是 1 分钟左右的竖屏短剧也可以是 10 分钟左右的横屏连续剧。剧中角色、场景、动作、表情、服装、光影全部由模型生成没有任何真实演员出镜。剧本则通常是典型的“爽剧”结构主角开局受辱随后获得系统或金手指一路逆袭最后打脸反派。这类内容之所以能在海外平台快速传播有几个核心原因。首先是视觉新鲜感AI 生成的画面风格介于真实与动画之间早期带有一种“梦境感”观众会出于猎奇心理点进来。其次是产量极高传统剧组拍一集短剧需要数周AI 工作流可以把时间压缩到几天甚至几小时。最后是题材标准化爽剧的剧情结构高度套路化非常适合用大模型批量生成剧本。1.2 技术栈拆解一条 AIGC 生产流水线站在技术角度看一部 AI 短剧的生产流程可以拆成五个核心环节环节解决的问题典型工具类型输出物剧本生成写出分镜剧本、台词、旁白大语言模型分镜脚本画面生成生成角色、场景、关键帧文生图/图生图模型图片素材动态生成让静态画面动起来文生视频/图生视频模型视频片段语音生成生成角色配音、旁白TTS 语音合成音频文件合成剪辑合并音视频、添加字幕和特效剪辑工具/脚本成片这套流程和传统影视制作最大的区别在于所有素材都是“生成”出来的而不是“拍摄”出来的。这意味着创作者不需要摄影设备不需要灯光师和化妆师但需要更强的提示词工程能力、更严谨的素材管理习惯以及对生成模型参数的理解。1.3 为什么值得技术人关注很多开发者觉得 AI 生成短剧只是“玩票”但从工程角度看它是一套非常典型的生成式 AI 应用案例。你需要在流程中处理多个模型的组合调度需要管理大量的中间产物需要处理素材一致性问题还需要设计一套稳定的生产管线。这些能力和企业级 AIGC 应用的底层逻辑是相通的。另外这套流程的迭代速度非常快几乎每隔几个月就会有一批新模型和新工具出现。了解当前主流的工作流和工具边界能帮助你在工具更新时快速迁移而不是每次都从零摸索。2. 环境准备与工具链选型2.1 硬件与运行环境AI 短剧制作对硬件的要求取决于你选择的技术路线。如果你的机器有 8GB 以上显存的 NVIDIA 显卡可以在本地跑 Stable Diffusion 系列的图像生成模型配合图片生成视频的工具链。如果显存不够或者不想折腾本地部署也可以走云端 API 路线。下面是一个常见的开发环境示例版本需要根据你的项目实际情况调整项目建议配置操作系统Windows 10/11、Ubuntu 20.04GPUNVIDIA RTX 3060 及以上显存 8GB 起CPU多核处理器即可项目初期不是瓶颈内存16GB 以上编程语言Python 3.9用于写自动化脚本视频处理FFmpeg用于素材合并和转码模型运行PyTorch、ComfyUI 或各家官方 API如果你的机器配置不高不用急着升级硬件。图像生成和视频生成都有一批成熟的云端服务按量付费适合验证流程。本文后面的内容会把“本地部署”和“云端服务”两条路线都提到你在实际项目中按需选择即可。2.2 工具链选型参考工具选型是 AI 短剧项目中最关键的一步。选错工具链会导致后续步骤的素材格式不兼容、风格不统一。下面给出一套笔者认为比较务实的组合方案供参考生产环节推荐方向说明剧本与分镜ChatGPT、Claude、通义千问等大模型用对话方式生成剧本、分镜、台词角色设计Stable Diffusion LoRA适合需要保持角色一致性的项目图像生成Midjourney、Stable Diffusion、文心一格风格化能力强视频生成可灵、即梦、Runway、Pika、Sora图生视频或文生视频配音合成微软 Azure TTS、GPT-SoVITS、剪映配音支持多语言适合出海内容音乐生成Suno、Udio生成背景音乐剪辑合成剪映、Premiere、FFmpeg最终成片制作这里要注意工具版本和可用性变化很快实际使用时以官方文档为准。不要在生产级项目中依赖某个不稳定的第三方封装建议优先使用官方 API 或官方客户端。2.3 项目目录结构规划AI 短剧项目会产生大量素材文件如果没有统一的目录规划后面剪辑时会非常痛苦。下面是一个推荐的项目结构ai_drama/ ├── scripts/ # 保存生成的剧本、分镜 JSON ├── assets/ │ ├── characters/ # 角色参考图 │ ├── scenes/ # 场景图 │ ├── images/ # 生成的关键帧 │ ├── videos/ # 生成的视频片段 │ ├── audio/ # 配音和音效 │ └── music/ # 背景音乐 ├── output/ # 最终输出 ├── prompts/ # 保存各类提示词模板 └── tools/ # 自动化脚本在动手生成素材之前先把目录建好能避免后期出现素材乱放、找不到文件的情况。3. 核心环节拆解从剧本到画面到声音3.1 剧本生成用结构化指令约束大模型AI 短剧的剧本不同于传统的文学剧本它需要为后续的“画面生成”服务。每个镜头应该包含场景描述、角色信息、角色动作、运镜方式、台词和旁白。这样在写图像生成提示词时才能直接复用分镜字段。下面是一个简单的分镜 JSON 结构示例项目实践中可以把这个结构扩展成你自己的模板{ episode: 1, scene: courtyard, shots: [ { shot_id: 1, scene_desc: 古代庭院主角被一群人围住, character: main_01, action: 低头站立眼神愤怒, camera: 中景从下往上拍, line: 你们不要再逼我了, voice: 愤怒, duration: 3 } ] }在向大模型提问时建议把这个结构直接贴进 Prompt并要求模型按此格式输出。这样可以减少后续解析的麻烦。比如请以 JSON 数组格式生成一集 60 秒的 AI 短剧分镜脚本。 风格古装逆袭爽剧。 每段分镜需要包含场景描述、角色、动作、镜头、台词、情绪、时长。 请保证镜头之间具有连续性和因果关系。大模型生成的剧本不一定完全符合预期需要人工审核角色是否带情绪、台词是否口语化、转折是否突兀。这个环节不要图快剧本的质量直接决定后续素材的可用率。3.2 画面生成保持角色一致性是关键AI 短剧“翻车”最常见的问题是角色不一致同一个角色在这一帧长这样下一帧就变成另一个人。这几乎是所有 AI 短剧项目都必须面对的技术难点。解决思路主要有三种。第一种是使用固定的“角色参考图”通过图生图方式让模型在一个锚点人物形象上做变化比如生成多张同一角色的不同姿态。第二种是训练角色 LoRA 模型用一组角色图片微调出一个专门的模型之后生成画面时带上这个 LoRA 权重。第三种是在提示词中固定角色外貌描述词把“棕色短发、红色外套、左眼角有痣、二十岁女性”等关键特征写得非常具体。从工程角度讲训练 LoRA 的效果最稳定但成本也最高。项目初期建议用参考图结合固定描述词的方式先把流程跑通再逐步优化一致性。下面是一个 Stable Diffusion 风格的提示词示例正面提示词 best quality, masterpiece, 1girl, twenty years old, short brown hair, red jacket, white sneakers, standing in ancient courtyard, angry expression, looking at camera, cinematic lighting, 8k, sharp focus 负面提示词 extra fingers, bad hands, deformed face, blurry, low quality, watermark, text, logo, multiple people需要注意不同模型的提示词语法有差异这个示例用于说明“固定角色特征”的思路实际使用时请参考你所用模型官方文档。3.3 视频生成让图片动起来拿到关键帧图片之后下一步就是把静态图片变成短视频片段。目前主流方案有两类。一类是“图生视频”方案把上面生成的图片作为起始帧配合提示词描述动态效果比如“人物转过身来衣角飘动背景光线变化”。这类方案适合短片段一般单次生成 3 到 10 秒。另一类是“文生视频”方案直接用文字描述生成短视频但角色一致性控制相对更难。在生成视频片段时建议每段只描述一个动作。不要把“转身、说话、拔剑、镜头推进”都塞到一个提示词里否则模型很容易产生不自然的动作。正确的做法是拆成多个镜头后期在剪辑工具里拼接。3.4 配音与音乐声音也是角色AI 短剧的配音通常包含两部分一是角色台词二是旁白。对于出海内容还需要考虑多语言配音。TTS 语音合成的质量这几年提升非常明显很多平台的克隆音色功能已经能做到“输入几十秒原始音频即可生成相似音色”的程度。如果你只想用一个音色官方自带的预置音色就够用。如果你需要角色个人特色可以准备一段干净的人声素材通过声音克隆生成角色专属音色。背景音乐推荐用 AI 音乐工具生成。输出时注意选择“纯音乐”版本避免人声和台词冲突。音效方面如果没有专门素材库可以录制或下载一些公共音效注意使用前确认授权。4. 完整实战案例制作一部 60 秒 AI 短剧为了把上面的概念串起来下面用一个“1 分钟古装逆袭短剧”作为示例演示从零到成片的完整流程。案例中用到的 API Key、具体模型、参数请根据你实际使用的平台调整本文重点是讲解思路。4.1 创建项目结构并准备环境首先创建一个名为ai_drama_demo的项目目录mkdir -p ai_drama_demo/{scripts,assets/{characters,scenes,images,videos,audio,music},output,prompts,tools}如果你在 Windows 上可以用等价的手动建文件夹方式。接着确认 Python 环境python --version pip install openai requests这里安装openai库是为了调用大模型 API 生成剧本和分镜requests库用于调用其他 HTTP 服务。具体的服务地址和密钥需要在代码中通过环境变量注入不要硬编码进源码。4.2 用 Python 脚本调用大模型生成分镜下面是一个调用大模型接口生成分镜剧本的脚本示例。脚本会读取一个系统提示词然后让模型返回 JSON 格式的分镜数组。import os import json from openai import OpenAI client OpenAI( api_keyos.getenv(LLM_API_KEY), base_urlos.getenv(LLM_BASE_URL, https://api.openai.com/v1), ) system_prompt 你是一名AI短剧编剧。你的任务是输出一集60秒短剧的分镜脚本。 输出格式必须是JSON数组每个元素包含以下字段 scene_desc, character, action, camera, line, voice, duration 要求剧情紧凑符合逆袭爽剧调性镜头之间逻辑连贯。 user_prompt 请生成一集古装逆袭短剧的分镜时长60秒。 主角在第三幕中完成第一次反击。 def generate_storyboard(): response client.chat.completions.create( modelos.getenv(LLM_MODEL, gpt-4o-mini), messages[ {role: system, content: system_prompt}, {role: user, content: user_prompt}, ], temperature0.7, ) content response.choices[0].message.content.strip() # 部分模型会返回 json 代码块这里做清理 if content.startswith(): content content.split(\n, 1)[1] content content.rsplit(, 1)[0] return json.loads(content) if __name__ __main__: storyboard generate_storyboard() with open(scripts/storyboard.json, w, encodingutf-8) as f: json.dump(storyboard, f, ensure_asciiFalse, indent2) print(f生成分镜镜头数{len(storyboard)})这个脚本的关键点是用环境变量管理 API Key避免泄露密钥。用严格的 JSON 结构约束模型输出方便后续程序化处理。对模型返回内容做了代码块清理提高兼容性。运行脚本export LLM_API_KEY你的密钥 export LLM_BASE_URLhttps://api.openai.com/v1 python tools/generate_storyboard.py如果模型正常返回你会在scripts/storyboard.json里看到结构化的分镜数据。4.3 根据分镜批量生成图片提示词接下来把分镜 JSON 转换成图像生成提示词。这里写一个简单脚本读取分镜中的scene_desc、character、action、camera字段拼成固定风格的提示词。import json import os with open(scripts/storyboard.json, r, encodingutf-8) as f: storyboard json.load(f) output_dir assets/images os.makedirs(output_dir, exist_okTrue) base_style best quality, cinematic lighting, ancient Chinese style, 8k negative_prompt ( extra fingers, bad hands, deformed face, blurry, low quality, watermark, text, logo, multiple people ) for idx, shot in enumerate(storyboard): positive ( f{shot[scene_desc]}, {shot[character]}, f{shot[action]}, camera {shot[camera]}, {base_style} ) prompt_file os.path.join(output_dir, fshot_{idx:03d}_prompt.txt) with open(prompt_file, w, encodingutf-8) as f: f.write(fpositive: {positive}\n) f.write(fnegative: {negative_prompt}\n) print(f第 {idx 1} 个镜头的提示词已生成{prompt_file})这个脚本本身不生成图片而是把提示词写到文本文件里。这样做的好处是你可以批量审阅提示词、单独调整某个镜头的描述确定无误后再把这些提示词粘贴到图像生成工具或脚本中避免反复调用付费接口。4.4 生成视频片段与配音图像生成后把保存下来的关键帧图片上传到支持“图生视频”的平台逐段生成 3 到 5 秒的动态视频。每个镜头生成时建议图片尺寸统一这样后续拼接不会出现画幅不一致的问题。配音环节可以按镜头逐句生成。脚本思路是读取分镜中的line和voice字段逐条调用 TTS 接口。由于各家 TTS API 差异较大这里只给出伪代码import requests def tts_request(text, voice, output_path): # 这里按你使用的TTS平台接口填写请求参数 # 示例请求 # resp requests.post(TTS_URL, json{...}) # with open(output_path, wb) as f: # f.write(resp.content) pass for idx, shot in enumerate(storyboard): tts_request(shot[line], shot[voice], fassets/audio/shot_{idx:03d}.mp3)生成后逐条试听检查发音、语速和情绪。配音这一步最好在视频剪辑前完成因为后续需要根据配音时长微调画面节奏。4.5 用 FFmpeg 自动合并素材所有镜头片段和配音文件准备好后可以用 FFmpeg 做自动化合成。下面是一个简单的拼接脚本假设每个镜头的视频文件和音频文件命名对齐#!/bin/bash # 进入视频素材目录 cd assets/videos # 为每个片段添加配音 for f in *.mp4; do name${f%.*} if [ -f ../audio/${name}.mp3 ]; then ffmpeg -y -i $f -i ../audio/${name}.mp3 \ -c:v libx264 -preset veryfast \ -c:a aac -b:a 192k \ -shortest ../output/${name}_ready.mp4 fi done # 生成文件列表并拼接 cd ../output for f in *_ready.mp4; do echo file $f concat.txt; done ffmpeg -y -f concat -safe 0 -i concat.txt -c copy final_output.mp4这段脚本做了两件事为每个无声视频片段配上对应音频。把所有片段按顺序拼接成完整视频。如果需要加字幕可以用 FFmpeg 的subtitles滤镜或者在剪映类工具中导入字幕文件。生成最终成片后检查一遍画面连贯性再决定是否继续调整。5. 常见问题与排查思路AI 短剧制作过程中故障点非常密集。下面把高频问题整理成一张排查表问题现象常见原因解决思路角色每张图都长得不一样提示词中角色描述不固定缺少参考图固定外貌描述使用参考图后期训练 LoRA画面出现多手指、五官扭曲模型对肢体结构理解不足加入负面提示词使用人体姿态控制工具视频片段之间动作不连续分镜拆分太粗动作衔接没有设计细化分镜增加衔接动作描述视频生成速度极慢本地 GPU 显存不足或推理参数过高降低分辨率缩短单段时长改用云端 API配音语气太平不像角色TTS 音色或情感参数设置不对改用带情感控制的 TTS 模型或克隆角色音色成片有严重闪屏或跳变相邻镜头的光影风格不一致图像生成时固定光线描述后期用调色统一API 返回 400 错误提示词超长或格式不符合接口要求精简提示词按官方文档检查参数结构拼接后音画不同步视频片段时长和音频时长不匹配用-shortest参数对齐或手动微调音频起点另外有一个很常见的坑网上下载的现成“一键生成视频”软件往往对底层模型封装过死导致你无法调整关键参数。建议优先选择官方 API 或开源项目这样遇到问题时至少有日志可查、有配置可改。排查问题时遵循以下顺序先看报错信息。不要急着改参数先判断是网络问题、权限问题还是模型本身拒绝生成。再检查输入。Prompt 是否包含冲突描述图片是否清晰音频是否有爆音最后检查输出。用最低参数配置跑通一遍流程确认管线没问题后再追求画质。保存每一次可用的配置和 Prompt。项目会不断迭代好的配方需要沉淀。6. 最佳实践与工程建议6.1 提示词工程要形成“模板资产”项目做久了你会发现真正值钱的不是某一次生成的神图而是你沉淀下来的提示词模板和参数配方。建议把每个镜头的提示词按“风格基线 角色描述 动作描述 镜头描述 负面提示词”的结构做成模板方便批量复用和微调。另外建议维护一份“角色设定文档”记录每个角色的核心外貌描述词、参考图路径、声音采样音频路径。这样即使项目隔几个月重新启动也能快速恢复一致性。6.2 素材管理要讲究可追溯性AI 短剧的素材数量很大多轮迭代后很容易出现“不知道哪一版是最终素材”的情况。这里推荐几个做法文件命名带序号和版本号例如shot_001_v2.png。保存每一次生成所用的 Prompt 和参数可以存成 JSON 文件。素材目录和产出视频目录分开中间产物不要污染最终输出。定期清理失败素材只保留可复用的候选结果。6.3 安全合规与版权问题要提前考虑AI 生成内容涉及版权、平台审核和素材授权问题这一点在发布前必须重视。具体来说不使用未经授权的真人肖像进行声音克隆或形象生成。不使用带有明显商标、品牌标识的元素作为生成内容主体。遵守各平台对 AI 生成内容的标注要求部分平台会要求内容创作者声明“AI 生成”属性。训练 LoRA 或克隆音色时确保训练素材来自可合法使用的来源。涉及平台 API 调用时遵循平台使用条款不要绕过限制或进行超出授权的调用。这里的核心原则是技术可以很前沿但使用边界要清晰。生产环境下的内容发布最好在正式发布前咨询平台方或进行合规审查。6.4 用“最小闭环”策略控制项目风险很多新手在第一次做 AI 短剧时会追求一步到位比如想直接做一集 5 分钟的完整动画。这个目标很容易让人陷入“素材生成一个月最后剪不成片”的困境。更稳妥的做法是先做“最小闭环”用 30 秒、3 个镜头、1 个角色、1 段配音跑通全部流程。等你对每个环节的工具和参数都熟悉之后再逐步增加角色数量、镜头数量和时长。这样既不会浪费太多 API 费用也能更快积累实战经验。6.5 关注流程自动化与批量化如果只是偶尔做几段视频手动操作没问题。但如果你要持续产出内容建议尽早建立自动化脚本用配置文件描述每一集成片比如剧本 JSON 是唯一的输入。脚本从 JSON 中读取分镜信息。依次调用图像生成、视频生成、TTS 服务的 API。最后自动拼接导出。这套思路本质上和 Web 后端的流水线设计很像输入标准化、中间产物可追踪、失败任务可重试。学会了这套流程未来切换到其他 AIGC 场景也能快速迁移。7. 总结与下一步学习路线回到开头的问题为什么“一个真人都没有的爽剧”能让老外疯狂上头从内容层面看是爽剧的叙事模式天然具备高传播性从技术层面看是 AIGC 工具链已经成熟到可以支撑“单人剧组”完成一部短剧的全部制作。这篇文章里我们完成了以下内容拆解了 AI 短剧的五个核心生产环节剧本、画面、动态、声音、剪辑。介绍了从硬件准备到工具选型的环境要求。给出了一个完整的 60 秒短剧制作案例包括剧本脚本、提示词批量生成脚本和 FFmpeg 自动拼接脚本。整理了高频问题和排查思路。总结了提示词模板资产、素材管理、合规边界和自动化流水线方面的最佳实践。下一步如果你想继续深入可以从几个方向入手熟悉 Stable Diffusion 图像生成重点是 LoRA 训练和 ControlNet 姿态控制这能显著提升角色一致性。学习 ComfyUI 的节点式工作流把图像生成和视频生成串联起来形成可视化管线。研究视频生成模型的最新进展尝试把镜头控制做得更精细。如果你对后端工程感兴趣可以把整套流程封装成 Web 服务做一个小型 AI 短剧生成平台。AI 短剧这个方向目前还在快速变化中模型能力、平台规则和工具形态都会不断演进。保持动手实践的习惯多记录自己的参数配方和踩坑记录你的生产流程会越来越稳定。如果你也在尝试制作 AI 短剧或者对某个环节有疑问欢迎在评论区留言交流。
返回列表