当前位置: 首页 > news >正文

智谱清影 -CogVideoX-2b-部署与使用,带你揭秘生成6s视频的极致体验!

在这里插入图片描述

文章目录

    • 1 效果展示
    • 2 CogVideoX 前世今生
    • 3 CogVideoX 部署实践流程
      • 3.1 创建丹摩实例
      • 3.2 配置环境和依赖
      • 3.3 模型与配置文件
      • 3.4 运行
      • 4 遇到问题

1 效果展示

A street artist, clad in a worn-out denim jacket and a colorful bandana, stands before a vast concrete wall in the heart, holding a can of spray paint, spray-painting a colorful bird on a mottled wall.

CogVideoX-6秒视频

2 CogVideoX 前世今生

CogVideoX 的出现就像在视频生成领域的一次重大飞跃。

过去的技术常常在效率和质量之间挣扎,而现在,它的 3D 变分自编码器能将视频数据压缩至原来的 2%,大幅降低资源消耗,并保持视频帧的连贯性。

引入的 3D 旋转位置编码技术更是让每个瞬间在时间中自然流动,仿佛为视频注入了生命。

智谱 AI 的端到端视频理解模型,使得用户的指令能被精准解析,生成的视频内容丰富且紧密相关,这项创新为创作者提供了更大的自由度。
在这里插入图片描述

这一创新极大地增强了 CogVideoX 对文本的理解和对用户指令的遵循能力,确保了生成的视频不仅与用户的输入高度相关,而且能够处理超长且复杂的文本提示。

CogVideoX 是技术上的一个新起点,期待它未来的发展,必将为我们带来更多惊喜。

  • CogVideoX代码仓库:https://github.com/THUDM/CogVideo
  • 模型下载:https://huggingface.co/THUDM/CogVideoX-2b
  • 技术报告:https://github.com/THUDM/CogVideo/blob/main/resources/CogVideoX.pdf
  • 丹摩智算平台:https://damodel.com/register?source=C4FB0342

3 CogVideoX 部署实践流程

本次实践流程在丹摩服务器上进行部署和初步使用 CogVideoX。

3.1 创建丹摩实例

(1)进入控制台,选择 GPU 云实例,点击创建实例。(实名认证有抵扣卷)

在这里插入图片描述

(2)CogVideoX 在 FP-16 精度下的推理至少需 18GB 显存,微调则需要 40GB 显存 。

(2.1)选择L40S 显卡(推荐)或者4090 显卡,硬盘可以选择默认的 100GB 系统盘和 50GB 数据盘。

在这里插入图片描述

(2.2)镜像选择 PyTorch2.3.0、Ubuntu-22.04,CUDA12.1 镜像。

在这里插入图片描述

(2.3)创建登录实例。(点击创建密钥对,输入个名称即可创建)

在这里插入图片描述

(2.4)实例创建成功。

在这里插入图片描述

3.2 配置环境和依赖

丹摩平台已预置了调试好的代码库,可开箱即用。

(1)进入 JupyterLab 后,打开终端,首先拉取 CogVideo 代码的仓库。

wget http://file.s3/damodel-openfile/CogVideoX/CogVideo-main.tar

在这里插入图片描述

(2) 下载完成后解压缩CogVideo-main.tar,完成后进入 CogVideo-main 文件夹,输入安装对应依赖。
在这里插入图片描述

(3)依赖安装好后,可以在终端输入 python,进入python环境。

输入代码进行测试:

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

没有报错就说明依赖安装成功!输入quit()可退出 python。

在这里插入图片描述

3.3 模型与配置文件

除了配置代码文件和项目依赖,还需要上传 CogVideoX 模型文件和对应的配置文件。

(1)平台已为您预置了 CogVideoX 模型,您可内网高速下载。

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

在这里插入图片描述

(2)下载完成后解压缩CogVideoX-2b.tar

tar -xf CogVideoX-2b.tar

解压后的效果图:

在这里插入图片描述

3.4 运行

(1)进入CogVideo-main文件夹,运行test.py文件。

cd /root/workspace/CogVideo-main
python test.py

在这里插入图片描述

(2)test.py 代码内容如下,主要使用diffusers库中的CogVideoXPipeline模型,加载了一个预训练的 CogVideo 模型,然后根据一个详细的文本描述(prompt),生成对应视频。

import torch
from diffusers import CogVideoXPipeline
from diffusers.utils import export_to_video# prompt里写自定义想要生成的视频内容
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("/root/workspace/CogVideoX-2b", # 这里填CogVideo模型存放的位置,此处是放在了数据盘中torch_dtype=torch.float16
).to("cuda")# 参数do_classifier_free_guidance设置为True可以启用无分类器指导,增强生成内容一致性和多样性
# num_videos_per_prompt控制每个prompt想要生成的视频数量
# max_sequence_length控制输入序列的最大长度
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)

(3)运行成功后,可以在 CogVideo-main 文件夹中找到对应 prompt 生成的 output.mp4 视频。

在这里插入图片描述

(4)模型官方也提供了 webUIDemo,进入CogVideo-main文件夹,运行gradio_demo.py文件。

cd /root/workspace/CogVideo-main
python gradio_demo.py

在这里插入图片描述

(5)通过丹摩平台提供的端口映射能力,把内网端口映射到公网,进入GPU 云实例页面,点击操作-更多-访问控制。

在这里插入图片描述

(6)点击添加端口,添加7870端口。

在这里插入图片描述

(7)添加成功后,通过访问链接即可访问到刚刚启动的 gradio 页面。

在这里插入图片描述

4 遇到问题

(1)端口号被占用。

安装 lsof:

apt-get update
apt-get install lsof
# 查占用端口
lsof -i :7870
# 杀进程
kill -9 <PID>

在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 正点原子阿尔法ARM开发板-IMX6ULL(七)——BSP工程管理实验(补:链接文件和.s文件)
  • 阅信云CTO向永清:35岁不应该成为技术职业发展的瓶颈|OceanBase 《DB大咖说》
  • 比backtrader还简单的量化回测框架,bt的使用方式以及示例
  • SpringCache
  • 简明linux系统编程--共享内存消息队列信号量
  • Chainlit集成Langchain并使用通义千问实现和数据库交互的网页对话应用增强扩展(text2sql)
  • 8.sklearn-模型保存
  • VirtualBox7.1.0 安装 Ubuntu22.04.5 虚拟机
  • @JsonFormat 和 @DateTimeFormat 的区别
  • JavaScript substring() 方法
  • Redisson 分布式锁的使用详解
  • 将有序数组——>二叉搜索树
  • Leetcode 3290. Maximum Multiplication Score
  • Python 数学建模——高斯核密度估计
  • 【读书笔记-《30天自制操作系统》-22】Day23
  • [译] 怎样写一个基础的编译器
  • 2017届校招提前批面试回顾
  • Angular 2 DI - IoC DI - 1
  • angular组件开发
  • input实现文字超出省略号功能
  • markdown编辑器简评
  • mongo索引构建
  • redis学习笔记(三):列表、集合、有序集合
  • Redis字符串类型内部编码剖析
  • spring cloud gateway 源码解析(4)跨域问题处理
  • vue:响应原理
  • vue的全局变量和全局拦截请求器
  • 阿里云应用高可用服务公测发布
  • 闭包,sync使用细节
  • 工程优化暨babel升级小记
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 欢迎参加第二届中国游戏开发者大会
  • 看图轻松理解数据结构与算法系列(基于数组的栈)
  • 深度学习在携程攻略社区的应用
  • 微服务核心架构梳理
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​埃文科技受邀出席2024 “数据要素×”生态大会​
  • ### RabbitMQ五种工作模式:
  • #我与Java虚拟机的故事#连载02:“小蓝”陪伴的日日夜夜
  • (10)ATF MMU转换表
  • (2024,Flag-DiT,文本引导的多模态生成,SR,统一的标记化,RoPE、RMSNorm 和流匹配)Lumina-T2X
  • (2024最新)CentOS 7上在线安装MySQL 5.7|喂饭级教程
  • (C#)一个最简单的链表类
  • (ZT)一个美国文科博士的YardLife
  • (附源码)php投票系统 毕业设计 121500
  • (利用IDEA+Maven)定制属于自己的jar包
  • (每日一问)操作系统:常见的 Linux 指令详解
  • (七)MySQL是如何将LRU链表的使用性能优化到极致的?
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (转)C#开发微信门户及应用(1)--开始使用微信接口
  • (转)EXC_BREAKPOINT僵尸错误
  • (转)Java socket中关闭IO流后,发生什么事?(以关闭输出流为例) .
  • * CIL library *(* CIL module *) : error LNK2005: _DllMain@12 already defined in mfcs120u.lib(dllmodu