智谱AI:CogVideoX-2b——视频生成模型的得力工具

news2024/11/15 16:23:33

智谱AI:CogVideoX-2b——视频生成模型的得力工具

在这里插入图片描述

文章目录

    • CogVideoX 简介——它是什么?
    • CogVideoX 具体部署与实践指南
      • 一、创建丹摩实例
      • 二、配置环境和依赖
      • 三、上传模型与配置文件
      • 四、开始运行
      • 五、Web UI 演示

CogVideoX 简介——它是什么?

智谱AI公布了一项激动人心的技术创新:他们决定将他们开发的视频生成模型CogVideoX的源代码对外公开。

这个模型目前能够处理的提示词数量上限为226个token,这意味着它可以理解和响应较长的文本输入。生成的视频长度可以达到6秒钟,以每秒8帧的速度播放,分辨率则为720像素乘以480像素。虽然这只是一个初步的版本,但智谱AI已经透露,他们正在开发性能更优越、参数量更大的后续版本。

CogVideoX的核心优势在于其采用了先进的3D变分自编码器技术。这种技术能够将视频数据的体积压缩到原来的2%,极大地减少了处理视频所需的计算资源,同时保持了视频帧与帧之间的连贯性。这种技术的应用有效避免了在视频生成过程中可能出现的闪烁现象,保证了视频的流畅播放。

output

  • 上图为3D旋转位置编码(3D RoPE)技术简介图

为了进一步提升视频内容的连贯性,CogVideoX还集成了3D旋转位置编码(3D RoPE)技术。这项技术使得模型在处理视频数据时,能够更加精准地捕捉到时间维度上帧与帧之间的关系,建立起视频中的长期依赖关系。这样的设计使得生成的视频序列更加流畅和连贯,提高了观看体验。

在提高视频生成的可控性方面,智谱AI开发了一个端到端的视频理解模型。这个模型能够为视频数据生成精确且与视频内容紧密相关的描述。这一创新显著增强了CogVideoX对文本的理解和对用户指令的执行能力,确保了生成的视频不仅与用户的输入高度相关,而且能够处理更长、更复杂的文本提示。

对于有兴趣深入了解和使用CogVideoX的开发者和研究者,智谱AI提供了以下资源:

  • 代码仓库:可以通过GitHub访问,地址为:https://github.com/THUDM/CogVideo
  • 模型下载:可以在Hugging Face平台上找到,地址为:https://huggingface.co/THUDM/CogVideoX-2b
  • 技术报告:提供了详细的技术细节和模型性能分析,可以在GitHub上找到,地址为:https://github.com/THUDM/CogVideo/blob/main/resources/CogVideoX.pdf

本文将详细介绍如何在丹摩服务器上部署CogVideoX,并提供初步的使用指南,帮助用户快速上手并开始利用这个强大的视频生成工具。

CogVideoX 具体部署与实践指南

一、创建丹摩实例

要开始部署CogVideoX,首先需要在控制台中创建一个GPU云实例。以下是创建步骤:

  1. 登录到丹摩控制台。
  2. 选择并点击“GPU云实例”选项。
  3. 点击“创建实例”按钮。

image-20240921134230884

在实例配置中,考虑到CogVideoX在FP-16精度下进行推理至少需要18GB的显存,进行微调则需要40GB显存,因此推荐选择L40S或4090显卡。硬盘配置方面,可以选择100GB的系统盘和50GB的数据盘。操作系统镜像建议选择PyTorch 2.3.0、Ubuntu 22.04,CUDA 12.1版本。完成配置后,创建实例并绑定密钥对,然后启动实例。

image-20240921134445638

二、配置环境和依赖

创建好实例后,接下来需要配置环境和依赖。以下是详细步骤:

  1. 通过JupyterLab进入终端。

  2. 使用wget命令下载CogVideo代码仓库:

    wget http://file.s3/damodel-openfile/CogVideoX/CogVideo-main.tar
    
  3. 解压缩下载的文件:

    tar -xf CogVideo-main.tar
    

    image-20240921140320617

  4. 进入CogVideo-main目录,并安装依赖:

    cd CogVideo-main/
    pip install -r requirements.txt
    
  5. 安装完成后,可以通过以下Python代码测试依赖是否安装成功:

    import torch
    from diffusers import CogVideoXPipeline
    from diffusers.utils import export_to_video
    

    如果运行无误,说明依赖安装成功。
    在这里插入图片描述

三、上传模型与配置文件

除了代码和依赖,还需要上传CogVideoX模型文件和配置文件。以下是上传步骤:

  1. 访问官方模型仓库:https://huggingface.co/THUDM/CogVideoX-2b/tree/main,下载所有必要的模型和配置文件。在这里插入图片描述

  2. 使用以下命令下载并解压模型文件:

    cd /root/workspace
    wget http://file.s3/damodel-openfile/CogVideoX/CogVideoX-2b.tar
    tar -xf CogVideoX-2b.tar
    

    image-20240921134919078

四、开始运行

一切准备就绪后,可以开始运行CogVideoX。以下是运行步骤:

  1. 进入CogVideo-main目录:
    cd /root/workspace/CogVideo-main
    
  2. 运行test.py文件:
    python test.py
    
  3. test.py文件中包含了使用CogVideoXPipeline生成视频的代码。例如:
    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..."
    pipe = CogVideoXPipeline.from_pretrained("/root/workspace/CogVideoX-2b", torch_dtype=torch.float16).to("cuda")
    prompt_embeds, _ = pipe.encode_prompt(prompt=prompt, do_classifier_free_guidance=True, num_videos_per_prompt=1, max_sequence_length=226, device="cuda", dtype=torch.float16)
    video = pipe(num_inference_steps=50, guidance_scale=6, prompt_embeds=prompt_embeds).frames[0]
    export_to_video(video, "output.mp4", fps=8)
    
  4. 运行成功后,可以在当前目录下找到生成的视频文件output.mp4

五、Web UI 演示

CogVideoX还提供了一个Web UI演示。以下是启动步骤:

  1. 进入CogVideo-main目录:
    cd /root/workspace/CogVideo-main
    
  2. 运行gradio_demo.py文件:
    python gradio_demo.py
    
  3. 运行后,访问本地URL http://0.0.0.0:7870 即可看到Web UI界面。

为了从外部访问这个Web UI,需要通过丹摩平台的端口映射功能将内网端口映射到公网:

  1. 进入GPU云实例页面,点击“操作” -> “更多” -> “访问控制”。
  2. 点击“添加端口”,添加7870端口。
  3. 添加成功后,通过提供的公网链接即可访问Web UI界面。

通过以上步骤,你可以成功部署并运行CogVideoX,生成高质量的视频内容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2154647.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电线覆盖物检测数据集 气球风筝鸟巢 1300张 voc yol

电线覆盖物检测数据集 气球风筝鸟巢 1300张 voc yol 电线覆盖物检测数据集 数据集描述 该数据集是一个专门用于检测电线及其周围环境中的异物的数据集,旨在帮助研究人员和开发者训练和评估基于深度学习的目标检测模型。数据集涵盖了五种常见的电线覆盖物类型&…

基于 Qwen2.5-Coder 模型和 CrewAI 多智能体框架,实现智能编程系统的实战教程

9 月 19 日,阿里开源了 Qwen2.5 系列大模型全家桶:除常规的语言模型 Qwen2.5 之外,还发布了专门针对编程的Qwen2.5-Coder模型和数学的 Qwen2.5-Math 模型,并且针对每个模型都提供了不同规模参数版本,包括: …

yolov8模型在手部关键点检测识别中的应用【代码+数据集+python环境+GUI系统】

yolov8模型在手部关键点检测识别中的应用【代码数据集python环境GUI系统】 背景意义 在手势识别、虚拟现实(VR)、增强现实(AR)等领域,手部关键点检测为用户提供了更加自然、直观的交互方式。通过检测手部关键点&#…

通信工程学习:什么是VLAN虚拟局域网

VLAN:虚拟局域网 VLAN(Virtual Local Area Network,虚拟局域网)是一种将物理局域网在逻辑上划分成多个广播域的通信技术。以下是关于VLAN的详细解释: 一、VLAN虚拟局域网的定义与概述 VLAN通过逻辑方式将网络中的设备…

【Proteus仿真】基于51单片机的L298N电机电速调节

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于51单片机,L298N电机驱动连接电机,采用调节PWM占空比来控制电机速度转动。 仿真图: 编辑 二、硬件资源 基于KEIL5编写C代码,PROTEUS8.15进行…

系统架构笔记-2-计算机系统基础知识

知识要点-2.6计算机语言 UML 对系统架构的定义是系统的组织结构,包括系统分解的组成部分以及它们的关联性、交互机制和指导原则等,提供系统设计的信息。 具体有以下 5 个系统视图: 1. 逻辑视图:也称为设计视图,表示…

3.《DevOps》系列K8S部署CICD流水线之部署MetalLB负载均衡器和Helm部署Ingress-Nginx

架构 服务器IP服务名称硬件配置192.168.1.100k8s-master8核、16G、120G192.168.1.101k8s-node18核、16G、120G192.168.1.102k8s-node28核、16G、120G192.168.1.103nfs2核、4G、500G操作系统:Rocky9.3 后续通过K8S部署GitLab、Harbor、Jenkins 为什么使用MetalLB 当使用云平…

【BEV 视图变换】Ray-based(2): 代码复现+画图解释 基于深度估计、bev_pool

paper:Lift, Splat, Shoot: Encoding Images from Arbitrary Camera Rigs by Implicitly Unprojecting to 3D code:https://github.com/nv-tlabs/lift-splat-shoot 一、完整复现代码(可一键运行)和效果图 import torch import torch.nn as nn import mat…

Springboot3 + MyBatis-Plus + MySql + Uniapp 商品加入购物车功能实现(最新教程附源码)

Springboot3 MyBatis-Plus MySql Uniapp 商品加入购物车功能实现(针对上一篇sku) 1、效果展示2、后端代码2.1 model2.2 mapper server serverImpl 参照上一篇自动生成2.3 controller 3、前端代码3.1 index.js3.2 shop-info.vue3.3 ShopBottomButton.v…

掌上高考爬虫逆向分析

目标网站 aHR0cHM6Ly93d3cuZ2Fva2FvLmNuL3NjaG9vbC9zZWFyY2g/cmVjb21zY2hwcm9wPSVFNSU4QyVCQiVFOCU4RCVBRg 一、抓包分析 二、逆向分析 搜索定位加密参数 本地生成代码 var CryptoJS require(crypto-js) var crypto require(crypto);f "D23ABC#56"function v(t…

机器学习之实战篇——图像压缩(K-means聚类算法)

机器学习之实战篇——图像压缩(K-means聚类算法) 0. 文章传送1.实验任务2.实验思想3.实验过程 0. 文章传送 机器学习之监督学习(一)线性回归、多项式回归、算法优化[巨详细笔记] 机器学习之监督学习(二)二元逻辑回归 …

Unity自我实现响应式属性

其实只是写着玩,响应式编程建议使用UniRx插件(一套成熟的响应式编程解决方案),我写的主要是借鉴一下这个思想,实现的也不够优雅,不过逻辑也算严密可以正常使用.你可以查看我写的理解响应式属性的思想. 借鉴UniRx的ReactiveProperty类,且UniRx不仅有响应式属性. using System; …

光伏板缺陷红外检测数据集

光伏板缺陷红外检测数据集 包含以下4个数据文件: /train:训练集 /valid:验证集 /test:测试集 README.txt:数据说明 【数据说明】检测目标以Pascal VOC格式进行标注,对每个图像进行以下预处理,统…

【Linux笔记】如何将内容从一个文件复制到另一个文件

比如:将文件tmp_file.txt中的部分数据,复制到file01.txt中去 tmp_file.txt文中内容: file01.txt为空文档 一、使用vi编辑器 I、文件中直接使用:e 目标文件进行切换文件复制 1、打开被复制文件 vi tmp_file.txt 2、进入一般命令模式 默认情况为…

2024年华为杯-研赛更新时间轴-资料分享

本次 助攻CDF题 问题一二三问均已完成更新,更新计划轴如图所示 由于赛题之间存在紧密的联系,单独发布问题一二,有可能与明天最终论文不相符,会根据后面问题对前面几问进行调整。个人建议,等明天上午的完整论文即可 题 …

ACT训练调参技巧

ACT Tuning Tips 这里是针对斯坦福Aloha机械臂远程训练调参技巧的中文解释,初学者可能会对此感到陌生,不过不用担心,多尝试,多实验。 - Chunk size is the most important param to tune when applying ACT to a new environment…

【YOLO目标检测学生课堂行为数据集】共4266张、已标注txt格式、有训练好的yolov5的模型

目录 说明图片示例 说明 数据集格式:YOLO格式 图片数量:4266 标注数量(txt文件个数):4266 标注类别数:3 标注类别名称:hand、read、write 数据集下载:学生课堂行为数据集 图片示例 数据集图片&#…

HTML5中新增元素介绍

引入了许多新元素,以增强网页的语义和功能。这些新元素大致可以按以下几类进行分类和介绍。 下面是对各标签的详解,section、header、footer、nav、article、aside、figure、code、dialog、meter、time、progress、video、audio、details、atagrid、menu…

AIGC7: 高通骁龙AIPC开发者沙龙过程记录A

图中是一座高耸的宫殿。 就像AI的出现,慢慢初现端倪,头角峥嵘。 背景 一直以来都比较关注AI的发展,有幸再一次参加异常AI的盛会。 从我的角度看。 高通是一家生产芯片的公司,国内的小米,荣耀,Oppo , Vi…

Qt_窗口界面QMainWindow的介绍

目录 1、菜单栏QMenuBar 1.1 使用QMainWindow的准备工作 1.2 在ui文件中设计窗口 1.3 在代码中设计窗口 1.4 实现点击菜单项的反馈 1.5 菜单中设置快捷键 1.6 菜单中添加子菜单 1.7 菜单项中添加分割线和图标 1.8 关于菜单栏创建方式的讨论 2、工具栏QToolBar …