首页 > 其他分享 >释放创意潜力! 探索智谱CogVideoX-2b:轻松生成6秒精彩视频的开发者指南!

释放创意潜力! 探索智谱CogVideoX-2b:轻松生成6秒精彩视频的开发者指南!

时间:2024-09-23 13:50:12浏览次数:11  
标签:视频 prompt tar 精彩视频 CogVideoX 2b main CogVideo

文章目录

1 CogVideoX 的背景

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

2 创建丹摩实例

  1. 进入控制台,选择 GPU 云实例,点击创建实例。

在这里插入图片描述

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

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

(4)实例创建成功。

在这里插入图片描述

3 配置环境和依赖

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

  1. 进入 JupyterLab 后,打开终端,首先拉取 CogVideo 代码的仓库。
wget http://file.s3/damodel-openfile/CogVideoX/CogVideo-main.tar

在这里插入图片描述

  1. 下载完成后解压缩CogVideo-main.tar,完成后进入 CogVideo-main 文件夹,输入安装对应依赖。

在这里插入图片描述

  1. 依赖安装好后,可以在终端输入 python,进入python环境。

进行测试:

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

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

在这里插入图片描述

4 模型与配置文件

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

  1. 平台已为您预置了 CogVideoX 模型,您可内网高速下载。
cd /root/workspace
wget http://file.s3/damodel-openfile/CogVideoX/CogVideoX-2b.tar

在这里插入图片描述

  1. 下载完成后解压缩CogVideoX-2b.tar
tar -xf CogVideoX-2b.tar

效果图:

在这里插入图片描述

5 运行

  1. 进入CogVideo-main文件夹,运行test.py文件。
cd /root/workspace/CogVideo-main
python test.py
  1. 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)
  1. 运行成功后,可以在 CogVideo-main 文件夹中找到对应 prompt 生成的 output.mp4 视频。

在这里插入图片描述

  1. 模型官方也提供了 webUIDemo,进入CogVideo-main文件夹,运行gradio_demo.py文件。
cd /root/workspace/CogVideo-main
python gradio_demo.py
  1. 通过丹摩平台提供的端口映射能力,把内网端口映射到公网,进入GPU 云实例页面,点击操作-更多-访问控制。

在这里插入图片描述

  1. 点击添加端口,添加7870端口。

在这里插入图片描述

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

在这里插入图片描述

6 效果图

在这里插入图片描述

标签:视频,prompt,tar,精彩视频,CogVideoX,2b,main,CogVideo
From: https://blog.csdn.net/L040821/article/details/142454402

相关文章

  • 安全:用logrotate实现fail2ban日志按天切分
    一,fail2ban默认安装了日志分割文件文件位置:/etc/logrotate.d/fail2ban[[email protected]]#rpm-qf/etc/logrotate.d/fail2banfail2ban-server-1.0.2-12.el9.noarch可以看到此文件来自于fail2ban-server这个rpm包配置文件默认内容:[root@iZ2zejc9t0hf6pnw6sewrxZlog......
  • 安全:查看fail2ban使用的backend
    一,区分不同的后端:日志是从哪里读取依赖于backend的设置,如果通过systemd读取时设置为 backend=systemd,否则,不要设置backend或改为backend=auto,如果不是通过systemd访问,设置了 backend=systemd,此时fail2ban不会读取我们设置的logpath例子:使用systemd[sshd]enabled=tru......
  • 智谱AI算法工程师带你上手实践CogVideoX 视频生成开源模型
    关注公众号:青稞AI,第一时间学习最新AI技术......
  • 安全: fail2ban的日常操作/配置
    一,指定监控多个日志文件:例子如下:[apache-w00tw00t]enabled=truefilter=apache-w00tw00taction=iptables-allportslogpath=/var/www/vhosts/site1.com/log/errorlog/var/log/apache*/*error.log/var/www/vhosts/site1.com/subdom/lo......
  • 公私域互通下的新商机探索:链动2+1模式、AI智能名片与S2B2C商城小程序的融合应用
    摘要:在数字化时代,公私域流量的有效融合已成为企业获取持续增长动力的关键。本文旨在探讨如何通过链动2+1模式、AI智能名片以及S2B2C商城小程序源码的综合运用,实现公私域流量的高效互通,进而为门店创造巨大商机。通过分析这些工具的特点、作用机制及其实施策略,本文为企业在复杂多......
  • fail2ban 下载 安装 使用
    安装Python(如果未安装)Fail2ban是基于Python开发的,所以首先需要在Windows上安装Python。访问Python官方网站(PythonReleasesforWindows|Python.org),下载适合您Windows版本的Python安装程序。运行安装程序,在安装过程中,确保勾选“AddPythontoPATH”选项,以......
  • CMS32L051驱动WS2812B全彩灯-PWM+DMA模式
    文章目录概要代码小结概要基于中微CMS32L051驱动WS2812B全彩灯,使用PWM+DMA模式。参照中微的串口uartSendReceive,该例程中有使用DMA进行串口数据的收发。代码main.c/******************************************************************************************......
  • 【高中数学/三角函数/判别式法】若正数a,b(a>b)满足1/(a+b)+1/(a-b)=1,则3a+2b的最小值
    【问题】若正数a,b(a>b)满足1/(a+b)+1/(a-b)=1,则3a+2b的最小值为?【出处】《解题卡壳怎么办--高中数学解题智慧剖析》P38页第一题首问余继光、苏德矿著 【解答】由1/(a+b)+1/(a-b)=1,展开后可得(a-1)^2-b^2=1可设a=1+1/cosθ,b=sinθ/cosθ代入3a+2b得f(θ)=3+3/cosθ+......
  • 【高中数学/基本不等式】已知ab皆为正实数,且(a+5b)*(2a+b)=36,求a+2b之最小值?
    【问题】已知ab皆为正实数,且(a+5b)*(2a+b)=36,求a+2b之最小值?【出处】《高考数学极致解题大招》P12中原教研工作室著【解答】因为(a+5b)+(2a+b)=3a+6b=3*(a+2b)故a+2b=1/3*(3a+6b)=1/3*((a+5b)+(2a+b))>=1/3*2*根号下((a+5b)*(2a+b))=2/3*6=4故a+2b之最小值=4END......
  • convnext_xxlarge.clip_laion2b_soup_ft_in12k timm模型库
    Modelcardforconvnext_xxlarge.clip_laion2b_soup_ft_in12kAConvNeXtimageclassificationmodel.CLIPimagetowerweightspretrainedin OpenCLIP onLAIONandfine-tunedonImageNet-12kbyRossWightman.PleaseseerelatedOpenCLIPmodelcardsformored......