稍微花了點時間折騰一下,廢話不多說,直接上
電腦詳細配置
windows10 家庭版
32G 內存
i5 CPU
N卡 8G 顯存
2T 硬盤
1.git 是基本配置,沒有一定要安裝,后續Stable Diffusion
會自己 clone
一些東西
https://git-scm.com/download/win
2.N卡的 CUDA ,這東西要和Pytorch
版本匹配,我安裝的是 12.3 版本,直接去官網下載安裝就可以了,C盤需要一定的空間
https://developer.nvidia.com/cuda-downloads
3.pytorch 庫, 我用的Pytorch 是目前最高版本12.1, 一定要注意 下載 GPU的版本
, 對應的python版本是310
https://download.pytorch.org/whl/torch_stable.html
*[cu121/torch-2.1.1%2Bcu121-cp310-cp310-win_amd64.whl](https://download.pytorch.org/whl/cu121/torch-2.1.1%2Bcu121-cp310-cp310-win_amd64.whl)
*[cu121/torchaudio-2.1.1%2Bcu121-cp310-cp310-win_amd64.whl](https://download.pytorch.org/whl/cu121/torchaudio-2.1.1%2Bcu121-cp310-cp310-win_amd64.whl)
*[cu121/torchvision-0.16.1%2Bcu121-cp310-cp310-win_amd64.whl](https://download.pytorch.org/whl/cu121/torchvision-0.16.1%2Bcu121-cp310-cp310-win_amd64.whl)
分別下載著3個先放到一個文件夾
準備好這些我們就可以正式開始clone 庫了
打開終端Cmd 進入預習準備的文件夾
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui
然后安裝對應的庫, 可以先查看
python --version
提示是 3.10.幾 就可以
創建一個虛擬環境隔開
python -m venv venv
進入venv目錄,編輯pyvenv.cfg配置文件,
將“include-system-site-packages = false”改為“include-system-site-packages = true”。
這一步的作用是允許虛擬環境中的 Python 解釋器訪問系統全局的 site-packages 目錄。
修改完之后,用戶進入`venv\Script目錄 `
運行`activate`文件激活虛擬運行環境。如果有其他提示 就使用 `activate.bat`
安裝一些需要的庫
pip install requirements_versions.txt
如果提示錯誤,可以試試
pip install -r requirements_versions.txt
這個過程非常慢,如果遇到卡主的問題,可以試試關閉一些輔助的上網工具
完成后,下載模型
所有環境下載好之后,我們必須要下載一個模型,模型我們一般都是去Hugging Face、C站、煉丹閣、海藝、Hotiq這些網站進行下載。
下載后的模型放在\models\Stable-diffusion文件夾中
然后運行
webui-user.bat
問題與解決
1.RuntimeError: Expected all tensors to be on the same device,
but found at least two devices, cpu and cuda:0!
這個可以通過修改webui-user.bat 啟動參數解決
set COMMANDLINE_ARGS=--precision full --no-half --lowvram --always-batch-cond-uncond --opt-split-attention
- --skip-torch-cuda-test, 這個命令就說明CUDA 不對,用不了GPU,使用這個就是使用CPU進行訓練
手寫代碼
import torch
torch.cuda.is_available()
如果返回false 就證明下載的不對
解決 下載對應的 torch
torch.__version__
然后
pip uninstall torch 下載后
pip install 下載后本地存的地址 一共有3個包
最后運行跑起來