在Arch Liunx里只用Intel Ultra 7 155H跑stable-diffusion-webui

九仞之行 2024-08-14 13:03:01 阅读 86

引言

虽然我把<code>arch linux装在了移动硬盘里,使得我可以同时在我的轻薄本和游戏本之间运行同一个系统,并拥有一个系统级同步的开发环境,但由于我之前将stable-diffusion-webui部署在了游戏本的win11上,这就导致我无法在带着轻薄本出门时使用stable-diffusion-webui来生成一些简单的demo。我的生图需求并不高,不需要生成复杂的模型和图片,所以没必要等着回去用游戏本或者用在线模型来满足这个需求。其次,我的游戏本和轻薄本都是win11与移动硬盘上的linux组成的双系统,这次我选择将其迁移到我的arch-linux中,方便在两台电脑都跑通stable-diffusion-webui

折腾记录

第一个要解决的问题肯定是python版本问题,因为arch默认使用最新的python,

stable-diffusion-webui文档(截至博客发布前)里推荐使用 python 3.10.6, 所以我选择pyenv来管理多版本python, 使用以下命令安装pyenvpython 3.10.6

sudo pacman -S pyenv

pyenv install 3.10.6

最新版的python我尝试了会报依赖错误,

我是报了类似这个帖子的错误ERROR: Failed building wheel for tokenizers

手动装torch也报错

pip install torch==2.1.2 torchvision==0.16.2 --extra-index-url https://download.pytorch.org/whl/cu121

ERROR: Could not find a version that satisfies the requirement torch==2.1.2 (from versions: 2.2.0, 2.2.0+cu121, 2.2.1, 2.2.1+cu121, 2.2.2, 2.2.2+cu121, 2.3.0, 2.3.0+cu121, 2.3.1, 2.3.1+cu121)

Github上截至博客发布前也有相关issues

Webui not working with Python 3.12 [Bug]: · Issue #15667 · AUTOMATIC1111/stable-diffusion-webui · GitHub

系统级python降级是不可能的,我也懒得折腾,所以还是用pyenv搞一个文档推荐的python环境来解决这个问题

克隆仓库,并修改python为指定版本

git clone https://github.com/openvinotoolkit/stable-diffusion-webui.git

cd stable-diffusion-webui

alias python=/home/styunlen/.pyenv/versions/3.10.6/bin/python

alias python3=/home/styunlen/.pyenv/versions/3.10.6/bin/python

python -m venv venv

source venv/bin/activate

webui.sh中的python路径也可以手动改为以下内容

# python3 executable

# if [[ -z "${python_cmd}" ]]

# then

# python_cmd="python3"code>

# fi

python_cmd="/home/$USER/.pyenv/versions/3.10.6/bin/python"code>

接下来requirements.txt中的依赖可以使用pip安装也可以直接运行./webui.sh来自动安装

export PYTORCH_TRACING_MODE=TORCHFX

export COMMANDLINE_ARGS="--skip-torch-cuda-test --precision full --no-half" code>

./webui.sh

# 或 pip install -r requirements.txt 后运行webui.sh

模型下载太慢的话可以用下载器下载,然后复制到当前目录就行了

512X512一分钟,虽然很慢,将就用用吧。

在这里插入图片描述

保存一下启动脚本,方便启动

<code>cat << EOF > start.sh

export PYTORCH_TRACING_MODE=TORCHFX

export COMMANDLINE_ARGS="--skip-torch-cuda-test --precision full --no-half" code>

./webui.sh

EOF

参考文档

Installation on Intel Silicon · openvinotoolkit/stable-diffusion-webui Wiki · GitHub

Install and Run on AMD GPUs · AUTOMATIC1111/stable-diffusion-webui Wiki · GitHub

原文标题: 在Arch Liunx里只用Intel Ultra 7 155H跑stable-diffusion-webui

原文作者: Styunlen(九仞)

原文地址: https://styunlen.cn/archives/post-1679.html



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。