探索丹摩智算平台的奇妙之旅:我的CogVideoX实践实验与深刻体验

在这里插入图片描述

📝个人主页🌹:Eternity._
🌹🌹期待您的关注 🌹🌹

在这里插入图片描述
在这里插入图片描述

❀CogVideoX

  • 📒1. 初识CogVideoX
  • 📚2. 部署与准备
    • 🌞在丹摩智算平台上创建实例
    • 🌸CogVideoX代码仓库的拉取、解压以及依赖的安装
  • 📜3. 实践实验
  • 📖4. 总结


前言:在当今这个数据驱动的时代,人工智能与大数据技术的飞速发展正深刻地改变着我们的生活和工作方式。作为这一领域的一名学习者与实践者,我有幸体验了丹摩智算平台,并特别选择了CogVideoX这一前沿的视频生成模型进行实践实验。通过这一过程,我不仅深入了解了视频生成技术的魅力,还深刻体会到了丹摩智算平台在算力支持、易用性等方面的卓越表现


📒1. 初识CogVideoX

CogVideoX在这里插入代码片是智谱AI开源的一款视频生成模型,其核心在于3D变分自编码器和3D旋转位置编码(3D RoPE)技术。这些技术使得CogVideoX能够在保持视频帧间连贯性的同时,极大地降低计算资源需求,并生成流畅、连贯的视频序列。此外,CogVideoX还具备强大的文本理解能力,能够处理超长且复杂的文本提示,生成与用户输入高度相关的视频内容

在这里插入图片描述


技术亮点

  • 3D 变分自编码器:该技术将视频数据压缩至原来的 2%,极大地降低了模型处理视频时所需的计算资源,同时保持了视频帧与帧之间的连贯性,避免了生成过程中的闪烁问题
  • 3D 旋转位置编码(3D RoPE):通过这项技术,CogVideoX 能够更好地捕捉时间维度上的帧间关系,建立视频中的长期依赖关系,从而生成更加流畅和连贯的视频序列

在这里插入图片描述

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. 部署与准备

🌞在丹摩智算平台上创建实例

在丹摩智算平台的支持下,我开始了CogVideoX的部署与准备工作。首先,我根据官方文档的指导,选择了合适的GPU云实例,并配置了必要的环境和依赖。由于CogVideoX在FP-16精度下的推理至少需18GB显存我选择了性能强大的L40S显卡,并配置了PyTorch2.3.0、Ubuntu-22.04以及CUDA12.1的镜像环境

在这里插入图片描述

选择性能强大的L40S显卡,并配置了PyTorch2.3.0、Ubuntu-22.04以及CUDA12.1的镜像环境

在这里插入图片描述
在这里插入图片描述

登录实例,创建密钥对 -> 这里输入密钥对名称即可

在这里插入图片描述

在完成创建后,等待示例运行

在这里插入图片描述


🌸CogVideoX代码仓库的拉取、解压以及依赖的安装

仓库的拉取

在实例创建完成后,我们可以直接使用JupyterLab来进行操作,我们在进入后,使用终端对CogVideo代码仓库进行拉取

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

在这里插入图片描述

在拉取完成后,我们解压文件,进入文件夹,安装我们需要的依赖


依赖的安装

指令:

tar -xf CogVideo-main.tar
cd CogVideo-main/
pip install -r requirements.txt

在这里插入图片描述

等待依赖安装(时间可能有点漫长),在安装完成后,进入python环境进行测试

指令:

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

输入指令,若没有出现报错代码,则证明依赖安装成功,我们quit()退出
在这里插入图片描述


模型与配置文件

在完成上面的步骤后,我们还需要进行 CogVideoX 模型文件和对应的配置文件的安装,平台已为您预置了 CogVideoX 模型,我们可以直接告诉下载安装

指令:

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

在这里插入图片描述

下载完成后,我们依然要对CogVideoX-2b.tar进行解压操作,解压后我们可以在文件中,直接找到

指令:

tar -xf CogVideoX-2b.tar

在这里插入图片描述

接下来,我通过平台预置的代码库和调试工具,顺利完成了CogVideoX代码仓库的拉取、解压以及依赖的安装。在确认一切配置无误后,我开始了模型的加载与初步测试


📜3. 实践实验

实践是检验真理的唯一标准。在成功部署CogVideoX后,我迫不及待地开始了实践实验。我利用模型提供的CogVideoXPipeline,根据一个详细的文本描述(prompt),尝试生成了一段生动的视频。这个prompt描述了一个穿着红色小夹克、戴着小帽子的熊猫,在宁静的竹林中坐在木凳上弹奏微型吉他,其他熊猫好奇地围观并打着节拍,阳光透过竹林洒在场地上,营造出一种和平而神奇的气氛(默认是这样,当然我们可以按自己意思修改)

进入CogVideo-main文件夹,运行test.py文件

指令:

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

在这里插入图片描述

这是文件中的默认选项:

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)

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

在这里插入图片描述

在模型的帮助下,我很快就得到了对应的视频文件。当看到视频中熊猫们栩栩如生的表演时,我深感震撼。CogVideoX不仅准确地捕捉了文本描述中的每一个细节,还通过流畅的帧间过渡和逼真的画面渲染,将这段文字转化为了生动的视觉体验

测试视频

假设我们将视频内容修改成A little dog is lying on the grass and rolling over in the sunny day.

测试2


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

指令:

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

在这里插入图片描述

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

在这里插入图片描述

添加端口,输入实例端口7870

在这里插入图片描述

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

在这里插入图片描述


📖4. 总结

  • 性能提升:随着技术的不断进步,CogVideoX 未来的版本将拥有更强的性能和更多的功能,例如支持更高分辨率的视频生成、更长的视频长度以及更丰富的视频内容
  • 应用拓展:CogVideoX 在影视制作、动画制作、游戏开发等领域具有广泛的应用前景,可以为用户提供更加高效和便捷的视频创作工具

不仅体会了CogVideoX的强大功能,还深刻体会到了丹摩智算平台在算力支持、易用性等方面的卓越表现,展现出了卓越的性能,我也期待看到更多像CogVideoX这样的创新技术不断涌现,为我们的生活和工作带来更多便利和惊喜

在这里插入图片描述

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

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

相关文章

Vue3 中组件传递 + css 变量的组合

文章目录 需求效果如下图所示代码逻辑代码参考 需求 开发一个箭头组件&#xff0c;根据父组件传递的 props 来修改 css 的颜色 效果如下图所示 代码逻辑 代码 父组件&#xff1a; <Arrow color"red" />子组件&#xff1a; <template><div class&…

公司网站改版时,需要注意哪些细节?

在公司网站改版时&#xff0c;需要注意的细节非常多&#xff0c;这些细节将直接影响到网站的用户体验、SEO效果以及整体品牌形象。以下是一些关键的注意事项&#xff1a; 明确改版目标&#xff1a; 在改版前&#xff0c;要明确改版的目标是什么&#xff0c;比如提升用户体验、增…

Linux:权限管理

基本权限和归属 权限和归属 基本权限与归属 • 访问权限 – 读取&#xff1a;允许查看内容-read – 写入&#xff1a;允许修改内容-write – 可执行&#xff1a;允许运行和切换-excute对于文本文件&#xff1a;r读取权限&#xff1a;cat、less、grep、head、tailw写入权限&am…

[已更新前两问代码+全部建模]2024华为杯C题详细思路代码文章建模分享研究生数学建模竞赛数学建模研赛

截止9.21 12点 已更新问题一二的代码和全部内容的建模 下面我们会先进行代码讲解,之后给出全部内容的建模公式 ## https://docs.qq.com/doc/DVWhyZ1NFY01XcmNw基于磁通密度数据的特征提取与分类分析。 问题一代码详解 1. 导入必要的库 import pandas as pd import numpy as…

Innodb内存结构

缓冲池Buffer Pool: 缓冲池是innodb内存结构缓冲区中的核心部分&#xff0c;在服务启动的时候服务器会向操作系统申请一块大小为128MB的内存空间&#xff0c;所有对数据库中数据的增删查改操作均在缓冲池bufferPool中完成&#xff0c;并且缓冲区中其他组件的描述信息也都存储在…

AI绘画Flux【lora模型】【微缩景观】:惊艳!3D场景融入手机上的微景观!

大家好&#xff0c;我是灵魂画师向阳 今天和大家分享一款基于Flux底模训练的微缩景观模型——FLUX|手机上的微景观。此模型主要将手机作为微型景观的基底&#xff0c;强制将3d情景融入手机并控制在手机屏幕上方范围内。 作者在使用提示词直出和使用该Loar提示词生成的图片进行…

手撕小顶堆

1. 抛砖引玉 给定两个以升序排列的整数数组 nums1 和 nums2 , 以及一个整数 k 。 定义一对值 (u,v)&#xff0c;其中第一个元素来自 nums1&#xff0c;第二个元素来自 nums2 。 请找到和最小的 k 个数对 (u1,v1), (u2,v2) … (uk,vk) 。 分析 大根堆&#xff08;大顶堆&#x…

多旋翼无人机维修、组装、调试技术详解

多旋翼无人机作为现代航拍、农业植保、物流运输等领域的重要工具&#xff0c;其性能的稳定性和操作的便捷性对于任务的完成至关重要。因此&#xff0c;掌握多旋翼无人机的维修、组装与调试技术&#xff0c;对于无人机操作员及维修人员来说至关重要。本文将详细介绍这三个方面的…

线程池ForkJoinPool实战及其工作原理分析

1. 由一道算法题引发的思考 算法题&#xff1a;如何充分利用多核CPU的性能&#xff0c;快速对一个2千万大小的数组进行排序&#xff1f; 这道算法题可以拆解来看&#xff1a; 1&#xff09;首先这是一道排序的算法题&#xff0c;而且是需要使用高效的排序算法对2千万大小的数…

从一个文本文件中挑选出符合条件的内容行

某天&#xff0c;张三得到一个需求&#xff0c;将如下格式的文本文件中的文件名开头的内容行提取出来&#xff0c;存入一个新的文本文件。 ok 0 文件名&#xff1a;1_zoukaige.mp3 index:10 文件名&#xff1a;2_dahan.mp3 index:20 文件名&#xff1a;3_kuai.mp3 index:30 文件…

【JavaEE精炼宝库】HTTP | HTTPS 协议详解

文章目录 一、HTTP 简介二、HTTP 协议格式&#xff1a;2.1 抓包工具的使用&#xff1a;2.2 HTTP 请求报文格式&#xff1a;2.3 HTTP 响应报文格式&#xff1a;2.4 HTTP 协议格式总结&#xff1a; 三、HTTP 请求详解&#xff1a;3.1 刨析 URL&#xff1a;3.2 方法(method)&#…

Kerberos自我总结Kerberos自我总结

1、协议原理与漏洞产生 1.1 kerberos Kerberos协议是一种基于票据Ticket的认证方式&#xff0c;它由三个角色组成&#xff0c;分别是客户端Client、服务端Server和秘钥分发中心KDC。 协议中的交互分为六步&#xff0c;为AS_REQ、AS_REP、TGS_REQ、TGS_REP、AP_REQ和AP_REP …

揭露大模型本质,大模型入门必看的12本书!看完我直接跪了

敢不敢用一年时间读完这12本书&#xff0c;模型入门必看的12本书&#xff01;建议收藏&#xff01;&#xff01; 第一本&#xff1a; 《基于GPT-3,ChatGPT,GPT-4等Transformer架构的自然语言处理》 主要内容 了解用于解决复杂语言问题的新技术。将GPT-3与T5、GPT-2和基于BE…

用Python实现时间序列模型实战——Day 28-29: 项目报告与展示

一、学习内容 1.1 项目报告的撰写与优化 项目报告应该从项目背景、数据探索、建模过程、预测结果、模型评估等方面进行全面描述。通过清晰的图表、简明的文字和合理的模型选择来优化报告的表达。 1.2 项目结果的展示与交流 通过展示图表、代码、关键模型的结果&#xff0c;…

Linux系统中的进程调度队列

目录 一、进程调度队列结构 二、活动队列与过期队列 1.queue[140] 2.bitmap[5] 一、进程调度队列结构 Linux系统中&#xff0c;每一个CPU都有一个进程调度队列runqueue&#xff0c;如图所示 二、活动队列与过期队列 运行队列runqueue中有两个指针*active、*expired。*acti…

从小白到大神:C语言预处理与编译环境的完美指南(下)

从小白到大神&#xff1a;C语言预处理与编译环境的完美指南&#xff08;上&#xff09;-CSDN博客 &#x1f446;&#x1f446;&#x1f446;&#x1f446;&#x1f446;&#x1f446;上篇链接在这~~&#x1f446;&#x1f446;&#x1f446;&#x1f446;&#x1f446;&#x…

角色权限管理实现学习

逻辑&#xff1a; 权限表(Sys_Power):存所需授权才能访问的检验字段 授权表/角色权限表(Sys_RolePower):存角色所能访问的权限字段 角色表(Sys_Role)&#xff1a;定义角色(管理员&#xff0c;部门负责人&#xff0c;项目负责人...) 用唯一的权限字段标注所要授权才能访问的…

心理辅导系统设计与Spring Boot技术

5 系统的实现 5.1学生功能模块的实现 学生进入本系统可查看系统信息&#xff0c;系统主界面展示如图5-1所示。 图5-1系统主界面图 5.1.1 学生登录界面 学生在登录时需输入正确的登录用户名和密码&#xff0c;系统会以登录用户名、密码为参数进行登录信息的验证&#xff0c;信…

Keil MDK5学习记录

2024.9.19 1. no browse information available in ‘xxx’的问题 成功解决Keil MDK5中no browse information available in ‘xxx’的问题-CSDN博客https://blog.csdn.net/bean_business/article/details/1091894452. .c文件中显示函数列表 如何在Keil5里.c文件中显示函数列表…

oracle数据库启动

文章目录 背景一、步骤1.登录oracle用户2.启动监听服务3.启动数据库 背景 oracle数据库启动 一、步骤 1.登录oracle用户 代码如下&#xff08;示例&#xff09;&#xff1a; su - oracle2.启动监听服务 代码如下&#xff08;示例&#xff09;&#xff1a; lsnrctl start成…