支持高达20s的文生视频,书生·筑梦Vchitect2.0模型分享

Vchitect2.0,也称为书生·筑梦2.0,是由上海人工智能实验室推出的一款新一代视频生成大模型。

Vchitect2.0模型集成了文生视频、图生视频、插帧超分、训练系统一体化的功能,支持长达5秒至20秒的视频生成,分辨率可达到720x480。

Vchitect 2.0还支持多种视频格式,包括横屏、竖屏、4:3、9:16和16:9等比例,极大地扩展了其应用场景。

在技术架构方面,Vchitect 2.0采用了扩散式 Transformer网络模型,通过并行结构的 Transformer 模块处理视频的空间和时间信息,包括自注意力、交叉注意力和时间注意力。

此外,Vchitect 2.0 开源了训练和推理框架 LiteGen,针对性地提供了 diffusion 任务所需的各项优化,包括 Activation Offload 与 Sequence Parallel 技术,以优化显存并支持更大序列长度的训练。

github项目地址:https://github.com/Vchitect/Vchitect-2.0。

一、环境安装

1、python环境

建议安装python版本在3.10以上。

2、pip库安装

pip install torch==2.4.0+cu118 torchvision==0.19.0+cu118 torchaudio==2.4.0 --extra-index-url https://download.pytorch.org/whl/cu118

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

3、Vchitect-XL-2B模型下载

git lfs install

git clone https://huggingface.co/Vchitect/Vchitect-XL-2B

、功能测试

1、运行测试

(1)python代码调用测试

import torch
import random
import numpy as np
import os
import argparse
from models.pipeline import VchitectXLPipeline
from utils import save_as_mp4

def set_random_seed(seed):
    random.seed(seed)
    os.environ['PYTHONHASHSEED'] = str(seed)
    np.random.seed(seed)
    torch.manual_seed(seed)
    torch.cuda.manual_seed(seed)

def generate_video_from_prompt(pipe, prompt, seed, save_dir, idx):
    set_random_seed(seed)
    
    with torch.cuda.amp.autocast(dtype=torch.bfloat16):
        video = pipe(
            prompt,
            negative_prompt="",
            num_inference_steps=100,
            guidance_scale=7.5,
            width=768,
            height=432,  # 480x288  624x352 432x240 768x432
            frames=40
        )

    os.makedirs(save_dir, exist_ok=True)
    duration = 1000 / 8  # milliseconds per frame
    save_path = os.path.join(save_dir, f"sample_{idx}_seed{seed}.mp4")
    save_as_mp4(video, save_path, duration=duration)

def process_test_file(args):
    pipe = VchitectXLPipeline(args.ckpt_path)

    try:
        with open(args.test_file, 'r') as f:
            for idx, line in enumerate(f.readlines()):
                prompt = line.strip()
                for seed in range(5):
                    generate_video_from_prompt(pipe, prompt, seed, args.save_dir, idx + 1)
    except FileNotFoundError:
        print(f"Test file {args.test_file} not found.")

def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("--test_file", type=str, required=True, help="Path to the test file.")
    parser.add_argument("--save_dir", type=str, required=True, help="Directory to save the videos.")
    parser.add_argument("--ckpt_path", type=str, required=True, help="Path to the checkpoint file.")

    args = parser.parse_args()
    process_test_file(args)

if __name__ == "__main__":
    main()

未完......

更多详细的欢迎关注:杰哥新技术

### 大规模视频生成模型概述 大规模视频生成模型旨在创建高质量、连贯且具有真实感的动态图像序列。这类模型通常依赖于强大的计算资源和复杂的架构设计,以捕捉时间维度上的复杂模式并生成逼真的视觉内容。 #### 序列建模促进大视图模型的学习能力 通过引入顺序处理机制,可以显著提升大型视觉模型(LVM)的学习效率和效果[^1]。具体而言,在训练过程中采用自回归方法或其他形式的时间依赖结构能够帮助网络更好地理解和预测连续帧之间的关系。这不仅提高了最终输出的质量,还使得更高效的参数更新成为可能,从而支持更大规模的数据集上进行有效的学习过程优化。 #### Sora:一种先进的视频生成框架 Sora是由OpenAI推出的一款基于Transformer架构构建的强大工具,它能够在给定提示条件下合成高度真实的短视频片段[^2]。此系统利用了大量的预训练权重以及专门针对时空特征提取而调整过的组件,实现了前所未有的创造力表达水平。其核心优势在于: - **多尺度表示**:可以从不同抽象层次捕获场景细节; - **条件控制**:允许用户指定特定属性或风格指导生成过程; - **高效推理引擎**:即使面对高分辨率输入也能保持实时性能表现。 #### 综合评价体系的重要性 尽管当前技术已经在很多方面取得了突破性的进展,但对于如何科学公正地衡量这些成果却始终缺乏统一标准[^3]。因此建立一套全面覆盖各个方面的评测方案显得尤为重要——既包括定量分析也涉及主观体验层面考量;既能反映现有技术水平又能对未来研究方向给出建设性意见。 ```python import torch from transformers import AutoModelForVideoGeneration, AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("openai/sora") model = AutoModelForVideoGeneration.from_pretrained("openai/sora") prompt = "A cat playing with a ball" input_ids = tokenizer(prompt, return_tensors="pt").input_ids video_frames = model.generate(input_ids) for frame in video_frames: display(frame) ``` 上述代码展示了使用预训练好的Sora模型根据文本描述生成相应视频片段的过程。这里采用了Hugging Face提供的接口简化了调用流程,并能快速获得直观的结果展示。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值