[AI] Mac Run Stable Diffusion GUI - stable-diffusion-webui

date
Feb 29, 2024
slug
ai-mac-stable-diffusion-webui
status
Published
summary
AGI技能
tags
ai
type
Post
URL
 
本文档提供了如何在Mac上安装和运行Stable Diffusion GUI的详细步骤,包括如何下载和安装SDXL 1.0模型,如何查找和下载其他模型,以及如何安装和使用扩展。同时,也提供了如何使用提示词(Prompt)来指导AI生成图片的技巧和注意事项,以及如何调整提示词的权重和其他参数以优化生成结果。此外,还提供了一些常见问题的解决方案和使用教程。
 
 

Summary

 

安装过程


cd ~/tmp_qh/data/
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui


cd ./stable-diffusion-webui

# using proxy
proxy_on
virtualenv --python=python3.10 .venv
source .venv/bin/activate

# if error
pip install "httpx[socks]"

# run
./webui.sh
# browser open http://127.0.0.1:7860/


# update
git pull

# models
https://stable-diffusion-art.com/sdxl-model/
# base
https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/tree/main
# refiner
https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0

Download and install SDXL 1.0 models

You can find the SDXL base, refiner and VAE models in the following repository.
Here are the direct download links of the safetensor model files. You typically don’t need to download the VAE file unless you plan to try out different ones.
 
 

目录

  • 主模型:
  • Extensions:stable-diffusion-webui\extensions\sd-webui-controlnet\models
.
├── models # 下载的模型存放在此处
│   ├── Lora # 📁 Lora 模型
│   │   ├── lyriel_v13.safetensors # 模型文件
│   │   └── ... # 其他模型文件
│   ├── Stable-diffusion # 📁 基础模型
│   │   ├── v1-5-pruned.ckpt # 模型文件
│   │   └── ... # 其他模型文件
│   ├── VAE # 📁 VAE 模型
│   │   ├── vae-ft-mse-840000-ema-pruned.safetensors # 模型文件
│   │   └── ... # 其他模型文件
│   └── ... # 其他
├── outputs # 🏞️ 图片输出位置
│   ├── img2img-grids # 网格图(2x2)
│   ├── img2img-images # 图生图
│   ├── txt2img-grids # 网格图(2x2)
│   ├── txt2img-images # 文字生图
│   └── ... # 其他
├── repositories # 🗑️ 缓存仓库,可删除
├── venv # 🗑️ 虚拟环境,一个独立的 Python 运行环境,可删除
├── webui-user.bat # ⚙️ Windows 启动脚本用户配置
├── webui-user.sh # ⚙️ Linux,Mac 配置环境变量,追加启动参数
├── webui.bat # 🟢  Windows 启动脚本
├── webui.sh # 🟢 Linux,Mac 启动脚本
└── ... # 其他

版本对齐Extension Models must be compatible with Base Models

  • 比如QR Code Monster 的 extension model 必须要匹配相应的 SD 的 base model才能运行

查找和下载模型

notion image

安装Extension

  • then go to controlnet model pages and download
https://github.com/Mikubill/sd-webui-controlnet.git
notion image
notion image

ControlNet

  • Extensions:stable-diffusion-webui\extensions\sd-webui-controlnet\models
  • 安装 - 如上 “安装Extension”

reference-only

notion image

使用教程

核心概念

notion image

Prompt 的基本概念

  • 提示词分为正向提示词(positive prompt)和反向提示词(negative prompt),用来告诉 AI 哪些需要,哪些不需要。

Prompt 的误区

  • Prompt 在于精确,不在于数量;用最简短的单词阐述画面,比自然语言要更有效。
  • 提升质量的描绘词绝不是无脑堆砌、越多越好。
  • 经常出现的起手式:“masterpiece” “best quality” 等,很多时候会成为提示词中的累赘。这些词语在 NovelAI 时代是有意义的,因为当时 NovelAI 训练模型时大量使用了这些词汇来对图像进行评价;但在如今,经过 Civitai 上模型作者们不断重新炼制模型,这些提示词已经很难在生图结果中展现应有的作用。

注意提示词的顺序

  • 比如景色 Tag 在前,人物就会小,相反的人物会变大或半身
  • 选择正确的顺序、语法来使用提示词,将更好、更快、更有效率地展现所想所愿的画面

视角 Prompt 推荐

Prompt 中的 Emoji

  • Prompt 支持使用 emoji,且表现力较好,对于特定的人脸表情或动作,可通过添加 emoji 图来达到效果
  • 为了防止语义偏移,优先考虑 emoji,然后少用不必要的 with 一类的复杂语法

调整提示词的权重

  • 词缀的权重默认值都是 1,从左到右依次减弱
  • 提示词权重会显著影响画面生成结果
  • 通过小括号+冒号+数字来指定提示词权重,写法如 (one girl:1.5)
  • CFG Scale图像与提示词的相关度。该值越高,提示词对最终生成结果的影响越大,契合度越高。
    • CFG 2-6:有创意,但可能太扭曲,没有遵循提示。对于简短的提示来说,可以很有趣和有用。
    • CFG 7-10:推荐用于大多数提示。创造力和引导力度之间的良好平衡。
    • CFG 10-15:当您确定提示是详细且非常清晰的,对图片内容有极明确的要求时使用。
    • CFG 16-20:除非提示非常详细,否则通常不推荐。可能影响一致性和质量。
    • CFG >20:几乎无法使用。
  • Sampling Steps 迭代步数:步骤越多,每一步图像的调整也就越小、越精确。同时也会成比例地增加生成图像所需要的时间。
    • 对于大部分采样器,迭代越多次效果越好,但超过 50 步后就收效甚微。
  • Sampling method 采样方法:不同的采样方法,对应的最佳迭代步数是不同的,在进行对比时需要综合考虑。
    • Euler a:富有创造力,不同步数可以生产出不同的图片。并且这是一个效率较高的采样方法,可以用来快速检查 prompt 效果的好坏。
    • DPM2 a Karras:适合跑真实模型,30 步以后不好把控。
    • DPM++ 2M Karras:在高步数下表现优异,步数越高细节越多。
    • DDIM:收敛快,但效率相对较低,因为需要很多 step 才能获得好的结果,适合在重绘时候使用。
    • 不同模型与采样方法搭配出的结果也不同,以上仅供参考,在进行采样方法的选择时,最好使用 X/Y/Z 图表进行对比。
  • Seed 随机种子:随机种子值很多时候对构图的影响是巨大的,这也是 SD 生图随机性的最主要来源。
    • 保持种子不变,同样的提示词和模型,保持所有参数一致的情况下,相同的种子可以多次生成(几乎)相同的图像。
    • 在确定好一个合适的画面构图时,固定种子,对细节进行进一步打磨,是最合适的做法。
    • seed: -1 保证每次都不一样
 

VAE - 滤镜微调用的模型 - 放入 models/VAE目录

notion image

set Clip Skip

notion image

问题记录

Proxy issue - 需要python3.10环境然后再以下

notion image
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

截图

notion image

© Ying Bun 2021 - 2024