Stable Diffusion最新版本在CentOS 9的安装与配置教程

云信安装大师
90
AI 质量分
4 5 月, 2025
2 分钟阅读
0 阅读

Stable Diffusion最新版本在CentOS 9的安装与配置教程

引言

Stable Diffusion是一款强大的AI图像生成工具,能够根据文本描述生成高质量的图像。本文将详细介绍如何在CentOS 9系统上安装和配置最新版本的Stable Diffusion,包括所有必要的依赖项和环境设置。

准备工作

在开始之前,请确保你的系统满足以下要求:

  • CentOS 9操作系统(已更新至最新版本)
  • 至少16GB RAM(推荐32GB或更高)
  • NVIDIA GPU(推荐RTX 3060或更高版本)
  • 至少10GB可用磁盘空间
  • Python 3.10或更高版本
  • Git已安装

第一步:系统更新与基础依赖安装

首先更新系统并安装基础依赖:

代码片段
# 更新系统
sudo dnf update -y

# 安装基础开发工具
sudo dnf groupinstall "Development Tools" -y

# 安装其他必要依赖
sudo dnf install -y python3-devel python3-pip git wget cmake protobuf-compiler libstdc++-devel openssl-devel zlib-devel bzip2-devel readline-devel sqlite-devel tk-devel libffi-devel xz-devel

注意事项
1. 如果使用企业版CentOS,可能需要配置额外的软件源
2. Python版本必须≥3.10,可以使用python3 --version检查

第二步:安装CUDA和cuDNN(NVIDIA GPU用户)

如果你使用NVIDIA GPU,需要安装CUDA工具包和cuDNN:

代码片段
# 添加NVIDIA CUDA仓库
sudo dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/cuda-rhel9.repo

# 安装CUDA Toolkit(以12.1版本为例)
sudo dnf module install nvidia-driver:latest-dkms -y
sudo dnf install cuda-toolkit-12-1 -y

# 设置环境变量
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

# 验证CUDA安装
nvcc --version

注意事项
1. CUDA版本应与你的GPU驱动兼容
2. cuDNN需要从NVIDIA官网手动下载并按照官方文档安装

第三步:创建Python虚拟环境

为避免与其他Python项目冲突,我们创建一个专用虚拟环境:

代码片段
# 创建虚拟环境目录并进入
mkdir ~/stable-diffusion && cd ~/stable-diffusion

# 创建Python虚拟环境(假设python3命令指向Python ≥3.10)
python3 -m venv venv

# 激活虚拟环境
source venv/bin/activate

# 升级pip和setuptools
pip install --upgrade pip setuptools wheel

原理说明
虚拟环境可以隔离项目依赖,防止不同项目间的包版本冲突。

第四步:克隆Stable Diffusion WebUI仓库并安装依赖

我们将使用流行的AUTOMATIC1111 WebUI实现:

代码片段
# 克隆仓库(如果速度慢可以尝试国内镜像源)
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui

# 安装PyTorch及相关依赖(选择适合你CUDA版本的命令)
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

# 安装其他要求(使用清华镜像源加速)
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

常见问题解决
1. 内存不足错误:添加--no-cache-dir参数减少内存使用
2. 网络问题:尝试更换pip源或使用代理

第五步:下载模型文件

Stable Diffusion需要预训练模型才能工作:

代码片段
# 创建模型目录并进入
mkdir -p models/Stable-diffusion && cd models/Stable-diffusion

# 下载官方v1.5模型(需先同意HuggingFace条款)
wget https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors -O v1-5-pruned-emaonly.safetensors

# (可选)下载其他流行模型如SDXL等...

注意事项
1. HuggingFace有时需要登录才能下载大文件,可能需要设置token
2. SDXL等大模型需要更多显存(推荐≥12GB)

第六步:启动WebUI并进行初始配置

现在可以启动Web界面进行测试:

代码片段
# 返回项目根目录并启动WebUI(首次运行会自动下载额外组件)
cd ~/stable-diffusion/stable-diffusion-webui/
python launch.py --listen --no-half --xformers --enable-insecure-extension-access --api --port=7860 

参数说明:
--listen: 允许局域网访问
--no-half: FP32精度模式(避免某些显卡兼容问题)
--xformers: 启用显存优化(需提前pip install xformers

首次启动会自动下载CLIP等组件,可能需要较长时间。

访问地址:http://服务器IP:7860

(可选)第七步:优化与高级配置

Nginx反向代理配置示例:

代码片段
server {
    listen 80;
    server_name your-domain.com;

    location / {
        proxy_pass http://127.0.0.1:7860;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Systemd服务配置示例:

创建/etc/systemd/system/sd-webui.service:

代码片段
[Unit]
Description=Stable Diffusion WebUI Service
After=network.target

[Service]
User=yourusername
WorkingDirectory=/home/yourusername/stable-diffusion/stable-diffusion-webui/
ExecStart=/home/yourusername/stable-diffusion/venv/bin/python launch.py --listen --xformers --port=7860 
Restart=always

[Install]
WantedBy=multi-user.target

然后启用服务:

代码片段
sudo systemctl daemon-reload 
sudo systemctl enable sd-webui.service 
sudo systemctl start sd-webui.service 

(可选)第八步:插件扩展与API调用示例代码

API调用示例(Python):

“`python
import requests, json, io, base64
from PIL import Image

url = “http://localhost:7860/sdapi/v1/txt2img”

payload = {
“prompt”: “a beautiful sunset over mountains, digital art”,
“negative_prompt”: “blurry, low quality”,
“steps”:

原创 高质量