ViMax
多智能体视频生成框架,整合导演、编剧、制片人和视频生成器,将创意自动转化为完整视频。亮点在于支持 Idea2Video、Novel2Video、Script2Video 和 AutoCameo 四种模式,支持从一句话创意到长篇小说再到照片出镜的端到端生成,并通过 RAG、多相机模拟、一致性检查等机制保证角色和场景的连贯性,生成的视频可达分钟级。
README
ViMax: Agentic Video Generation
🚨 当前视频生成局限:
- ❌ 仅限短片段 — 大多数 AI 工具只能生成几秒钟的素材。
- ❌ 一致性混乱 — 角色和场景在帧之间不可预测地变化。
- ❌ 仅关注视觉 — 缺少脚本、音频、叙事结构和故事深度。
💡 ViMax 解决方案:
🎬 导演、编剧、制片人 和 视频生成器 四合一!我们正在探索一个 AI 成为完整创意工作室的未来。💡 只需输入你的概念,ViMax 自主处理其余工作。它整合了剧本写作、故事板绘制、角色创建和最终视频生成——全流程端到端。🚀
https://github.com/user-attachments/assets/5bad46b2-8276-4e1d-9480-3522640744b2
📑 目录
💡核心特性
🌟 创意到视频(Idea2Video)从灵感到影像 通过智能多 agent 工作流,将原始创意转化为完整的视频故事,自动化叙事、角色设计和制作。 |
🎨 小说到视频(Novel2Video)智能文学改编引擎 将完整小说转化为剧集式视频内容,配备智能叙事压缩、角色跟踪和逐场景视觉改编 |
⚙️ 剧本到视频(Script2Video)无限剧本视频创作 通过编写任意剧本释放你的创造力——从个人故事到史诗冒险,让你完全掌控视觉叙事的每个细节。 |
🤳 自动客串(AutoCameo)从你的照片生成视频 创建属于你自己的客串视频,将你/你的宠物转变为客串明星,出现在无限创意的剧本、电影序列和互动故事中。 |
🔮从零生成的视频演示
🎯 端到端视频创作引擎
面临的挑战:
🌅 参考图像:获取、整理和对齐能够准确捕捉角色、物体、位置和环境的参考帧,耗时费力。
🫠 一致性检查:即使提供给图像生成器正确的角色、位置、环境参考图像和提示,有时也会生成不可用的图像。
📄 剧本生成:专业高质量的视频需要丰富的信息密度和结构化设计。
📝 故事板设计:将故事转化为视觉叙事需要电影摄影、场景构图和视觉叙事方面的专业知识,大多数创作者不具备。
🎬 镜头设计:创建连贯的摄像机序列,包含合适的角度、转场和节奏,同时保持复杂场景中的叙事流。
🎨 开发延迟:在长篇内容中,确保数百个镜头之间角色外观、环境和艺术风格保持一致。
⏱️ 制作效率:传统视频创作涉及多个专家和冗长的工作流程,为独立创作者和快速原型制作设置了障碍。
🎥 规模化 AI 生成视频:AI 生成的视频通常只有几秒钟,分钟甚至小时级别的高质量长视频需要复杂的跨场景连贯性和多故事板设计及处理能力。
ViMax:通过自动化从叙事输入到最终视频输出的整个视频创作管道,消除了这些制作瓶颈。
🔥 为什么选择 ViMax?
| 🧠 轻松制作 | 🚀 完全创意自由 | 🔊 音视频绑定 | 🎨 专业品质 | 🤩 互动视频 |
|---|---|---|---|---|
| 一次提示到完整视频 | 从任何叙事到现实 | 同步叙事 | 电影级输出 | 制作自己的客串视频 |
| 跳过技术复杂性——只需描述你的愿景,让 ViMax 处理剧本生成、故事板、镜头设计、参考管理和一致性验证 | 没有创意限制——无论是预告片、短篇故事、小说章节还是原创概念,ViMax 都能智能地结构化叙事并设计电影摄影,将任何想法变为现实 | 无缝整合角色语音和音效与视觉内容,创造沉浸式体验,音视频完美和谐 | 自动化质量控制确保角色一致性、恰当的场景构图和专业视觉标准,贯穿视频的每一帧 | 上传照片在自己的短片中互动——ViMax 智能地将你整合为角色,在整个视频中保持一致外观和自然互动 |
☄️ 即将推出
- 👨💻 Google AI Studio API 配置✅
- 📹 开发模式分支
- 🤳 AutoCameo 集成
- 📺 更多演示
- 🎞️ 镜头规划
- 🤖 新功能
🏗️ 架构
📊 系统总览
ViMax 是一个多 agent 视频框架,能够实现多镜头视频的自动化生成,同时确保角色和场景的一致性。我们的系统将你的想法无缝转化为对应的视频,让你专注于叙事而非技术实现。
🎯 技术能力:
🧬 智能长剧本生成
基于 RAG(检索增强生成)的长剧本设计引擎,智能分析长篇小说式的故事,并自动将其分段为多场景剧本格式。该过程精心确保所有关键情节发展和角色对话在新结构中准确保留。
🪄 富有表现力的故事板设计
镜头级别的故事板设计系统,根据用户需求和目标受众,通过电影语言创建富有表现力的故事板,为后续视频生成建立叙事节奏。
🔮 多机位拍摄模拟
模拟多机位拍摄,提供沉浸式观看体验,同时保持同一场景中角色定位和背景的一致性。
🧸 智能参考图像选择
智能选择当前视频第一帧所需的参考图像,包括之前时间线中出现的故事板,确保随着视频变长,多角色和环境元素的准确性。
⚙️ 自动化图像生成
基于所选参考图像和先前时间线的视觉逻辑顺序,自动生成图像生成器的提示(prompt),合理安排角色与环境之间的空间交互位置。
✅ 自动化图像生成一致性检查
并行生成多张图像,通过 MLLM/VLM(多模态大模型/视觉语言模型)选择最佳一致图像作为第一帧,模仿人类创作者的工作流程。
⚡ 高效并行镜头生成
对同一摄像机拍摄的连续镜头进行并行处理,实现高效的视频制作。
🤖 多 Agent 视频生成管道
|
🧠 输入层 📝 创意 & 剧本 & 小说 • 💭 自然语言提示 • 🖼️ 参考图像 • 🎨 风格指令 • 🧩 配置 |
||
|
🧭 中央编排 Agent 调度 • 阶段转换 • 资源管理 • 重试/回退逻辑 |
||
|
🧾 剧本理解 角色/环境提取 • 场景边界 • 风格意图 |
🎥 场景与镜头规划 故事板步骤 • 镜头列表 • 关键帧与节拍 |
|
|
🧪 视觉资产规划 参考图像选择 • 外观/风格指导 • 提示条件设置 |
||
|
🗂️ 资产索引 帧/参考目录 • Embeddings • 重用检索 |
♻️ 一致性与连续性 角色/环境跟踪 • 参考匹配 • 时间连贯性 |
|
|
✂️ 视觉合成与组装 图像生成 • 最佳帧选择 • 首帧/末帧→视频 • 剪辑与时间线组装 |
||
|
🚀 输出层 🖼️ 帧 • 🎞️ 剪辑与最终视频 • 📜 日志 • 📦 工作目录产物 |
||
🚀快速开始
🖥️ 环境
操作系统:Linux, Windows
📥 克隆与安装
我们使用 uv 来管理环境。关于 uv 的安装,请参考 https://docs.astral.sh/uv/getting-started/installation/。
git clone https://github.com/HKUDS/ViMax.git
cd ViMax
uv sync
🎯 使用方法
main_idea2video.py 用于将你的创意转换为视频。
你需要在 configs/idea2video.yaml 文件中配置模型和 API key 信息,包括三部分——聊天模型、图像生成器和视频生成器,如下所示:
chat_model:
init_args:
model: google/gemini-2.5-flash-lite-preview-09-2025
model_provider: openai
api_key: <YOUR_API_KEY>
base_url: https://openrouter.ai/api/v1
image_generator:
class_path: tools.ImageGeneratorNanobananaGoogleAPI
init_args:
api_key: <YOUR_API_KEY>
video_generator:
class_path: tools.VideoGeneratorVeoGoogleAPI
init_args:
api_key: <YOUR_API_KEY>
working_dir: .working_dir/idea2video
然后,在 main_idea2video.py 中提供一个简单但富有思考的创意和相应的创作要求。
idea = \
"""
如果一只猫和一只狗是最好的朋友,它们遇到一只新猫时会发生什么?
"""
user_requirement = \
"""
面向儿童,不超过3个场景。
"""
style = "卡通(Cartoon)"
使用 MiniMax 作为聊天模型提供商
MiniMax 模型可以作为聊天模型的替代提供商。MiniMax 提供兼容 OpenAI 的 API 访问,支持的模型包括 MiniMax-M2.7(1M 上下文窗口)和 MiniMax-M2.5(204K 上下文)。
只需在配置中设置 model_provider: minimax,基础 URL 会自动解析:
chat_model:
init_args:
model: MiniMax-M2.7
model_provider: minimax
api_key: <YOUR_MINIMAX_API_KEY>
或者将 API key 导出为环境变量,并将 api_key 留空:
export MINIMAX_API_KEY=<YOUR_KEY>
完整示例请参见 configs/idea2video_minimax.yaml 和 configs/script2video_minimax.yaml。
| 模型 | 上下文 | 备注 |
|---|---|---|
| MiniMax-M2.7 | 1M tokens | 最新,推荐 |
| MiniMax-M2.7-highspeed | 1M tokens | 快速变体 |
| MiniMax-M2.5 | 204K tokens | 稳定版 |
| MiniMax-M2.5-highspeed | 204K tokens | 快速变体 |
main_script2video.py 基于特定剧本生成视频。
你同样需要在 configs/script2video.yaml 文件中设置 API 配置。然后,在 main_script2video.py 中提供一个场景剧本和相应的创作要求,如下所示。
script = \
"""
外景 - 学校体育馆 - 白天
一群学生正在体育馆练习篮球。体育馆宽敞开放,一端是篮球架,另一端是大批观众。John(18岁,男性,高大,运动型)是明星球员,正在练习运球和投篮。Jane(17岁,女性,矮小,运动型)是助理教练,正在帮助 John 训练。其他学生观看训练并为 John 加油。
John:(运球)我要投中一球!
Jane:(微笑)好球,John!
John:(投篮)耶!
...
"""
user_requirement = \
"""
快节奏,不超过20个镜头。
"""
style = "动画风格(Animate Style)"
🌟 如果这个项目对你有帮助,请给我们一颗 Star!
❤️ 感谢访问 ✨ ViMax!