<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>AI on 个人技术随想</title>
        <link>https://www.dhao2001.com/tags/ai/</link>
        <description>Recent content in AI on 个人技术随想</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh</language>
        <lastBuildDate>Sat, 09 Aug 2025 11:00:00 +0800</lastBuildDate><atom:link href="https://www.dhao2001.com/tags/ai/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>Stable Diffusion WebUI 与 ComfyUI 安装</title>
            <link>https://www.dhao2001.com/2025/08/09/stable-diffusion-webui-comfyui-install/</link>
            <pubDate>Sat, 09 Aug 2025 11:00:00 +0800</pubDate>
            <guid>https://www.dhao2001.com/2025/08/09/stable-diffusion-webui-comfyui-install/</guid>
            <description>&lt;!-- more --&gt;&#xA;&lt;h2 id=&#34;背景知识&#34;&gt;&lt;a href=&#34;#%e8%83%8c%e6%99%af%e7%9f%a5%e8%af%86&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;背景知识&#xA;&lt;/h2&gt;&lt;p&gt;Stable Diffusion WebUI (以下简称&lt;em&gt;sd-webui&lt;/em&gt;) 和 &lt;em&gt;ComfyUI&lt;/em&gt; &lt;strong&gt;都是调用模型进行AI图片视频生成的前端&lt;/strong&gt;，并不直接提供具体模型，原则上这两个只需其一即可完成创作。&lt;/p&gt;&#xA;&lt;p&gt;至于优劣，原始&lt;em&gt;A1111&lt;/em&gt;版&lt;em&gt;sd-webui&lt;/em&gt;需要插件才能使用诸如LyCORIS之类更多的模型，在视频生产等工作上也没那么方便。&lt;em&gt;ComfyUI&lt;/em&gt; 工作流上手则需要更多一点基础知识(我觉得其实还好)。&lt;/p&gt;&#xA;&lt;h2 id=&#34;stable-diffusion-webui&#34;&gt;&lt;a href=&#34;#stable-diffusion-webui&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Stable Diffusion WebUI&#xA;&lt;/h2&gt;&lt;h3 id=&#34;系统依赖&#34;&gt;&lt;a href=&#34;#%e7%b3%bb%e7%bb%9f%e4%be%9d%e8%b5%96&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;系统依赖&#xA;&lt;/h3&gt;&lt;p&gt;作为一个AI任务，基础的CUDA组件自然是必不可少的，不再赘述。&lt;/p&gt;&#xA;&lt;p&gt;在容器Debian中，可能还需要额外安装一些组件：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo apt install bc google-perftools libgl1 libglib2.0-0 --no-install-recommends &#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;若是还有缺失的组件，莫慌，可以去&lt;a class=&#34;link&#34; href=&#34;&#34; &gt;https://packages.debian.org&lt;/a&gt;，在下面的&lt;em&gt;Search the contents of packages&lt;/em&gt;中直接搜索缺失的库文件，安装对应的包即可，基本上不需要手动编译额外库文件。&lt;/p&gt;&#xA;&lt;h3 id=&#34;设置网络&#34;&gt;&lt;a href=&#34;#%e8%ae%be%e7%bd%ae%e7%bd%91%e7%bb%9c&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;设置网络&#xA;&lt;/h3&gt;&lt;p&gt;在安装过程中，需要加载一些网络资源，需要首先设置网络访问。&lt;/p&gt;&#xA;&lt;p&gt;最简单的方法是设置一些PROXY，不过需要注意，要将&lt;code&gt;localhost&lt;/code&gt;排除在外，否则&lt;code&gt;webui.sh&lt;/code&gt;执行中会报错。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;NO_PROXY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;localhost, 127.0.0.1, ::1&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;HTTP_PROXY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:8888&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;export&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;HTTPS_PROXY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;http://127.0.0.1:8888&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h3 id=&#34;python环境准备&#34;&gt;&lt;a href=&#34;#python%e7%8e%af%e5%a2%83%e5%87%86%e5%a4%87&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Python环境准备&#xA;&lt;/h3&gt;&lt;p&gt;如果没有额外需求，将一切包袱丢给&lt;code&gt;webui.sh&lt;/code&gt;，任其自动创建所需的虚拟环境，倒也是一种懒人方法。&lt;/p&gt;&#xA;&lt;p&gt;不过，如果期望自定义配置，那额外折腾的部分也不见得麻烦。&lt;/p&gt;&#xA;&lt;p&gt;默认情况下，&lt;em&gt;sd-webui&lt;/em&gt;期望的Python版本是&lt;code&gt;3.10&lt;/code&gt;，对于比较新的系统，请考虑使用&lt;em&gt;Conda&lt;/em&gt;等方法创建虚拟环境，并指定Python版本号。&lt;/p&gt;&#xA;&lt;p&gt;虚拟环境激活后，&lt;em&gt;sd-webui&lt;/em&gt;就会使用检测到的Python虚拟环境。&lt;/p&gt;&#xA;&lt;blockquote class=&#34;alert alert-note&#34;&gt;&#xA;        &lt;div class=&#34;alert-header&#34;&gt;&#xA;            &lt;span class=&#34;alert-icon&#34;&gt;📝&lt;/span&gt;&#xA;            &lt;span class=&#34;alert-title&#34;&gt;备注&lt;/span&gt;&#xA;        &lt;/div&gt;&#xA;        &lt;div class=&#34;alert-body&#34;&gt;&#xA;            &lt;h4 id=&#34;使用uv管理环境&#34;&gt;&lt;a href=&#34;#%e4%bd%bf%e7%94%a8uv%e7%ae%a1%e7%90%86%e7%8e%af%e5%a2%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;使用uv管理环境&#xA;&lt;/h4&gt;&lt;p&gt;更激进一点，如果使用&lt;code&gt;uv&lt;/code&gt;作为&lt;code&gt;pip&lt;/code&gt;的替代品，情况又略有不同，因为&lt;em&gt;sd-webui&lt;/em&gt;直接通过调用&lt;code&gt;pip&lt;/code&gt;模块安装所需组件，但&lt;code&gt;uv&lt;/code&gt;创建的虚拟环境并没有提供&lt;code&gt;pip&lt;/code&gt;模块。&lt;/p&gt;&#xA;&lt;p&gt;幸好，安装过程也不麻烦，只需要不断重复运行&lt;code&gt;webui.sh&lt;/code&gt;，把报错的&lt;code&gt;pip install&lt;/code&gt;命令复制出来，直接改成&lt;code&gt;uv pip install&lt;/code&gt;并执行即可。&lt;/p&gt;&#xA;&lt;p&gt;需要注意，&lt;code&gt;uv pip install&lt;/code&gt;没有&lt;code&gt;--prefer-binary&lt;/code&gt;，似乎直接省略也无伤大雅。&lt;/p&gt;&#xA;        &lt;/div&gt;&#xA;    &lt;/blockquote&gt;&#xA;&lt;h3 id=&#34;克隆环境&#34;&gt;&lt;a href=&#34;#%e5%85%8b%e9%9a%86%e7%8e%af%e5%a2%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;克隆环境&#xA;&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h3 id=&#34;xformers&#34;&gt;&lt;a href=&#34;#xformers&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;xformers&#xA;&lt;/h3&gt;&lt;p&gt;如果使用的是&lt;code&gt;uv&lt;/code&gt;，那其实很好办，&lt;code&gt;uv&lt;/code&gt;能自动处理&lt;code&gt;xformers&lt;/code&gt;和&lt;code&gt;torch&lt;/code&gt;的兼容关系，只需要在安装&lt;code&gt;torch&lt;/code&gt;的时候一并安装即可。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv pip install &lt;span class=&#34;s2&#34;&gt;&amp;#34;numpy&amp;lt;2&amp;#34;&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;torch&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;2.1.2 &lt;span class=&#34;nv&#34;&gt;torchvision&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;0.16.2 xformers --extra-index-url https://download.pytorch.org/whl/cu121&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;如果使用的是&lt;code&gt;pip&lt;/code&gt;，在无法自动匹配正确版本，或是&lt;code&gt;pip&lt;/code&gt;动了卸载torch的心时，则需要亲自去&lt;a class=&#34;link&#34; href=&#34;https://github.com/facebookresearch/xformers/releases&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Releases · facebookresearch/xformers · GitHub&lt;/a&gt;翻一下时间线，寻找和环境中torch版本匹配的小版本，然后指定版本号手动安装。&lt;/p&gt;&#xA;&lt;h3 id=&#34;模型文件&#34;&gt;&lt;a href=&#34;#%e6%a8%a1%e5%9e%8b%e6%96%87%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;模型文件&#xA;&lt;/h3&gt;&lt;p&gt;把模型文件放到对应的&lt;code&gt;models/Stable-diffusion/&lt;/code&gt;, &lt;code&gt;models/VAE/&lt;/code&gt;, 还有&lt;code&gt;models/Lora/&lt;/code&gt;文件夹下，就可以了。&lt;/p&gt;&#xA;&lt;h3 id=&#34;一些插件&#34;&gt;&lt;a href=&#34;#%e4%b8%80%e4%ba%9b%e6%8f%92%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;一些插件&#xA;&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone &lt;span class=&#34;s2&#34;&gt;&amp;#34;https://github.com/Physton/sd-webui-prompt-all-in-one.git&amp;#34;&lt;/span&gt; extensions/sd-webui-prompt-all-in-one&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim extensions/sd-webui-prompt-all-in-one/install.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim extensions/sd-webui-prompt-all-in-one/scripts/physton_prompt/packages.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv pip install chardet PyExecJS lxml pathos cryptography&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone &lt;span class=&#34;s2&#34;&gt;&amp;#34;https://github.com/DominikDoom/a1111-sd-webui-tagcomplete.git&amp;#34;&lt;/span&gt; extensions/a1111-sd-webui-tagcomplete&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/CompVis/taming-transformers.git repositories/taming-transformers&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/hako-mikan/sd-webui-regional-prompter.git extensions/sd-webui-regional-prompter&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/pkuliyi2015/multidiffusion-upscaler-for-automatic1111.git extensions/multidiffusion-upscaler-for-automatic1111&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/Mikubill/sd-webui-controlnet.git extensions/sd-webui-controlnet&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/dtlnor/stable-diffusion-webui-localization-zh_CN.git extensions/stable-diffusion-webui-localization-zh_CN&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/AlUlkesh/stable-diffusion-webui-images-browser.git extensions/stable-diffusion-webui-images-browser&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/arenasys/stable-diffusion-webui-model-toolkit.git extensions/stable-diffusion-webui-model-toolkit&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h3 id=&#34;启动&#34;&gt;&lt;a href=&#34;#%e5%90%af%e5%8a%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;启动！&#xA;&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./webui.sh&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h2 id=&#34;comfyui&#34;&gt;&lt;a href=&#34;#comfyui&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;ComfyUI&#xA;&lt;/h2&gt;&lt;h3 id=&#34;克隆环境-1&#34;&gt;&lt;a href=&#34;#%e5%85%8b%e9%9a%86%e7%8e%af%e5%a2%83-1&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;克隆环境&#xA;&lt;/h3&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/comfyanonymous/ComfyUI.git&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h3 id=&#34;安装虚拟环境&#34;&gt;&lt;a href=&#34;#%e5%ae%89%e8%a3%85%e8%99%9a%e6%8b%9f%e7%8e%af%e5%a2%83&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;安装虚拟环境&#xA;&lt;/h3&gt;&lt;p&gt;如果使用的是&lt;code&gt;uv&lt;/code&gt;，那其实很好办，&lt;code&gt;uv&lt;/code&gt;能自动处理&lt;code&gt;xformers&lt;/code&gt;和&lt;code&gt;torch&lt;/code&gt;的兼容关系，只需要在安装&lt;code&gt;torch&lt;/code&gt;的时候一并安装即可。&lt;/p&gt;&#xA;&lt;p&gt;和 &lt;em&gt;A1111&lt;/em&gt; 的 &lt;em&gt;sd-webui&lt;/em&gt; 不同，&lt;strong&gt;ComfyUI所需的Python依赖项均已提供在&lt;code&gt;requirements.txt&lt;/code&gt;中。&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;不过，默认的&lt;code&gt;requirements.txt&lt;/code&gt;没有定义&lt;code&gt;torch&lt;/code&gt;的版本，也没有定义&lt;code&gt;xformers&lt;/code&gt;依赖项（&lt;code&gt;xformers&lt;/code&gt;能大幅减少显存消耗）。所以，我们可以稍微修改一下。&lt;/p&gt;&#xA;&lt;p&gt;ComfyUI对任意新版&lt;code&gt;torch&lt;/code&gt;的兼容性都比较好，所以我们可以去&lt;a class=&#34;link&#34; href=&#34;https://pytorch.org/get-started/locally/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;pytorch官网&lt;/a&gt;，找到自己适合的&lt;code&gt;torch&lt;/code&gt;版本，将版本信息写到&lt;code&gt;requirements.txt&lt;/code&gt;中。同时，加上&lt;code&gt;xformers&lt;/code&gt;依赖项。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-diff&#34; data-lang=&#34;diff&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-torch&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+torch==2.5.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-torchvision&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+torchvision==0.20.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-torchaudio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+torchaudio==2.5.1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+xformers&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;其他就都不用管了。直接创建一个虚拟环境，然后开装！&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv venv venv -p 3.12&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;source&lt;/span&gt; venv/bin/activate&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uv pip install -r requirements.txt --extra-index-url https://download.pytorch.org/whl/cu121&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;h3 id=&#34;模型文件复用&#34;&gt;&lt;a href=&#34;#%e6%a8%a1%e5%9e%8b%e6%96%87%e4%bb%b6%e5%a4%8d%e7%94%a8&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;模型文件复用&#xA;&lt;/h3&gt;&lt;p&gt;装完环境后，如果原本安装有&lt;em&gt;sd-webui&lt;/em&gt;，还有一大堆模型文件，不想将模型文件再复制一份？可以直接将&lt;code&gt;ComfyUI&lt;/code&gt;目录下的&lt;code&gt;extra_model_paths.yaml.example&lt;/code&gt;复制一份，命名为&lt;code&gt;extra_model_paths.yaml&lt;/code&gt;，然后按照里面的提示进行编辑，就可以指示&lt;em&gt;ComfyUI&lt;/em&gt;前往&lt;em&gt;sd-webui&lt;/em&gt;的目录搜索加载Stable Diffusion模型检查点了。&lt;/p&gt;&#xA;&lt;h3 id=&#34;nginx反向代理&#34;&gt;&lt;a href=&#34;#nginx%e5%8f%8d%e5%90%91%e4%bb%a3%e7%90%86&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Nginx反向代理&#xA;&lt;/h3&gt;&lt;p&gt;如果在使用Nginx反向代理ComfyUI，并在保存工作流时遇到报错: &lt;code&gt;Error storing user data file &#39;workflows/xxx&#39;: 405&lt;/code&gt;，请检查Nginx配置文件，看&lt;code&gt;proxy_pass&lt;/code&gt;末尾是否存在斜杠。&lt;/p&gt;&#xA;&lt;p&gt;如果存在斜杠，请将其删除。&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;&#xA;&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;7&#xA;&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;8&#xA;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&#xA;&lt;td class=&#34;lntd&#34;&gt;&#xA;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-diff&#34; data-lang=&#34;diff&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;location / {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 这是不OK的！&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gd&#34;&gt;-    proxy_pass         http://127.0.0.1:8188/;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;# 这是OK的！&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;gi&#34;&gt;+    proxy_pass         http://127.0.0.1:8188;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&lt;p&gt;参考: &lt;a class=&#34;link&#34; href=&#34;https://github.com/Comfy-Org/ComfyUI_frontend/issues/1677&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;[Bug]: Save workflow 405(Method Not Allowed) When using Nginx reverse&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;提示词插件&#34;&gt;&lt;a href=&#34;#%e6%8f%90%e7%a4%ba%e8%af%8d%e6%8f%92%e4%bb%b6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;提示词插件&#xA;&lt;/h3&gt;&lt;p&gt;手写提示词太痛苦，尤其是习惯了&lt;em&gt;sd-webui&lt;/em&gt;的&lt;a class=&#34;link&#34; href=&#34;https://github.com/Physton/sd-webui-prompt-all-in-one&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;sd-webui-prompt-all-in-one&lt;/a&gt;插件后。&lt;/p&gt;&#xA;&lt;p&gt;幸好，ComfyUI也有类似的插件，叫&lt;a class=&#34;link&#34; href=&#34;https://github.com/weilin9999/WeiLin-Comfyui-Tools&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;WeiLin-Comfyui-Tools&lt;/a&gt;。只需要&lt;code&gt;git clone&lt;/code&gt;进&lt;code&gt;ComfyUI/custom_nodes&lt;/code&gt;，然后根据该插件的&lt;code&gt;requirements.txt&lt;/code&gt;补齐Python依赖，在ComfyUI中就可以使用类似的Prompt编辑器了。&lt;/p&gt;&#xA;&lt;p&gt;当然，要是不喜欢，也可以用原来&lt;code&gt;all-in-one&lt;/code&gt;插件的独立版本&lt;a class=&#34;link&#34; href=&#34;https://github.com/Physton/sd-webui-prompt-all-in-one-app&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;sd-webui-prompt-all-in-one-app&lt;/a&gt;，可以作为一个独立的Web应用运行。&lt;/p&gt;&#xA;</description>
        </item></channel>
</rss>
