百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

手把手教你安装最强文生图工具ComfyUI

liuian 2024-12-06 17:22 24 浏览

ComfyUI 是一款专为稳定扩散(Stable Diffusion)设计、基于节点的高效用户界面,因其高度的可定制性,正逐渐成为广大用户的新宠。本文教你如何在 Windows 和 Mac 上安装 ComfyUI,并提供一些快速上手的小贴士。

1 ComfyUI简介

ComfyUI 是一款创新的图形用户界面(GUI),打破了传统稳定扩散界面的常规。ComfyUI 采用先进的基于节点的图像生成技术,支持构建更为复杂和个性化的工作流程。

ComfyUI 的优势

  • 轻量级:ComfyUI 仅加载必需内容,与一体化 GUI 相比,内存使用量更低,图像生成速度更快。
  • 灵活性:采用节点化设计,使构建复杂工作流程更加简单。例如,你可以轻松创建一个工作流程,生成两张不同CFG比例的图像,并直观比较它们的效果。
  • 透明直观:如果你熟悉稳定扩散技术,ComfyUI 会用直观的方式展示整个图像生成的每一个步骤,让你对每个环节都看得清清楚楚。
  • 工作流共享:无需编写繁琐的步骤说明,你可以直接保存并分享整个工作流程,让协作更加便捷。
  • 适合原型设计:开发者可以在实际部署前,快速构建和测试工作流程原型,提高开发效率。
  • 尖端特性:节点化系统让用户能够迅速接入和分享新功能,比传统GUI更加灵活和高效。

2 安装指南

在开始安装之前,有必要说明,除了本地安装,还有其他安装选项。对于偏好托管服务的用户,例如 Think Diffusion 这样的平台提供了在线托管的 ComfyUI 服务。如果你在本地安装上遇到难题,或者更倾向于使用云服务,这些在线解决方案会非常适合你。

2.1 Windows系统安装

步骤 1:安装 7-Zip

首先,需要 7-Zip 来解压 ComfyUI 文件。可从官方 7-Zip 网站下载。(https://7-zip.org/a/7z2301-x64.exe)

步骤 2:下载 ComfyUI

从官方 GitHub 仓库下载 ComfyUI 的独立版本。(https://github.com/comfyanonymous/ComfyUI/releases/download/latest/ComfyUI_windows_portable_nvidia_cu118_or_cpu.7z)

步骤 3:解压 ComfyUI

右键单击下载的文件,选择“7-Zip” > “Extract Here”。

步骤 4:下载检查点模型

ComfyUI 需要一个检查点模型才能工作。你可以下载一个,例如 DreamShaper 8 模型,或与其他稳定扩散 GUI 共享模型(下文会详细介绍)。

将模型放置在 ComfyUI_windows_portable\ComfyUI\models\checkpoints 文件夹中。

步骤 5:启动 ComfyUI

  • 如果你有 Nvidia GPU:双击 run_nvidia_gpu.bat
  • 否则:双击 run_cpu.bat

ComfyUI 会自动在你的默认网页浏览器中打开。

2.2 Mac系统安装

Mac 的安装过程稍微复杂一些,需要使用终端。

步骤 1:安装 Homebrew

打开终端并运行:

/bin/bash -c "$(curl -fsSL )"

步骤 2:安装所需软件包

运行以下命令:

brew install cmake protobuf rust python@3.10 git wget

步骤 3:克隆 ComfyUI

运行:

git clone 
cd ComfyUI

步骤 4:设置 Python 环境

python3 -m venv venv
source venv/bin/activate

步骤 5:安装 ComfyUI 依赖项

安装所需的 Python 包:

pip install torch torchvision torchaudio
pip install -r requirements.txt

步骤 6:下载稳定扩散模型

下载模型并将其放置在 models/checkpoints 目录中。

步骤 7:启动 ComfyUI

运行:

python main.py

3 模型共享设置

为了不重复拷贝大型模型文件,可以通过设置让 ComfyUI 直接使用 AUTOMATIC1111 的模型目录。

  1. 将 ComfyUI 目录中的 extra_model_paths.yaml.example 文件重命名为 extra_model_paths.yaml
  2. 打开这个新命名的文件,修改 base_path 的值,使其指向你的 AUTOMATIC1111 模型目录。
  3. 保存更改后,完全重启 ComfyUI,以便设置生效。

4 快速上手 ComfyUI

安装好 ComfyUI 后,下面是生成你的第一张图像的简单步骤:

  1. 在“加载检查点”节点中,选择一个模型。
  2. 在对应的“CLIP 文本编码”节点中,输入你的提示文本和负提示。
  3. 点击“队列提示”,开始生成图像。

5 高级技巧

ComfyUI 的强大之处在于能够构建复杂的工作流程。以下是一些高级用法,供你探索:

  • 多模型比较:通过使用多个“加载检查点”节点,你可以在同一个工作流程中对比不同模型的效果。
  • 自定义采样:尝试不同的采样节点,精细调整你的图像生成过程。
  • 图像编辑:加入图像输入节点,对现有图像进行修改或创造新变体。
  • 条件控制:利用 ControlNet 节点,对你的图像生成进行更精细的控制。
  • 动画制作:创建帧插值节点,实现流畅的动画效果。

这些高级技巧将帮助你充分发挥 ComfyUI 的潜力,创造出更加丰富多样的图像和动画。

6 故障排查

遇到问题时,可以按照以下步骤进行排查:

  1. 更新 GPU 驱动:确保你的 GPU 驱动程序是最新版本。
  2. 检查 ComfyUI 版本:确认你使用的是 ComfyUI 的最新版本。
  3. 模型文件位置:核实模型文件是否存放在正确的目录下。
  4. 查看错误信息:在终端或命令提示符窗口中查找可能出现的错误消息。

按照这些步骤操作,通常能帮助你快速定位并解决问题。

7 更新指南

ComfyUI 正在持续开发中,新功能和改进会定期推出。以下是更新步骤:

  • Windows 用户:在 update 文件夹中运行 update_comfyui.bat 脚本即可更新。
  • Mac 用户:在 ComfyUI 的目录下,先执行 git pull 命令,然后运行 pip install -r requirements.txt 来安装最新依赖。

推荐书单

《LangChain编程:从入门到实践》

LangChain为开发者提供了一套强大而灵活的工具,使其能够轻松构建和优化大模型应用。本书以简洁而实用的方式引导读者入门大模型应用开发,涵盖LangChain的核心概念、原理和高级特性,并为读者提供了在实际项目中应用LangChain的指导。本书从实际的例子出发,细致解读LangChain框架的核心模块和源码,使抽象的概念变得具体。无论你是初学者还是有经验的开发者,都能从中受益,能够将LangChain的独特之处融入自己的编程实践中。阅读本书,一起探索LangChain编程的奇妙世界吧!

相关推荐

Chrome浏览器必学实用技巧-建议收藏

谷歌Chrome是目前最流行的桌面浏览器,本文分享了一些实用的使用技巧,希望能够对大家的工作和生活提供一些助力。贴士:不同版本的Chrome,其功能或菜单可能存在细微差异。本文使用的Chrome浏览器...

如何使用 Chrome 中的检查元素工具

如何在Chrome中使用Inspect元素启动检查元素工具的最简单方法是右键单击网页上的任何内容。然后,只需单击列表底部的“检查”选项。通常,Element是默认启动的。如果没有,那么您可以...

Chromedriver 在 Python 中查看源代码的方法

Python中可以属性来查看需要爬取的网站的源代码。对应具体的是:chrome.page_source需要注意的是首先需要导入包fromselenium.webdriverimportChro...

手机怎么查看HTML 文件

在手机端实现对HTML文件(包含本地文件和网页源代码)的查看,可借助多种途径和工具。以下为详细的操作步骤和实用的工具推荐:一、本地HTML文件的查看(一)利用浏览器打开定位文件:在手机的文件管...

防止学生查看答案,竟然让Chrome禁止查看源码功能

Chrome现在是很多人的主力浏览器,用户多了需求也会很多。Chrome每天都会收到很多意见和功能需求。然而有一个需求很奇怪,要求Chrome禁止查看网页源码的功能。这是怎么回事呢?1.问题背景我们都...

如何查看网页的HTML源代码?这里提供详细步骤

每个主要的互联网浏览器都允许用户查看任何网页的HTML(超文本标记语言)源代码。以下部分包含有关在每个主要浏览器中查看源代码的多种方法的信息。引言查看网页的源代码时,服务器处理的信息和代码不会出现。例...

如何在浏览器账中查看网页的HTML源代码?

浏览html网页,查看其源代码,可以帮助我们了解该版网页的信息以及架构,每个浏览器都是允许用户查看他们访问的任何网页的HTML源代码的。以下编程狮小师妹就介绍几个常见浏览器的查看网页HTML源代码...

python基础快速入门

Python是一种简单易学且功能强大的编程语言,适合初学者入门学习,不论是就业还是做副业赚钱或者是提高自己办公效率都是不错的选择。1.安装Python下载Python:前往Python官...

Python 如何创建一个 JSON 对象

我们可以使用下面的代码来在Python中创建一个JSON对象。importjsondata={}data['key']='value'json...

牛啊牛啊:C#/.NET一行代码把实体类类型转换为Json数据字符串

前言:刚好要做一个类似Swagger那种可以快速访问api接口和演示的功能,于是就把做的思路写到包里面去,给有需要的小伙伴提供学习和参考。首先,安装1.0.10以及以上版本的Wesky.Net.Op...

基于Jackson封装Json工具类:Java对象与JSON字符串的高效转换

在现代的Web开发和API设计中,JSON(JavaScriptObjectNotation)作为一种轻量级的数据交换格式被广泛使用。它易于人阅读和编写,同时也易于机器解析和生成。在Java生态系...

Python数据持久化:JSON

编程派微信号:codingpy上周更新的《ThinkPython2e》第14章讲述了几种数据持久化的方式,包括dbm、pickle等,但是考虑到篇幅和读者等因素,并没有将各种方式都列全。本文将介绍...

js中关于json语法和json遍历问题

什么是JSON?JSON英文全称JavaScriptObjectNotationJSON是一种轻量级的数据交换格式。JSON是独立的语言*JSON易于理解。json对象使用js语法,但...

Python 使用 JsonPath 完成接口自动化测试中参数关联和数据验证

背景:接口自动化测试实现简单、成本较低、收益较高,越来越受到企业重视RESTFul风格的API设计大行其道JSON成为主流的轻量级数据交换格式痛点接口关联接口关联也称为关联参数。在应用业务接口...

Spark读取kafka复杂嵌套json的最佳实践

随着互联网的更进一步发展,信息浏览、搜索以及电子商务、互联网旅游生活产品等将生活中的流通环节在线化,对于实时性的要求进一步提升,而信息的交互和沟通正在从点对点往信息链甚至信息网的方向发展,这样必然带来...