Mora文本提示工程指南:如何编写高质量prompt提升视频生成效果
【免费下载链接】Mora 项目地址: https://gitcode.com/GitHub_Trending/mo/Mora
你是否曾遇到这样的困境:明明输入了文字描述,AI生成的视频却总是偏离预期?人物动作僵硬、场景元素缺失、风格前后不一致——这些问题往往源于不够精准的提示词(Prompt)。本文将系统讲解Mora视频生成框架的提示词编写方法论,通过6个核心技巧和3个实战案例,帮你显著提升视频生成质量。读完本文,你将掌握如何让AI准确理解你的创意,生成符合预期的动态视觉内容。
一、Mora提示工程核心原理
Mora框架通过VideoProducerWithText模块实现文本到视频的转换,其核心是将用户输入的简单描述转化为AI可理解的结构化提示。在demo.py的实现中,系统会先调用GeneratePrompt动作处理原始输入,通过LLM(大语言模型)将简单文本扩展为包含视觉细节、动作序列和风格指令的完整提示。
提示词处理流水线
- 原始输入:用户提供的简单文本描述
- 提示生成器:通过generate_prompt.py中的PROMPT_TEMPLATE模板,结合LLM将输入扩展为详细提示
- 视频生成器:video_producer_with_text.py接收结构化提示,调用扩散模型生成视频帧
- 后处理:通过video_producer.py进行帧序列优化和格式转换
二、高质量Prompt的6个核心要素
1. 场景设定:构建沉浸式环境
精准的场景描述需要包含时空信息、环境特征和氛围基调。对比以下两个示例:
基础提示:
夜晚的城市
优化提示:
黄昏时分的未来都市,雨后湿润的街道反射着霓虹灯,空中有悬浮车辆穿梭,远处摩天大楼屏幕播放着全息广告,整体色调以深蓝和紫色为主,带有轻微的雾气效果
Mora框架在test_generate_image_with_text_action.py中验证了环境细节对生成质量的影响,实验数据显示包含3个以上环境要素的提示词生成合格率提升67%。
2. 主体描述:明确视觉特征
主体描述需包含外观细节、动作状态和情绪表达。以人物为例:
推荐结构:
[主体类型],[年龄/性别],[服装细节],[发型特征],[面部表情],[动作姿态],[持有物品]
示例:
年轻女性,25岁,穿着白色连衣裙,棕色长卷发,微笑表情,右手拿着一本书,左手自然下垂,站在图书馆书架前
3. 动作序列:定义时间维度变化
视频与图片的核心区别在于时间维度的表达,需通过时序动词和过渡词定义动作流程:
基础提示:
人在走路
优化提示:
一个穿红色外套的男子从左侧走入画面,以每秒两步的速度匀速前进,途中抬手调整眼镜,最后在画面右侧挥手告别,全程保持自然步态
Mora的VideoProducer模块支持通过帧率参数控制动作流畅度,默认7fps(如demo.py第38行所示),复杂动作建议提升至10-12fps。
4. 风格指令:统一视觉语言
风格描述应包含艺术流派、色彩方案和镜头特性:
示例:
采用宫崎骏动画风格,明亮的色彩,柔和的边缘,低饱和度的绿色和蓝色为主色调,使用45度俯视角,镜头缓慢推进
5. 镜头语言:控制视觉叙事
专业的镜头描述能显著提升视频叙事感:
常用镜头参数:
- 景别:特写(Close-up)、中景(Medium)、全景(Panorama)
- 运动:推(Push)、拉(Pull)、摇(Pan)、移(Truck)
- 焦距:长焦(Telephoto)、广角(Wide-angle)
示例:
从远景缓慢推近至中景,聚焦在女主角面部表情,背景逐渐虚化,最后定格在她手中的信件上
6. 负面提示:排除不想要的元素
通过负面提示明确排除不需要的特征:
示例:
高质量4K视频,清晰人脸,流畅动作,无模糊,无多余物体,无文本水印,非卡通风格
三、实战案例:从文本到视频的完整流程
案例1:简单场景生成
用户输入:
秋天的公园,孩子们在放风筝
Mora优化后提示:
秋季午后的城市公园,阳光透过金黄色的枫叶洒在草地上,三个6-8岁的孩子在放风筝,男孩穿着蓝色夹克和棕色裤子,女孩穿着粉色连衣裙,风筝是蝴蝶形状的彩色设计,微风使风筝缓缓升空,背景有长椅和散步的老人,整体氛围温暖明亮,采用自然写实风格,每秒10帧
实现代码片段(来自demo.py):
def text_to_video(msg):
result = asyncio.run(text_to_video_role.run(msg))
video_frames = [np.array(frame) for frame in result.image_content]
video_frames = ImageSequenceClip(video_frames, fps=10) # 调整为适合动作的帧率
video_frames.write_videofile(video_path, codec='libx264')
return video_path
案例2:图像转视频扩展
用户输入:
将这张图片扩展为女孩吹蒲公英的视频
上传图片:input1.jpg
优化提示:
基于输入图像,生成女孩吹散蒲公英的5秒视频,女孩穿着白色连衣裙站在绿色草地上,右手拿着蒲公英花茎,轻轻吹气使种子飘散,种子在阳光下呈现金色光晕,微风使头发和裙摆轻微飘动,背景有远处的树木和蓝色天空,保持与输入图像一致的人物特征和视角
案例3:多视频片段混合
用户输入:
将城市日出和海浪视频自然过渡
上传视频:task4_original.gif和task4_sora_rainbow.gif
优化提示:
创建一个3秒的转场视频,从城市日出场景平滑过渡到海浪场景。开始时展示日出时分的城市天际线,太阳从高楼间升起,天空从深蓝渐变为橙红;中间2秒使用淡入淡出效果,同时将建筑物轮廓逐渐转化为海浪形状;最后呈现蓝色海洋和白色浪花,保持整体亮度和色彩平衡一致,帧率12fps确保过渡流畅
实现代码(来自demo.py视频混合功能):
def video_mixer(video1, video2):
Video1=load_video(video1)
Video2=load_video(video2)
msg1 = Message(content="", image_content=[Video1, Video2])
result = asyncio.run(video_connection_role.run(msg1))
# 视频帧处理与输出...
四、常见问题与解决方案
| 问题现象 | 可能原因 | 解决方法 |
|---|---|---|
| 人物动作不自然 | 动作描述模糊或帧率不足 | 增加动作分解步骤,提高fps至10-12 |
| 场景元素缺失 | 场景描述不具体 | 增加空间位置描述,明确前后景元素 |
| 风格不一致 | 未指定统一风格 | 在提示开头添加明确的风格指令 |
| 视频过短 | 默认参数限制 | 通过video_producer_extension.py扩展时长 |
五、总结与进阶方向
通过本文介绍的6个核心要素和3个实战案例,你已掌握Mora框架提示词编写的基础方法。要进一步提升技能,建议:
- 研究image/目录中的优秀案例,分析其提示词结构
- 尝试修改generate_prompt.py中的PROMPT_TEMPLATE,定制适合特定场景的提示模板
- 结合tests/目录中的测试用例,系统验证不同提示策略的效果
掌握提示工程是提升AI视频生成质量的关键技能。随着实践深入,你将能够编写简洁而强大的提示词,让Mora框架准确实现你的创意愿景。收藏本文作为参考,开始你的AI视频创作之旅吧!
下一篇我们将探讨"Mora高级视频编辑:如何通过Python API实现自定义转场效果",敬请期待。
【免费下载链接】Mora 项目地址: https://gitcode.com/GitHub_Trending/mo/Mora
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考








