使用启智OpenI平台体验Open-Sora笔记

news2024/11/26 6:24:49

OpenI准备部分

镜像代码仓

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

创建云脑任务

在这里插入图片描述

新建调试任务

在这里插入图片描述
镜像选择
如果不想体验整个安装配置过程的话,我准备了一个Open-Sora的环境镜像应该可以直接开箱即用
地址:

192.168.204.22:5000/default-workspace/99280a9940ae44ca8f5892134386fddb/image:OpenSoraV2

如果想自己体验整个环境配置准备阶段的可以使用这个镜像地址镜像地址:

192.168.204.22:5000/default-workspace/99280a9940ae44ca8f5892134386fddb/image:ubuntu22.04-cuda12.1.0-py310-torch2.1.2-tf2.14

模型选择:搜索打勾的两个选中添加
在这里插入图片描述
参数设置部分基本如下图所示
在这里插入图片描述

点击新建任务完成创建调试任务的工作

环境准备

如果使用我制造好的Open-Sora镜像的话直接跳转到克隆代码仓那一步

安装flash attention

pip install packaging ninja
pip install flash-attn --no-build-isolation

安装apex

cd /tmp/code
git clone https://github.com/NVIDIA/apex
cd apex
pip install -v --disable-pip-version-check --no-cache-dir --no-build-isolation --config-settings "--build-option=--cpp_ext" --config-settings "--build-option=--cuda_ext" ./

安装xformers

pip install -U xformers --index-url https://download.pytorch.org/whl/cu121

克隆代码仓及安装

cd /temp/code
git clone https://github.com/hpcaitech/Open-Sora #这边可以替换成克隆后在openi的代码仓地址
cd Open-Sora
pip install -v .  #如果使用Open-Sora的话这一步不要执行

注:如果使用我制作号的Open-Sora镜像的话这一步不要执行pip install! Git Clone完成就好!

如果不使用我公开的模型文件,想自己体验下载模型的话,可以使用下面的文件脚本(download_model.py)放到Open-Sora代码仓文件夹的上一层执行
安装依赖

pip install modelscope

下载脚本

import torch
from modelscope import snapshot_download, AutoModel, AutoTokenizer
import os
snapshot_download('AI-ModelScope/sd-vae-ft-ema', cache_dir='./Open-Sora/opensora/models/', revision='master')
snapshot_download('AI-ModelScope/Open-Sora', cache_dir='./Open-Sora/opensora/models/', revision='master')

重新安装torch==2.2.1

如果使用我配置的Open-Sora镜像的话这一步不要执行

不重新安装在openi平台有概率会被重新安装成torch==2.1.1,这样就造成了版本不匹配

pip uninstlal torch torchvision torchaudio
pip3 install torch==2.2.1 torchvision torchaudio==2.2.1 --index-url https://download.pytorch.org/whl/cu121

修改文件(Open-Sora/configs/opensora/inference/16x256x256.py)

num_frames = 16
fps = 24 // 3
image_size = (256, 256)

# Define model
model = dict(
    type="STDiT-XL/2",
    space_scale=0.5,
    time_scale=1.0,
    enable_flashattn=True,
    enable_layernorm_kernel=True,
    from_pretrained="/tmp/code/Open-Sora/opensora/models/Open-Sora/OpenSora-v1-HQ-16x256x256.pth",
)
vae = dict(
    type="VideoAutoencoderKL",
    from_pretrained="/tmp/code/Open-Sora/opensora/models/sd-vae-ft-ema",
)
text_encoder = dict(
    type="t5",
    from_pretrained="DeepFloyd/t5-v1_1-xxl",
    model_max_length=120,
)
scheduler = dict(
    type="iddpm",
    num_sampling_steps=100,
    cfg_scale=7.0,
)
dtype = "fp16"

# Others
batch_size = 2
seed = 42
prompt_path = "./assets/texts/t2v_samples.txt"
save_dir = "./outputs/samples/"

设置HF镜像

export HF_ENDPOINT=https://hf-mirror.com

拷贝模型

cd opensora/models/
cp -r /tmp/pretrainmodel/* ./

运行代码

cd ../..
torchrun --standalone --nproc_per_node 1 scripts/inference.py configs/opensora/inference/16x256x256.py

运行时GPU情况:

Mon Mar 25 18:07:00 2024
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 12.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA A100-PCI...  Off  | 00000000:92:00.0 Off |                    0 |
| N/A   48C    P0   210W / 250W |  22662MiB / 40960MiB |    100%      Default |
|                               |                      |             Disabled |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

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

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

相关文章

【C++的奇迹之旅】C++关键字命名空间使用的三种方式C++输入输出命名空间std的使用惯例

文章目录 📝前言🌠 C关键字(C98)🌉 命名空间🌠命名空间定义🌉命名空间使用 🌠命名空间的使用有三种方式:🌉加命名空间名称及作用域限定符🌠使用using将命名空间中某个成员…

NSGA算法

先给自己叠甲,记录自己的学习过程,如有内容错误欢迎指正!!!。 1. NSGA算法简介(Nondominated Sorting Genetic Algorithm) 根据标题,NSGA算法分为两个要点,Nondominated Sorting(非支配排序&a…

基本数据类型

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 数据类型是一种用于描述数据存储格式的结构。 PL/SQL 和其他编程语言一样也有多种数据类型,PL/SQL 语言中的常用数据类型和 Oracle 数据库中内置的数据类型基本…

基于JSP的母婴用品网站

背景 随着时代的飞速进步,计算机技术已经广泛而深刻地渗透到社会的各个层面。人们生活质量的持续提升,以及对母婴产品需求的日益增长,都推动了母婴用品网站开发的必要性和紧迫性。这类网站依托计算机技术,通过对相关产品信息的有…

简易挛生分拣系统设计

1 工效组合展示 2 方案规划设计 3 数字挛生建模 基础建模、动画设计、模型导出 4 软件体系架构 5 Web交互设计 5.1 页面架构 5.2 初始构造 5.3 模型运用 5.4 WS通信 5.5 运行展现 6 服务支撑编码 6.1 整体调度 6.2 WS服务 6.3 C/S通信 7 系统级调试完善

PyTorch深度学习快速入门(小土堆)

文章目录 16. 神经网络的基本骨架17.卷积操作18.卷积层 16. 神经网络的基本骨架 forward: import torch from torch import nnclass Tudui(nn.Module):def __init__(self):super().__init__()def forward(self,input):outputinput1return output#创建Tudui的实例对象 tuduiTu…

【详细讲解MNN介绍,安装和编译】

🌈个人主页:程序员不想敲代码啊🌈 🏆CSDN优质创作者,CSDN实力新星,CSDN博客专家🏆 👍点赞⭐评论⭐收藏 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提…

基于Arduino IDE 野火ESP8266模块 定时器 的开发

一、delay函数实现定时 如果不需要精确到微秒级别的控制,可以使用Arduino的内置函数 millis()和delay() 来创建简单的定时器。millis()函数返回Arduino板启动后的毫秒数,而delay()函数会暂停程序的执行一段时间。 示例代码如下: delay()函数…

HarmonyOS实战开发-如何构建多种样式弹窗

介绍 本篇Codelab将介绍如何使用弹窗功能,实现四种类型弹窗。分别是:警告弹窗、自定义弹窗、日期滑动选择器弹窗、文本滑动选择器弹窗。需要完成以下功能: 点击左上角返回按钮展示警告弹窗。点击出生日期展示日期滑动选择器弹窗。点击性别展…

electron+VUE Browserwindow与webview通信

仅做记录 前言: electronVUEVITE框架,用的是VUE3.0 主进程定义:用于接收webview发送的消息 ipcMain.on(MyWebviewMessage, (event, message) > {logger.info(收到webmsg message)//转发给渲染进程}) porelaod/webPreload.js定义 cons…

Qt+OpenGL入门教程(二)——OpenGL渲染管线

渲染管线是图形学不可或缺的,在学习它之前,我们先了解一下什么是管线? 管线/流水线 当我们谈到管线时,我们指的是一个由多个阶段组成的过程,每个阶段都完成任务的一部分。在现实世界中,流水线的概念在许多…

vue实现文字一个字一个字的显示(开箱即用)

图示&#xff1a; 核心代码 Vue.prototype.$showHtml function (str, haveCallback null) {let timeFlag let abcStr for (let i 0; i < str.length; i) {(function (i) {timeFlag setTimeout(function () {abcStr str[i]haveCallback(abcStr)if ((i 1) str.length…

C# NumericUpDown 控件正整数输入控制

用到了控件的 KeyPress 和 KeyUp事件。 KeyPress 中控制输入“点、空格&#xff0c;负号”&#xff1b; KeyUp 中防止删空&#xff0c;以及防止输入超过最大值或最小值 。 private void nudStart_KeyPress(object sender, KeyPressEventArgs e){numericUpDownKeyPress(sender…

把组合损失中的权重设置为可学习参数

目前的需求是&#xff1a;有一个模型&#xff0c;准备使用组合损失&#xff0c;其中有2个或者多个损失函数。准备对其进行加权并线性叠加。但想让这些权重进行自我学习&#xff0c;更新迭代成最优加权组合。 目录 1、构建组合损失类 2、调用组合损失类 3、为其构建优化器 …

HiRoPE、MoDiTalker、RecDiffusion、DreamSalon、InterDreamer、BAMM

本文首发于公众号&#xff1a;机器感知 HiRoPE、MoDiTalker、RecDiffusion、DreamSalon、InterDreamer、BAMM Lift3D: Zero-Shot Lifting of Any 2D Vision Model to 3D In recent years, there has been an explosion of 2D vision models for numerous tasks such as seman…

利用lidar生成深度图

前言 目前&#xff0c;深度图像的获取方法有&#xff1a;激光雷达深度成像法、计算机立体视觉成像、坐标测量机法、莫尔条纹法、结构光法等。针对深度图像的研究重点主要集中在以下几个方面&#xff1a;深度图像的分割技术&#xff0c;深度图像的边缘检测技术&#xff0c;基于…

HarmonyOS实战开发-实现自定义弹窗

介绍 本篇Codelab基于ArkTS的声明式开发范式实现了三种不同的弹窗&#xff0c;第一种直接使用公共组件&#xff0c;后两种使用CustomDialogController实现自定义弹窗&#xff0c;效果如图所示 相关概念 AlertDialog&#xff1a;警告弹窗&#xff0c;可设置文本内容和响应回调…

网络七层模型:理解网络通信的架构(〇)

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

【QT入门】 QListWidget各种常见用法详解之列表模式

往期回顾 【QT入门】 Qt代码创建布局之setLayout使用-CSDN博客 【QT入门】 Qt代码创建布局之多重布局变换与布局删除技巧-CSDN博客 【QT入门】 QTabWidget各种常见用法详解-CSDN博客 【QT入门】 QListWidget各种常见用法详解之列表模式 QListWidget有列表和图标两种显示模式&a…

数据结构刷题篇 之 【力扣二叉树基础OJ】详细讲解(含每道题链接及递归图解)

有没有一起拼用银行卡的&#xff0c;取钱的时候我用&#xff0c;存钱的时候你用 1、相同的树 难度等级&#xff1a;⭐ 直达链接&#xff1a;相同的树 2、单值二叉树 难度等级&#xff1a;⭐ 直达链接&#xff1a;单值二叉树 3、对称二叉树 难度等级&#xff1a;⭐⭐ 直达…