丹摩 | FLUX.1与ComfyUI部署实战:对比之旅

丹摩活动 | FLUX.1与ComfyUI部署:对比之旅

背景介绍

黑森林实验室最新力作FLUX.1,是一款创新的图像生成工具,它以灵活的版本选择满足了广泛用户的需求。这款工具分为三个版本,各有特色,满足不同用户群体的特定需求。

FLUX.1-enterprise是专为企业级用户打造的版本,虽然它是闭源的,但提供了卓越的性能和强大的图像生成能力。它在处理复杂提示词、提升图像清晰度、细节渲染以及多样化输出方面表现出色,非常适合对图像生成有高要求的企业用户。企业用户可以通过官方API轻松接入,并享受定制化服务。

FLUX.1-research是一个开源版本,适合研究和开发用途。它继承了FLUX.1-enterprise的高精度提示词解析能力,并在效率上进行了优化,是科研人员和开发者探索新可能性的理想选择。

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

ComfyUI提供了一个直观的用户界面,使得操作FLUX.1变得简单易懂。ComfyUI的易用性让用户无需深入了解技术细节,就能轻松生成高质量的图像。这种结合不仅提高了用户的便捷性,也将复杂的图像生成过程简化,适合各种水平的用户,从初学者到专业人士都能轻松上手。

丹摩部署流程

在本次部署中,将利用丹摩平台的功能。开始前,请访问丹摩控制台并启动一个新的GPU云实例。

启动新项目时,选择合适的计费模式至关重要。短期项目推荐按需计费,它允许你根据实际使用时间支付费用,非常适合探索性或临时性的工作。对于那些计划长期运行的项目,包月计费则更为经济。

对于GPU配置,如果你是初次尝试,一个NVIDIA GeForce RTX 4090 GPU就足够了。这款GPU拥有60GB的内存和24GB的显存,能够轻松应对需要至少16GB显存的任务,如LLaMA3.1 8B版本。在存储方面,虽然每个实例默认提供50GB的数据硬盘空间,但考虑到FLUX.1模型的大小,建议将存储空间扩展至150GB,以确保有足够的空间来存储模型和数据。

选择一个系统镜像来启动您的实例。平台提供多种预装了基础环境和框架的镜像,以便您快速开始工作。推荐您选择PyTorch框架,并指定版本为2.4.0,以获得最佳的开发体验和性能。

为了确保您的账户安全,创建一个新的密钥对,并为其命名。选择自动生成密钥,并确保将私钥文件下载保存到您的电脑上,方便以后远程登录时使用。

在密钥对生成完毕后,将其选中并执行创建操作。稍作等待,您的实例将顺利启动,准备就绪。

部署实例

将利用平台内置的JupyterLab环境,展示如何部署fp16版本。启动JupyterLab后,我们将开设一个新的终端会话。

部署ComfyUI

在命令行界面,输入指令以下载ComfyUI的代码库。

# github官方代码仓库
git clone https://github.com/comfyanonymous/ComfyUI.git
# gitCode-github加速计划代码仓库
git clone https://gitcode.com/gh_mirrors/co/ComfyUI.git

执行完成后可看到如下目录:

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

cd ComfyUI/
pip install -r requirements.txt --ignore-installed

执行以下命令,启动ComfyUI:

python main.py --listen

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

部署FLUX.1

丹摩平台的部署教程平台已预制FLUX.1相关资源,您可通过内网高速下载:

# 下载完整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为例演示,首先下载完整FLUX.1-dev模型:

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

解压文件:

tar -xf FLUX.1-dev.tar

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

请将相关文件放到ComfyUI的特定文件夹里:将flux1-dev.safetensors放置在/root/workspace/ComfyUI/models/unet/,而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/

接下来下载完整Clip模型:

# 进入JupyterLab根目录
cd /root/workspace
# 下载文件
wget http://file.s3/damodel-openfile/FLUX.1/flux_text_encoders.tar

解压文件:

tar -xf flux_text_encoders.tar

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

把其中的一些文件移至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/

实操

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

cd /root/workspace/ComfyUI
python main.py --listen

启动成功,host为0.0.0.0,端口为8188

Starting server

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

通过丹摩平台提供的端口映射能力,把内网端口映射到公网; 进入GPU 云实例页面,点击操作-更多-访问控制:

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

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

效果

作者:意疏

物联沃分享整理
物联沃-IOTWORD物联网 » 丹摩 | FLUX.1与ComfyUI部署实战:对比之旅

发表回复