这一新的开源人工智能 CogVideoX 将永远改变我们制作视频的方式

清华大学和智普人工智能(Zhipu AI)的研究人员发布了 CogVideoX,这是一个开源的文本到视频模型,有可能颠覆由 Runway、Luma AI 和 Pika Labs 等初创公司主导的人工智能格局。 最近的一篇 arXiv 论文详细介绍了这一突破,它将先进的视频生成能力交到了全球开发者的手中。

CogVideoX 可根据文字提示生成长达六秒的高质量连贯视频。 根据研究人员的基准测试,该模型在多个指标上都优于VideoCrafter-2.0和OpenSora等知名竞争对手。 该项目皇冠上的明珠CogVideoX-5B拥有50亿个参数,能以每秒8帧的速度生成720×480分辨率的视频。 虽然这些参数可能无法与最先进的专有系统相提并论,但 CogVideoX 的开源性才是其真正的创新之处。

在这里插入图片描述

开源模型如何创造公平竞争环境

通过公开代码和模型权重,清华团队有效地实现了一项技术的民主化,而在此之前,这项技术一直是资金雄厚的科技公司的专属领域。 此举可以利用全球开发者社区的集体力量,加快人工智能生成视频的进程。 研究人员通过多项技术创新实现了 CogVideoX 的惊人性能。 他们采用了三维变异自动编码器(VAE)来高效压缩视频,并开发了 "专家转换器 "来改善文本与视频的对齐。

论文指出:“为了提高视频和文本之间的对齐度,我们提出了一种专家变换器,它具有专家自适应层规范(LayerNorm),可促进两种模式之间的融合。” 这一进步使得对文本提示的解释更加细致入微,视频生成也更加准确。 CogVideoX 的发布标志着人工智能领域发生了重大转变。 小型公司和个人开发者现在可以使用以前由于资源限制而无法使用的功能。 这种公平的竞争环境可能会在广告、娱乐、教育和科学可视化等行业掀起一股创新浪潮。

双刃剑:平衡人工智能视频生成中的创新与伦理问题

然而,这种强大技术的普及并非没有风险。 人工智能界必须解决的一个真正令人担忧的问题是,这种技术有可能被滥用于制造深度伪造或误导性内容。 研究人员承认这些道德影响,呼吁负责任地使用这项技术。 随着人工智能生成的视频变得越来越容易获取和复杂,我们正在进入数字内容创作领域的未知领域。 CogVideoX 的发布可能标志着一个转折点,它将力量的天平从这一领域的大型参与者转移到更加分布式、开源的人工智能开发模式上。

这种民主化的真正影响还有待观察。 它是会开启一个创造和创新的新时代,还是会加剧围绕错误信息和数字操纵的现有挑战? 随着技术的不断发展,政策制定者和伦理学家将需要与人工智能社区密切合作,为负责任的开发和使用制定指导方针。

可以肯定的是,随着 CogVideoX 的广泛应用,人工智能生成视频的未来不再局限于硅谷的实验室。 无论好坏,它都掌握在全世界开发者的手中。

模型介绍

CogVideoX 是源于清影的视频生成模型的开源版本。 下表列出了我们目前提供的视频生成模型及其基础信息。

模型名称CogVideoX-2BCogVideoX-5B (This Repository)
模型描述Entry-level model, balancing compatibility. Low cost for running and secondary development.Larger model with higher video generation quality and better visual effects.
推理精度FP16* (Recommended), BF16, FP32, FP8*, INT8, no support for INT4BF16 (Recommended), FP16, FP32, FP8*, INT8, no support for INT4
单 GPU VRAM 消耗FP16: 18GB using SAT / 12.5GB* using diffusers
INT8: 7.8GB* using diffusers
BF16: 26GB using SAT / 20.7GB* using diffusers
INT8: 11.4GB* using diffusers
多GPU推理 VRAM 消耗FP16: 10GB* using diffusersBF16: 15GB* using diffusers
推理速度
(Step = 50, FP/BF16)
Single A100: ~90 seconds
Single H100: ~45 seconds
Single A100: ~180 seconds
Single H100: ~90 seconds
微调精度FP16BF16
微调 VRAM 消耗 (per GPU)47 GB (bs=1, LORA)
61 GB (bs=2, LORA)
62GB (bs=1, SFT)
63 GB (bs=1, LORA)
80 GB (bs=2, LORA)
75GB (bs=1, SFT)
Prompt LanguageEnglish*
Prompt Length Limit226 Tokens
视频长度6秒
帧率每秒8帧
视频分辨率720 x 480, no support for other resolutions (including fine-tuning)
Positional Encoding3d_sincos_pos_embed3d_rope_pos_embed

数据说明

  • 在使用 diffusers 库进行测试时,启用了 enable_model_cpu_offload() 选项和 pipe.vae.enable_tiling() 优化。 除英伟达 A100/H100 外,本解决方案尚未测试其他设备的实际 VRAM/内存使用情况。 一般来说,该解决方案适用于所有英伟达安培架构及以上的设备。 如果禁用优化,VRAM 使用量将大幅增加,VRAM 峰值约为表中数值的 3 倍。
  • 执行多 GPU 推理时,需要禁用 enable_model_cpu_offload() 优化。
  • 使用 INT8 模型将导致推理速度降低。 这样做是为了适应 VRAM 较低的 GPU,允许推理正常运行,同时将视频质量损失降到最低,尽管推理速度会显著降低。
  • 2B 模型使用 FP16 精度训练,而 5B 模型使用 BF16 精度训练。 英伟达 H100 及以上设备必须使用 FP8 精度,需要安装 torchtorchaodiffusersaccelerate Python 软件包。 推荐CUDA 12.4
  • 推理速度测试还使用了上述 VRAM 优化方案。 在不对 VRAM 进行优化的情况下,推理速度提高了约 10%。 只有使用扩散器的模型才支持量化。
  • 该模型仅支持英语输入,其他语言可在大型模型完善过程中翻译成英语。

注意

  • 使用 SAT 对 SAT 版本模型进行推理和微调。 欢迎访问我们的 GitHub 获取更多信息。

快速开始

该模型支持使用 huggingface diffusers 库进行部署。 我们建议您访问我们的 GitHub,查看相关的提示优化和转换,以获得更好的体验。

  1. 安装所需的依赖项
# diffusers>=0.30.1
# transformers>=4.44.2
# accelerate>=0.33.0 (suggest install from source)
# imageio-ffmpeg>=0.5.1
pip install --upgrade transformers accelerate diffusers imageio-ffmpeg 
  1. 运行代码
import torch
from diffusers import CogVideoXPipeline
from diffusers.utils import export_to_video

prompt = "A panda, dressed in a small, red jacket and a tiny hat, sits on a wooden stool in a serene bamboo forest. The panda's fluffy paws strum a miniature acoustic guitar, producing soft, melodic tunes. Nearby, a few other pandas gather, watching curiously and some clapping in rhythm. Sunlight filters through the tall bamboo, casting a gentle glow on the scene. The panda's face is expressive, showing concentration and joy as it plays. The background includes a small, flowing stream and vibrant green foliage, enhancing the peaceful and magical atmosphere of this unique musical performance."

pipe = CogVideoXPipeline.from_pretrained(
    "THUDM/CogVideoX-5b",
    torch_dtype=torch.bfloat16
)

pipe.enable_model_cpu_offload()
pipe.vae.enable_tiling()

video = pipe(
    prompt=prompt,
    num_videos_per_prompt=1,
    num_inference_steps=50,
    num_frames=49,
    guidance_scale=6,
    generator=torch.Generator(device="cuda").manual_seed(42),
).frames[0]

export_to_video(video, "output.mp4", fps=8)

探索模型

欢迎访问我们的 github,您将在这里找到:

  • 更详细的技术细节和代码解释
  • 提示词的优化和转换
  • SAT 版本模型的推理和微调,甚至预发布
  • 项目更新日志动态,更多互动机会
  • CogVideoX 工具链,帮助您更好地使用模型 INT8 模型推理代码支持。
  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值