在Mac m1 本地安装Stable Diffusion

一、前言

本地安装Stable Diffusion比较常见的版本有: automatic1111 invokeai

  • invokeai的功能相对简单一些,但对配置要求也最低。
  • automatic1111 功能比较完善,github上有6万多人收藏,受欢迎读比较高。

本文是在M1芯片的苹果电脑上安装automatic1111版的Stable Diffusion的教程。

二、安装步骤

官方已经有比较完善的 安装文档 ,本文是对官方文档进一步的补充,可以按照下面文档进行操作可以节省安装时间,同时对比官方文档进行参考。

下面的各种操作需要再终端上执行,程序员用的比较多,把各种命令贴上去,按回车就会执行。 image.png 例如,下面一些例子:

  • pwd:显示当前所在的目录(如下图,当前目录是/Users/wxm)
  • ls:显示当前目录里有哪些文件
  • cd:切换到某个目录。后面跟着目录名(如下图,是切换到Study目录)

image.png

详细步骤如下:

(1)安装Homebrew

  • 说明:

Homebrew是一款Mac OS平台下的软件包管理工具。可以用于安装各种软件包。用于在步骤4中安装运行Stable Diffusion所依赖的各种软件

  • 操作:

参见Homebrew的官网: https://brew.sh/index_zh-cn ,复制粘贴命令到终端,回车执行 image.png

(2)给Homebrew加速

  • 说明:

使用Homebrew安装软件包的时候默认是从国外网站下载,会很慢,可以替换成更快的下载地址。

  • 操作:

参见: HomeBrew 安装软件慢的解决方法

(3)安装Command Line Tools

  • 说明:

步骤4会依赖Command Line Tools。先检查下是否已经安装Comman Line Tools,检查一下/Library/Developer/CommandLineTools文件夹是否存在,已存在表名已安装

  • 操作:

访问: https://developer.apple.com/download/all/?q=Command%20Line%20Tools ,选择合适的版本,点击View Details,下载对应的dmg文件进行安装。(如果选最新的版本安装时候提示操作系统不兼容,可以选择底一点的版本)image.png

(4)用Homebrew安装运行Stable Diffusion所依赖的软件

  • 说明:

安装依赖的软件:cmake、protobuf、rust、python@3.10、git、wget

  • 操作:

打开终端运行:brew install cmake protobuf rust python@3.10 git wget image.png

(5)下载stable-diffusion-webui:

  • 说明:
  • 操作:

打开终端运行:git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui image.png 上面的命令会在当前目录下创建一个新目录:stable-diffusion-webui,然后从 https://github.com/AUTOMATIC1111/stable-diffusion-webui 下载源码,放在stable-diffusion-webui目录里 image.png

(6)下载模型文件

  • 说明

参见官方文档: https://github.com/AUTOMATIC1111/stable-diffusion-webui/wiki/Installation-on-Apple-Silicon#downloading-stable-diffusion-models 。模型文件比较大,有好几个模型可以选择,按需选择一个。

  • 操作:
    • 点击下载模型 Stable Diffusion 1.5 Inpainting,下载地址: sd-v1-5-inpainting.ckpt
    • 将模型文件放在步骤5下载的stable-diffusion-webui目录中的models/Stable-diffusion目录里。

image.png

(7)启动Stable Diffusion

  • 说明

前面做了很多准备步骤,下面可以启动使用程序了。

  • 操作

在终端里进入stable-diffusion-webui目录,目录里有个webui.sh文件,在终端里直接运行它:./webui.sh (回车运行): image.png 首次启动会下载很多东西,当出现 “Running on local URL: http://127.0.0.1:7860 ” 表示启动成功: image.png 在浏览器访问上 http://127.0.0.1:7860 ,就可以使用程序了! image.png

(8)关闭Stable Diffusion

  • 在上面启动程序的终端上,同时按:control 和 C,程序就停止了。

image.png