当前位置: 首页 > article >正文

丹摩征文活动 | 轻松上手图像生成:FLUX.1遇上ComfyUI,让复杂变简单!

 一、背景

FLUX.1是由黑森林实验室推出的一款前沿图像生成模型,针对不同用户需求,提供了三种不同版本。

FLUX.1-pro是专为企业设计的闭源版本,拥有无与伦比的性能和生成能力。其在识别提示词、提升视觉质量、细节表现及输出多样性方面都有出色表现,特别适合需要高性能图像生成的企业用户。用户可以通过官方API访问该版本,并获得个性化的服务。

FLUX.1-dev是一个开源但限制商用的版本,是在FLUX.1-pro基础上开发的。它保留了高精度提示词识别能力,并在效率上有所优化,特别适合开发者用于研究和开发。

FLUX.1-schnell则是面向个人和本地开发者的开源可商用版本,使用Apache 2.0许可。其特点是生成速度快且内存占用低,非常适合资源有限的使用环境。

据官方数据,FLUX.1的训练参数达到了120亿,远超SD3 Medium的20亿。这使得FLUX.1-pro和FLUX.1-dev在图像质量、提示词准确性、大小适应性、布局和多样性输出方面,全面领先于市场上的主流模型,如Midjourney v6.0、DALL·E 3 (HD)和SD3-Ultra。

二、流程

1. 进入[控制台-GPU云实例](https://www.damodel.com/console/instance),点击创建实例:

2. 进入创建页面后,首先在实例配置中选择付费类型,一般短期需求可以选择按量付费或者包日,长期需求可以选择包月套餐;

其次选择GPU数量和需求的GPU型号,首次创建实例推荐选择:

   - 按量付费

   - GPU数量1

   - NVIDIA-GeForc-RTX-4090:该配置为60GB内存,24GB的显存(本次测试的LLaMA3.1 8B 版本至少需要GPU显存16G)

   接下来配置数据硬盘的大小,每个实例默认附带了50GB的数据硬盘,FLUX.1模型较大,建议扩容至150GB。

3.  继续选择安装的镜像,平台提供了一些基础镜像供快速启动,镜像中安装了对应的基础环境和框架,可通过勾选来筛选框架,这里筛选PyTorch,选择PyTorch 2.4.0。

4.  为保证安全登录,创建密钥对,输入自定义的名称,然后选择自动创建并将创建好的私钥保存的自己电脑中,以便后续本地连接使用。

5.  创建好密钥对后,选择刚刚创建好的密钥对,并点击立即创建,等待一段时间后即可启动成功!

三、实例

>  接下来将基于平台提供的JupyterLab工具,演示fp16版本的部署流程。

启动JupyterLab,并创建终端:

四、部署ComfyUI

1. 在终端中执行以下命令克隆ComfyUI代码:

# github官方代码仓库

git clone https://github.com/comfyanonymous/ComfyUI.git

# gitCode-github加速计划代码仓库

git clone https://gitcode.com/gh_mirrors/co/ComfyUI.git

2. 克隆完成后可看到如下目录:

3.  终端进入`/root/workspace/ComfyUI`目录,执行以下命令,安装ComfyUI需要的依赖:

cd ComfyUI/

pip install -r requirements.txt --ignore-installed

4.  执行以下命令,启动ComfyUI:

python main.py --listen

5.  看到服务成功启动,说明ComfyUI部署成功!

五、部署FLUX.1

> 推荐您阅读[ComfyUI官方使用FLUX.1示例](https://comfyanonymous.github.io/ComfyUI_examples/flux/),以下是基于丹摩平台的部署教程

1. 平台已预制FLUX.1相关资源,您可通过内网高速下载:

shell

# 下载完整FLUX.1-dev模型

wget http://file.s3/damodel-openfile/FLUX.1/FLUX.1-dev.tar

# 下载完整FLUX.1-schnell模型

wget http://file.s3/damodel-openfile/FLUX.1/FLUX.1-dev.tar

# 下载完整Clip模型

wget http://file.s3/damodel-openfile/FLUX.1/flux_text_encoders.tar

2. 此处以FLUX.1-dev为例演示,首先下载完整FLUX.1-dev模型:

wget http://file.s3/damodel-openfile/FLUX.1/FLUX.1-dev.tar

3.  解压文件:

tar -xf FLUX.1-dev.tar

4.  解压后完成后可看到如下目录:

5. 把其中的一些文件移至ComfyUI指定目录:

   - 大模型文件`flux1-dev.safetensors`需要移动至`/root/workspace/ComfyUI/models/unet/`文件夹中

   - vae文件`ae.safetensors`需移动至`/root/workspace/ComfyUI/models/vae/`文件夹中

# 进入解压后的文件夹

cd /root/workspace/FLUX.1-dev

# 移动文件

mv flux1-dev.safetensors /root/workspace/ComfyUI/models/unet/

mv ae.safetensors /root/workspace/ComfyUI/models/vae/

6.  接下来下载完整Clip模型:

# 进入JupyterLab根目录

cd /root/workspace

# 下载文件

wget http://file.s3/damodel-openfile/FLUX.1/flux_text_encoders.tar

7.  解压文件

tar -xf flux_text_encoders.tar

8.  解压后完成后可看到如下目录:

9.  把其中的一些文件移至ComfyUI指定目录:

# 进入解压后的文件夹

cd /root/workspace/flux_text_encoders

# 移动文件

mv clip_l.safetensors /root/workspace/ComfyUI/models/clip/

mv t5xxl_fp16.safetensors /root/workspace/ComfyUI/models/clip/

六、使用流程

1. 终端进入ComfyUI目录,执行以下命令,启动ComfyUI:

```bash

cd /root/workspace/ComfyUI

python main.py --listen

2.  启动成功,host为`0.0.0.0`,端口为`8188`:

Starting server

To see the GUI go to: http://0.0.0.0:8188

3.  通过丹摩平台提供的端口映射能力,把内网端口映射到公网; 进入[GPU 云实例页面](https://www.damodel.com/console/instance),点击操作-更多-访问控制:

4.  点击添加端口,添加服务对应端口:

5.  添加成功后,通过访问链接即即可打开ComfyUI交互界面:

七、展示效果


http://www.kler.cn/a/390968.html

相关文章:

  • Springboot 日志处理(非常详细)
  • 使用 Visual Studio Installer 彻底卸载 Visual Studio方法与下载
  • 【MySQL】数据库表连接简明解释
  • 机器学习基础02_特征工程
  • 【JAVA】Java基础—面向对象编程:封装—保护类的内部数据
  • 欧国联的规则,你都了解吗?
  • 小程序与 H5 的交互
  • mac 中python 安装mysqlclient 出现 ld: library ‘ssl‘ not found错误
  • Vue全栈开发旅游网项目(10)-设计用户模型
  • C++ | Leetcode C++题解之第557题反转字符串中的单词III
  • Rust使用DX11进行截图并保存
  • 逻辑的空无
  • SQL的三值逻辑
  • 基于vue框架的的汽车租赁系统34311(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
  • HTML查缺补漏
  • playwright学习记录2--定位方式
  • 【Unity/GameFramework】Start Force ——配置和表加载
  • 二分答案-整型二分—愤怒的牛-P1676 [USACO05FEB] Aggressive cows G
  • 微服务架构面试内容整理-监控与追踪-Zipkin
  • AlphaFold3中文安装教程
  • Unity类银河战士恶魔城学习总结(P117 Ice And Fire Item Effec 制作一把冰火属性的剑)
  • 练习题 - Django 4.x WWW 网址使用示例和配置方法
  • Git推送报错Authentication failed
  • 深入探讨钉钉与金蝶云星空的数据集成技术
  • 在linux上搭建一个nodejs服务_全流程
  • 如何将交叉编译配置在环境变量中