公主请阅
- [1. FLUX.1的简介](#1. FLUX.1的简介)
- [2. 部署过程](#2. 部署过程)
- 如何使用?
1. FLUX.1的简介
FLUX.1 是由黑森林实验室开发的图像生成工具,分为三个版本:
-
FLUX-1-pro(闭源,付费): 最高级别的版本,提供先进的图像生成能力,支持顶级提示词识别、视觉质量、图像细节和输出多样性,目前可通过官方 API 访问,提供企业定制服务。
-
FLUX-1-dev(开源,但不商用): 与 FLUX-1-pro 接近,提供类似的图像质量和稳定性,适合开发人员学习和实验。
-
FLUX-1-schnell(开源,用于非商业用户): 面向本地开发和个人使用的轻量级版本,使用 Apache 2.0 许可发布,性能更快,内存占用更小。
FLUX 的图像质量和输出多样性与 Midjourney v6.0、DALL-E 3 等流行模型媲美,拥有极高的成像精度。
2. 部署过程
创建资源
进入控制台-GPU云实例,点击创建实例:
点击创建实例之后
我们在实例配置中选择付费类型,一般短期需求可以选择按量付费或者包日,长期需求可以选择包月套餐;
然后择GPU数量和需求的GPU型号
这里我选择的是NVIDIA-GeForc-RTX-4090(配置为60GB内存,24GB的显存)
然后配置数据硬盘的大小,每个实例默认附带了50GB的数据硬盘,FLUX.1模型较大,我建议扩容至150GB。
继续选择安装的镜像,丹摩平台提供了一些基础镜像供快速启动,镜像中安装了对应的基础环境和框架,可通过勾选来筛选框架,这里筛选PyTorch,选择PyTorch 2.4.0。
为保证安全登录,创建密钥对,输入自定义的名称,然后选择自动创建并将创建好的私钥保存的自己电脑中,以便后续本地连接使用。
点击这个创建密钥对
输入你的自定义密钥名称就行了,点击确定,你的密钥就创建好了
然后我们选择我们刚刚创建的密钥然后点击立即创建就行了
稍等几分钟这个实例就创建好了,不要退出下面的页面
点击下面的黄色的字我们就能进入特定的网址进行操作了
点击进去,然后我们选择这个
这个就相当于一个云服务器,我们在里面输入Linux命令进行一系列的操作
ComfyUI的部署操作
我们依次在系统中输入以下的命令
Python
# github官方代码仓库
git clone https://github.com/comfyanonymous/ComfyUI.git
# gitCode-github加速计划代码仓库
git clone https://gitcode.com/gh_mirrors/co/ComfyUI.git
输入完成就是下面的样子了
这个命令的作用就是在终端中克隆出仓库存放对应的代码
克隆中,这里会不停的闪烁,我们是不需要进行操作的,等待克隆完成就行了,时间可能很长,但是不要急
下面就是显示克隆仓库成功了
然后我们输入第二个命令
克隆完成之后,我们可以看到左边的文件栏是这样的
然后我们进行后续的操作
我们cd到ComfyUI这个目录执行以下命令,安装ComfyUI需要的依赖:
Python
cd ComfyUI/
pip install -r requirements.txt --ignore-installed
执行以下命令,启动ComfyUI:
Python
python main.py --listen
如果显示下面的成功的样式的话,看到服务成功启动,说明ComfyUI部署成功!
部署FLUX.1
Python
# 下载完整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
从上面的命令随便选择一个进行安装就行了,我们选择的是第一个FLUX.1-dev模型
下载好这个模型之后,我们输入下面的命令进行解压的操作
Python
tar -xf FLUX.1-dev.tar
然后我们可以看到左侧的文件栏的状态
根据需求我们需要把其中的一些文件移至ComfyUI指定目录:
输入下面的命令进行操作
Python
# 进入解压后的文件夹
cd /root/workspace/FLUX.1-dev
# 移动文件
mv flux1-dev.safetensors /root/workspace/ComfyUI/models/unet/
mv ae.safetensors /root/workspace/ComfyUI/models/vae/
然后我们cd
进入JupyterLab
根目录
然后下载对应的文件就行了
Python
wget http://file.s3/damodel-openfile/FLUX.1/flux_text_encoders.tar
下载好之后我们输入指令进行解压刚刚下载的文件的操作
Python
tar -xf flux_text_encoders.tar
解压之后目录就是这个样子的
然后我们仍然需要将文件移至ComfyUI指定目录
执行下面的指令就行了
Python
# 进入解压后的文件夹
cd /root/workspace/flux_text_encoders
# 移动文件
mv clip_l.safetensors /root/workspace/ComfyUI/models/clip/
mv t5xxl_fp16.safetensors /root/workspace/ComfyUI/models/clip/
然后准备部署就准备好了
如何使用?
我们先进入到ComfyUI目录,执行以下命令,启动ComfyUI
Python
cd /root/workspace/ComfyUI
python main.py --listen
我们看到启动成功,host为0.0.0.0,端口为8188:
Python
Starting server
To see the GUI go to: http://0.0.0.0:8188
我们回到创建实例的地方
点击这个访问控制
点击添加端口,添加服务对应端口
然后我们通过链接就能进行访问的操作了
最后我们导入工作流,然后在ComfyUI中加载或拖动以下图像以获取工作流
下面就是我们的最终效果图片了
实验总结:环境搭建与工具安装
-
FLUX环境准备:
- 下载依赖包 :根据FLUX的官方文档,下载所需的依赖包,确保Python环境中安装了必要的库,比如
torch
、numpy
、PIL
等。 - 环境配置:安装FLUX的核心组件,确保在Python环境中可以正常调用FLUX的接口。
- 下载依赖包 :根据FLUX的官方文档,下载所需的依赖包,确保Python环境中安装了必要的库,比如
-
ComfyUI安装与配置:
- 下载和安装:从ComfyUI的官方页面下载最新版本,按照文档指引完成安装。
- 界面配置:配置ComfyUI的操作界面,调整显示布局,使得各类功能模块便于访问。将FLUX的生成接口集成到ComfyUI界面,以便在图形界面上直接调用。
-
数据集准备:
- 导入图像数据:根据实验需要,导入一些样本图像。可以选择日常图片或专门的测试数据,确保数据质量良好,便于实验效果评估。
- 确认模型文件:下载并加载适用于FLUX的模型文件,确认模型结构和权重加载正确,以便在后续步骤中使用。
实验步骤
-
基础设置:
- 启动ComfyUI:启动ComfyUI工具,确保界面正常加载。进入FLUX设置界面。
- 输入参数配置:在ComfyUI的FLUX界面中,设置图像生成的基础参数,比如分辨率、输出格式等。
- 选择风格:根据实验需求,选择预设的图像风格(如二次元、写实风格等),或者手动定义特定的图像风格参数。
-
模型参数调整:
- 参数选择:进入FLUX模型的参数设置界面,选择不同的生成模型(如高清晰模型或快速生成模型)。
- 调整渲染细节:设置细节参数,如抗锯齿效果、阴影强度、色彩平衡等,以实现特定的视觉效果。
- 保存配置:将配置文件保存,以便后续进行同样的参数设置,确保实验结果的一致性。
-
代码编写与执行:
- 编写Python代码:编写脚本,调用FLUX API进行图像生成。代码应包括图像加载、参数传递、生成图像等流程。
- FLUX接口调用:通过FLUX的API接口发送生成请求,将参数传递至模型,并获取生成的图像结果。
- 代码优化:根据生成结果优化代码逻辑,例如调整循环结构或并行处理,确保在不同参数配置下均能高效运行。
-
实验运行与结果观察:
- 执行代码:运行编写的代码,观察生成图像的效果。根据图片内容,判断是否满足预期效果。
- 结果展示与保存:在ComfyUI中查看生成的图像,对比不同参数下的图像质量,选择较好的效果并保存结果。
- 记录数据:将生成结果和相应的参数设置记录在实验日志中,便于后续分析和改进。
-
优化与调整:
- 参数调整:根据生成结果的效果,对渲染细节进行微调。例如,如果图像细节模糊,可以增加细节参数;如果渲染速度较慢,可以降低分辨率。
- 重复实验:重新运行调整后的参数设置,观察变化效果。记录每次调整的效果,逐步优化生成图像的质量和速度。
- 最终配置:确定一套最佳的配置参数,以便日后生成高质量图像。
实验结果分析
-
图像质量:
- 在不同参数设置下生成的图像存在显著差异。高分辨率设置能够展示更多的细节,但渲染速度较慢;低分辨率设置的生成速度较快,但细节较少。
- 对比图像色彩、阴影效果等,记录不同参数下的图像质量差异,找到适合的平衡点。
-
渲染速度:
- 观察在不同硬件配置下的渲染速度。高性能显卡对渲染速度有较大提升效果。通过参数调整可以减少渲染时间,但可能会影响图像效果。
- 记录渲染时间,并计算平均渲染速度,便于后续优化或在不同场景中选择合适的参数。
-
图像多样性:
- 在不同参数组合下生成了多样化的图像效果,例如不同风格的图像、多样的视觉表现。
- 总结参数对图像风格的影响,比如亮度、细节、色彩等方面的变化。通过调整风格参数可以满足多种需求。
总结
本次实验验证了FLUX与ComfyUI结合使用的可行性和效果。生成的图像在细节、色彩和多样性方面表现出色,满足了实验预期。同时,不同参数配置对渲染速度和图像质量有显著影响,通过合理选择参数,可以在质量和速度之间取得平衡。
在未来的应用中,可以继续优化FLUX模型的生成参数,结合更多场景和数据集测试。对于不同应用需求,进一步探索FLUX的生成潜力和在图像生成领域的应用前景。