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

使用 RunPod GPU

RunPod 是提供 GPU 资源的一个平台,可以在平台上租 GPU 按小时计费。支持所有主流的 GPU,价格也还好。本文将介绍如何在 RunPod 启动 Notebook 运行模型,模型使用 Flux UpScaler,显存需求大于 24 G。登陆网站,注册并充值,https://www.runpod.io/

在这里插入图片描述

创建 POD

选择 GPU 和 Docker 镜像,镜像选择 runpod/pytorch:2.4.0-py3.11-cuda12.4.1-devel-ubuntu22.04。
在这里插入图片描述
默认硬盘只有 20 G,如果模型很大,需要进行修改存储尺寸,点击 Edit Template,存储是要收费的,公用就可以。
在这里插入图片描述

启动Pod

安装需要的依赖

!pip install transformers diffusers accelerate protobuf sentencepiece matplotlib

UpScale

代码来自huggging face 的例子,https://huggingface.co/jasperai/Flux.1-dev-Controlnet-Upscaler

import torch
from diffusers.utils import load_image
from diffusers import FluxControlNetModel
from diffusers.pipelines import FluxControlNetPipeline
from huggingface_hub import loginlogin(token = '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')
from huggingface_hub import snapshot_download
flux = snapshot_download("black-forest-labs/FLUX.1-dev",local_dir="./flux")
upscaler = snapshot_download("jasperai/Flux.1-dev-Controlnet-Upscaler",local_dir="./flux")
# Load pipeline
controlnet = FluxControlNetModel.from_pretrained(upscaler,torch_dtype=torch.bfloat16
)
pipe = FluxControlNetPipeline.from_pretrained(flux,controlnet=controlnet,torch_dtype=torch.bfloat16
)
pipe.to("cuda")# Load a control image
control_image = load_image("https://huggingface.co/jasperai/Flux.1-dev-Controlnet-Upscaler/resolve/main/examples/input.jpg"
)w, h = control_image.size# Upscale x4
control_image = control_image.resize((w * 4, h * 4))image = pipe(prompt="", control_image=control_image,controlnet_conditioning_scale=0.6,num_inference_steps=28, guidance_scale=3.5,height=control_image.size[1],width=control_image.size[0]
).images[0]
image

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

import requests
from PIL import Image
from io import BytesIO
import matplotlib.pyplot as plt# URL of the image
url = "https://huggingface.co/jasperai/Flux.1-dev-Controlnet-Upscaler/resolve/main/examples/input.jpg"# Send a GET request to the URL
response = requests.get(url)# Check if the request was successful
if response.status_code == 200:# Open the image from the response contentimage = Image.open(BytesIO(response.content))# Display the imageplt.imshow(image)plt.axis('off')  # Hide axesplt.show()
else:print(f"Failed to retrieve image. Status code: {response.status_code}")

在这里插入图片描述

总结

RunPod 可以支持大显存需求的模型,将 Runpod 镜像下载到本地先调试好,例如需要的类库等等,这样可以省时间,有很多平台的都 提供 GPU 租赁,原理都是相似的,就看哪家更便宜些,国内的算力平台更便宜,就是英伟达的卡不好租。


http://www.mrgr.cn/news/70922.html

相关文章:

  • 13、指向Member Function的指针
  • 【前端面试系列】JavaScript闭包
  • cmu 15-445学习笔记-5 哈希表
  • 算法基础02一高精度,前缀和,差分
  • LeetCode题练习与总结:判断子序列--392
  • 【大数据学习 | kafka高级部分】kafka的kraft集群
  • STL之vecor的使用(超详解)
  • 可编辑PPT | 指挥中心系统建设与应用方案
  • c语言数据结构与算法--简单实现栈和队列的出栈与入栈
  • 【快捷入门笔记】mysql基本操作大全-SQL数据库
  • NVR批量管理软件/平台EasyNVR多个NVR同时管理基于端-边-云架构的智能视频融合云平台
  • 通过VirtualBox虚拟机安装和调试编译好的 ReactOS
  • 项目管理全流程平台(源码+文档+部署+讲解)
  • 慌慌张张匆匆忙忙,验证新人如何稳住
  • 光流法与直接法在SLAM中的应用
  • SQL Server Cross Apply 将某列分号的值转换多行
  • Linux文件以及文件夹操作命令 以及Linux文件夹含义最简单易懂的解释 Centos
  • Generator 函数的语法和用法
  • package.json中“type“: “module“是什么含义,es6和commonjs的区别以及require和import使用场景
  • ScheduledThreadPoolExecutor 定制化线程池任务调度底层原理
  • 一文了解什么是CNAPP
  • 京东关键词API接口获取
  • SpringBoot(十一)SpringBoot上传文件
  • 【Linux系统编程】第四十五弹---线程互斥:从问题到解决,深入探索互斥量的原理与实现
  • IOT物联网低代码可视化大屏解决方案汇总
  • runOnUiThread