赞
踩
Layer Diffusion 是 ControlNet 作者的新作
repo地址: https://github.com/layerdiffusion/LayerDiffuse
但截止目前(2024.3.27),仅开源了Stable Diffusion WebUI (via Forge) 的部分代码与模型。
因此,想要在 ubuntu 上用最新的 Layer Diffusion 暂时只能用 SD WebUI 的 forge 版本 + layerdiffuse 插件才行。
其中 SD WebUI forge 版本可以通过 A1111 原本进行升级,主要原因是 SD WebUI forge 的 One-Click Package 是 windows 版本的,并不适配于 ubuntu。
这个部分比较简单,主要参考下文档:https://blog.csdn.net/qq_45156060/article/details/136541772#:~:text=1%20%23%20%E7%BC%96%E8%BE%91webui-user.sh%E8%84%9A%E6%9C%AC%202%20vim%20webui-user.sh%203%20%23,COMMANDLINE_ARGS%EF%BC%8C%E5%B9%B6%E5%B0%86%E5%85%B6%E4%BF%AE%E6%94%B9%E4%B8%BA%EF%BC%9A%204%20export%20%20COMMANDLINE_ARGS%3D%20%22–listen%20–share%20–enable-insecure-extension-access%22
# 首先,已经预先安装好了anaconda,在这里新建一个环境
conda create -n sdwebui python=3.10
# 安装完毕后,激活该环境
conda activate sdwebui
# 安装
# 下载stable-diffusion-webui代码
apt install wget git python3 python3-venv libgl1 libglib2.0-0
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui
bash webui.sh -f
SD WebUI forge 原本 repo: https://github.com/lllyasviel/stable-diffusion-webui-forge
在 ubuntu 上安装的话,主要参考了这个部分:https://github.com/continue-revolution/sd-webui-animatediff/blob/forge/master/docs/how-to-use.md#you-have-a1111-and-you-know-git
git remote -v
git remote add forge https://github.com/lllyasviel/stable-diffusion-webui-forge
git branch lllyasviel/main
git checkout lllyasviel/main
git fetch forge
git branch -u forge/main
git pull
git remote -v
先看下确定本地是和 A111 那个远程仓库连接上了git remote add
用于添加一个新的远程Git仓库。git branch lllyasviel/main
命令用于创建一个新的分支。git branch -u
命令用于设置上游分支,也就是追踪分支。具体设置了当前分支追踪forge
远程仓库的main
分支,这意味着将当前分支与指定的远程分支相关联,以便于后续的拉取(pull)或推送(push)操作。再补充一些可能有用的 git 操作,如果哪里弄错了,可以试着用 git branch
排查下,然后用 git reset
来与 https://github.com/lllyasviel/stable-diffusion-webui-forge 这个远程分支保持一致。
git branch
只列出本地分支。
- git branch -a
列出所有的分支,包括本地分支和远程跟踪分支
- git branch -r
只列出远程跟踪分支
- git branch -vv
查看本地分支与其上游(追踪的远程分支)之间的关系,以及相对于上游的提交状态(是否领先、落后或两者)。
git reset
命令将本地分支重置为远程分支的当前状态。这将会把本地分支的HEAD指向远程分支当前的提交,撤销所有本地分支上的提交。
确保 SD WebUI forge 是可以打开且能够正常出图的情况下,再进行 layerdiffuse 插件下载
在 Extension - install from URL - git repository 框中进行填入 https://github.com/layerdiffusion/sd-forge-layerdiffuse
刷新重启下就可以看到 LayerDiffuse 插件,选用 Enabled 就可以用起来啦
推荐 SD 1.5 模型为 https://huggingface.co/lllyasviel/fav_models/resolve/main/fav/realisticVisionV51_v51VAE.safetensors
推荐的 SDXL 模型为https://civitai.com/models/133005?modelVersionId=198530 Juggernaut XL V6 ( 注意版本号是V6, 不是 v7 v8 、 V9) https://civitai.com/models/261336?modelVersionId=295158 anima_pencil-XL 1.0.0 ( 注意版本号是 1.0.0, 不是 1.5.0)
不同的模式,有只生成透明的,也有前景+混合作为条件来生成背景图的,具体可以看看论文或 repo 里的案例。论文链接: https://arxiv.org/abs/2402.17113;repo 案例:https://github.com/layerdiffusion/sd-forge-layerdiffuse
采用一次性生成多张时,要注意 batch size 也要注意相应地调整下,比如SD1.5 From Foreground to Background 后面有个括弧提醒 need batch size 2,就要记得也更改下。
每次使用时,LayerDiffusion 的相关模型也会被自动下载,因此第一次用会需要等下,第二次用就直接加载本地模型,会快一些。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。