一、注册阿里云
二、申请试用资格/购买算力
截止时间2024/04/24依然可以申请试用,额度是三个月时间,5000算力,具体能用多久看个人
三、申请文件存储服务
非必须,如果没有大型模型(文件大小超过5G)需要上传,可以不申请,如需申请,白嫖的建议选择OSS而不是NAS,原因下面配置的时候会说
四、开通人工智能平台PAI
找不到PAI入口可以直接在搜索框搜索
//
//
//
点击立即开通
//
//
//
开通时需要注意选择region地区,每个地区的PAI工作空间是互相独立的
//
//
//
点击左侧交互式建模(DSW)进入控制台
//
//
//
点击创建实例
//
//
//
选择GPU规格,白嫖选择支持资源包抵扣的配置,付费购买的随意
镜像选择stable diffusion webui develop pytorch2.0,其余配置参数保持默认,如不需要关联OSS,直接启动即可使用,如需配置OSS关联数据集,往下看步骤五
五、启动/安装stable diffusion
摘自阿里云官方文档
按照顺序输入下列代码基本可以成功启动
点击查看代码
import os
! apt update
! apt install -y aria2
def aria2(url, filename, d):
!aria2c --console-log-level=error -c -x 16 -s 16 {url} -o {filename} -d {d}
url_prefix = {
"cn-shanghai": "http://pai-vision-data-sh.oss-cn-shanghai-internal.aliyuncs.com",
"cn-hangzhou": "http://pai-vision-data-hz2.oss-cn-hangzhou-internal.aliyuncs.com",
"cn-shenzhen": "http://pai-vision-data-sz.oss-cn-shenzhen-internal.aliyuncs.com",
"cn-beijing": "http://pai-vision-data-bj.oss-cn-beijing-internal.aliyuncs.com",
}
dsw_region = os.environ.get("dsw_region")
prefix = url_prefix[dsw_region] if dsw_region in url_prefix else "http://pai-vision-data-sh.oss-cn-shanghai.aliyuncs.com"
webui_url = f"{prefix}/aigc-data/code/stable-diffusion-webui-v1.tar.gz"
aria2(webui_url, webui_url.split("/")[-1], "./")
点击查看代码
! tar -xf stable-diffusion-webui-v1.tar.gz
! cd stable-diffusion-webui && wget -c http://pai-vision-data-sh.oss-cn-shanghai.aliyuncs.com/aigc-data/webui_config/config.json
点击查看代码
model_url = f"{prefix}/aigc-data/sd_models/Counterfeit-V2.5_fp16.safetensors"
aria2(model_url, model_url.split("/")[-1], "stable-diffusion-webui/models/Stable-diffusion")
vae_url = f"{prefix}/aigc-data/vae_models/Counterfeit-V2.5.vae.pt"
aria2(vae_url, vae_url.split("/")[-1], "stable-diffusion-webui/models/VAE")
embedding_url = f"{prefix}/aigc-data/embedding/EasyNegative.safetensors"
aria2(embedding_url, embedding_url.split("/")[-1], "stable-diffusion-webui/embeddings")
clip_url = f"{prefix}/aigc-data/clip/ViT-L-14.pt"
! mkdir -p /root/.cache/clip
aria2(clip_url, clip_url.split("/")[-1], " /root/.cache/clip")
bert_url = f"{prefix}/aigc-data/hug_model/models--bert-base-uncased.tar.gz"
aria2(bert_url, bert_url.split("/")[-1], "~/.cache/huggingface/hub")
! cd ~/.cache/huggingface/hub && tar -xvf models--bert-base-uncased.tar.gz
点击查看代码
! cd stable-diffusion-webui && python launch.py --no-half-vae --xformers
http://127.0.0.1:7868 就是访问地址,点击即可打开stable diffusion界面,官方给的版本是基础配置,只有一个大模型可用,controlNet,AnimeDIFF等插件和loRA,embedding这些均没有,需要自行下载或者配置
少于5GB的模型可以通过Data Science Workshop界面把文件拖到对应文件夹下即可上传,阿里云提供的文件中转站上传速度还可以
超过5GB的文件只能通过OSS或者NAS上传后再下载到对应文件夹内,选OSS存储而不是NAS的原因是NAS有极高概率提示资源分配额度不足,导致DSW实例无法启动。OSS配置继续往下看
附一、OSS对象存储配置
搜索OSS进入对象存储OSS控制台
//
//
//
左侧找到bucket列表,点击创建bucket
//
//
//
选择自定义创建,地域选择与你PAI空间相同的地域,本地冗余存储,其他保持默认,(主要我对oss不是很熟,干脆默认
//
//
//
创建完成后,返回PAI-DSW控制台,在左侧菜单栏找到数据集
//
//
//
创建数据集,选择从阿里云云产品创建,数据存储OSS,从阿里云云存储创建可以选择已经创建的Bucket,其他参数默认
//
//
//
回到DSW控制台,创建或重新配置DSW实例,存储配置一栏,共享数据集选择已经创建的数据集,挂载路径一般写/mnt/data,创建/保存
附二、oss访问权限配置
按照[官方文档]逐步配置,配置成功后一定要保存,AccessKey ID和AccessKey Secret(https://help.aliyun.com/zh/ram/user-guide/create-a-ram-user?spm=5176.28366559.help.dexternal.211e336ar96lZ9 "官方文档")
附三、oss上传配置(以window为例
下载window版ossutil,安装[文档]步骤操作,(https://help.aliyun.com/zh/oss/developer-reference/install-ossutil?spm=a2c4g.11186623.0.i21#4c30f1a48ce9y "文档")均为默认即可,AccessKey ID和AccessKey Secret填写创建RAM用户时生成的即可,ststoken可以回车跳过不填
window上传文件到oss命令:
ossutil64.exe cp 上传的文件的绝对路径 oss路径
例如:
ossutil64.exe cp C:\Users\demo.txt oss://my-bucket/ 把c盘users文件夹下面的demo.txt上传到oss名为my-bucket的bucket的跟目录下
附四、oss上传后如何下载到stable diffusion
打开Data Science Workshop界面,选择Terminal命令行,如果关联数据集成功,会显示你关联的数据集名称
举个例子:例如配置挂载的oss数据集路径为/mnt/data/, 把oss数据集下的demo.txt下载到myData文件夹
输入命令 cd myData 进入对应的文件夹内
输入 cp /mnt/data/demo.txt .