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

DAMODEL丹摩|部署FLUX.1+ComfyUI实战教程

本文仅做测评体验,非广告。

文章目录

  • 1. FLUX.1简介
  • 2. 实战
    • 2. 1 创建资源
    • 2. 1 ComfyUI的部署操作
    • 2. 3 部署FLUX.1
  • 3. 测试
  • 5. 释放资源
  • 4. 结语


1. FLUX.1简介

FLUX.1是由黑森林实验室(Black Forest Labs)开发的开源AI图像生成模型。它拥有12B(120亿)参数,是迄今为止最大的文生图模型之一。FLUX.1以其卓越的图像质量、高度逼真的人体解剖学表现和先进的提示词遵循能力而脱颖而出,为AI图像生成设定了新的行业标准。

FLUX.1包含三种变体,以满足不同用户的需求:

  1. FLUX.1 Pro:顶级性能版本,适合需要最高图像质量和详细输出的商业应用。
  2. FLUX.1 Dev:开源非商业用途版本,是从FLUX.1 Pro提炼而来,具有类似的质量和提示词能力,同时比相同大小的标准模型更高效。
  3. FLUX.1 Schnell:快速高效的版本,专为本地开发和个人使用量身定制,在Apache2.0许可下公开可用。它在生成速度上具有明显优势,同时对内存的占用也是最小的。

FLUX.1的竞争力:

  • 大规模参数:拥有12B参数,是最大的开源文本到图像模型之一。
  • 多模态架构:基于多模态和并行扩散Transformer块的混合架构,提供强大的图像生成能力。
  • 高性能变体:提供三种不同性能和用途的模型变体。
  • 图像质量:在视觉质量、提示词遵循、大小/纵横比可变性、字体和输出多样性等方面超越了其他流行的模型。
  • 开源和可访问性:部分模型变体如FLUX.1 Dev和FLUX.1 Schnell是开源的,易于研究和非商业应用。
  • 技术创新:引入了流匹配训练方法、旋转位置嵌入和并行注意力层,提高了模型性能和硬件效率。

FLUX.1的应用场景广泛,包括媒体和娱乐、艺术创作与设计、广告和营销、教育和研究以及内容创作等多个领域。它能够帮助用户轻松将创意愿景转化为具体视觉效果,是一个强大的AI图像生成工具。

1

2. 实战

丹摩平台链接

2. 1 创建资源

2

  1. 在创建页面可以看到丹摩提供了三种付费方式,本教程使用按量付费,如果有长期的需求,可以自行选择包月或包日。

  2. 丹摩还提供了非常多种不同层次的配置供选择,这里选用第一种NVIDIA-GeForce-RTX-4090,你可以根据个人需求选择更高的配置。

  3. 接着是数据硬盘,默认是100G数据盘和50G数据盘,对于FLUX.1模型,建议将数据盘至少增加至150GB。

  4. 安装镜像,选择镜像市场点加号就可以看到许多类型与版本的基础镜像,这些镜像中已经包含了系统与对应的框架环境,开箱即用。这里选用PyTorch2.4.0。

  5. 创建密钥对(增加安全性,可跳过)
    3

    自定义一个名字后妥善保管下载下来的秘钥文件。

    4

    然后选择刚刚创建的密钥对。

    6

    最后点击右下角的立即创建就好了。

    配置总览:

    6

创建后自动跳转到如下界面,耐心等待创建完成。

7

创建完成后点击黄字就可以跳转到云实例进行操作了。

9

进入云实例后选择Terminal

10

就可以进入到 Linux 的命令行界面,然后就可以进行下一步操作了。

注:进入后先输入

clear

就可以清除系统的红色提示。

11

2. 1 ComfyUI的部署操作

在命令行中输入以下两个代码中的一个,推荐使用第二个与CSDN合作的 gitcode 的域名,下载比 github 快很多。

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

输入后回车,等待几秒,出现下图的目录就说明克隆项目成功了。

11

双击左边的ComfyUI就可以进入目录。

12

这里便是ComfyUI的项目文件。

接下来的操作需要Linux基础,如果你没学过,照做就好。

cd ComfyUI/
pip install -r requirements.txt --root-user-action=ignore

第一行是切换到 ComfyUI这个目录下。

第二行代码用来下载ComfyUI所需要的依赖,丹摩会自动使用国内的镜像源去下载,所以还是很快的。

下载完成后,执行:

python main.py --listen

如果出现的是类似这样的信息:
14

就说明ComfyUI部署完成。

2. 3 部署FLUX.1

在下面的三行代码选取一个:

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

作用依次为:

  1. 下载完整FLUX.1-dev模型
  2. 下载完整FLUX.1-schnell模型
  3. 下载完整Clip模型

安装之前先按 ctrl+c 退出刚才进入的 python 程序。

这里采用第一个进行安装。

安装包非常大,所以需要耐心等待,不过放心,下载操作发生在云端,不会占用你的带宽。

16

下载完成后进行解压:

tar -xf FLUX.1-dev.tar

这么大的文件解压也需要挺长时间,出现如下界面时耐心等待,不要进行任何操作。

17

解压完成后:

18

接下来移动一些文件到指定的地方:

cd /root/workspace/ComfyUI/FLUX.1-dev
mv flux1-dev.safetensors /root/workspace/ComfyUI/models/unet/
mv ae.safetensors /root/workspace/ComfyUI/models/vae/
  1. 进入解压后的文件夹。(如果没有解压到这个位置,请自行修改路径)
  2. 后面两行都是移动文件的位置,不多解释。
cd ../

切换到上级目录(/root/workspace/ComfyUI/)。

执行:

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

等待下载完成后进行解压:

tar -xf flux_text_encoders.tar

解压完成后再次进行文件移动:

cd /root/workspace/ComfyUI/flux_text_encoders
mv clip_l.safetensors /root/workspace/ComfyUI/models/clip/
mv t5xxl_fp16.safetensors /root/workspace/ComfyUI/models/clip/

这样部署就完成了。

3. 测试

执行:

cd /root/workspace/ComfyUI
python main.py --listen
  1. 切换到项目路径。
  2. 执行项目。

如果你出现如下报错:

19

依次执行:

apt-get update
apt-get install lsof

安装lsof,安装完成后执行:

sudo kill -9 $(sudo lsof -t -i:8188)

这样就能正常运行了:

20

回到丹摩平台:

21

22

输入8188并创建。

23

将链接复制下来访问就能进入页面:

24

点击右侧大大的Load,加载你的工作流就可以运行了。

5. 释放资源

如果你不打算长期使用创建的实例,一定要释放资源,不然会持续扣费。
释放

4. 结语

在本教程中,我们不仅探索了FLUX.1和ComfyUI的强大功能,还体验了丹摩平台的便捷性和高效性。
丹摩平台以其用户友好的界面、灵活的资源配置和即开即用的便捷性,为用户提供了一个理想的AI开发和部署环境。

谢谢你的阅读,喜欢的话来个点赞收藏评论关注吧!
我会持续更新更多优质文章

相关文章:

DAMODEL丹摩|部署FLUX.1+ComfyUI实战教程

本文仅做测评体验,非广告。 文章目录 1. FLUX.1简介2. 实战2. 1 创建资源2. 1 ComfyUI的部署操作2. 3 部署FLUX.1 3. 测试5. 释放资源4. 结语 1. FLUX.1简介 FLUX.1是由黑森林实验室(Black Forest Labs)开发的开源AI图像生成模型。它拥有12…...

请求(request)

目录 前言 request概述 request的使用 获取前端传递的数据 实例 请求转发 特点 语法 实例 实例1 实例2 【关联实例1】 域对象 组成 作用范围: 生命周期: 使用场景: 使用步骤 存储数据对象 获得数据对象 移除域中的键值…...

关于VNC连接时自动断联的问题

在服务器端打开VNC Server的选项设置对话框,点左边的“Expert”(专家),然后找到“IdleTimeout”,将数值设置为0,点OK关闭对话框。搞定。 注意,服务端有两个vnc服务,这俩都要设置ide timeout为0才行 附件是v…...

C语言strtok()函数用法详解!

strtok 是 C 标准库中的字符串分割函数,用于将一个字符串拆分成多个部分(token),以某些字符(称为分隔符)为界限。 函数原型 char *strtok(char *str, const char *delim);参数: str&#xff1a…...

【docker 拉取镜像超时问题】

问题描述 在centosStream8上安装docker,使用命令sudo docker run hello-world 后出现以下错误: Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Ti…...

模拟手机办卡项目(移动大厅)--结合面向对象、JDBC、MYSQL、dao层模式,使用JAVA控制台实现

目录 1. 项目需求 2. 项目使用的技术 3.项目需求分析 3.1 实体类和接口 4.项目结构 5.业务实现 5.1 登录 5.1.1 实现步骤 5.1.2 原生代码问题 ​编辑 5.1.3 解决方法 1.说明: 2. ResultSetHandler结果集处理 5.1.4 代码 5.1.5 实现后的效果图 登录成功​…...

机器学习—大语言模型:推动AI新时代的引擎

云边有个稻草人-CSDN博客 目录 引言 一、大语言模型的基本原理 1. 什么是大语言模型? 2. Transformer 架构 3. 模型训练 二、大语言模型的应用场景 1. 文本生成 2. 问答系统 3. 编码助手 4. 多语言翻译 三、大语言模型的最新进展 1. GPT-4 2. 开源模型 …...

C++:探索哈希表秘密之哈希桶实现哈希

文章目录 前言一、链地址法概念二、哈希表扩容三、哈希桶插入逻辑四、析构函数五、删除逻辑六、查找七、链地址法代码实现总结 前言 前面我们用开放定址法代码实现了哈希表: C:揭秘哈希:提升查找效率的终极技巧_1 对于开放定址法来说&#…...

具身智能高校实训解决方案——从AI大模型+机器人到通用具身智能

一、 行业背景 在具身智能的发展历程中,AI 大模型的出现成为了关键的推动力量。这些大模型具有海量的参数和强大的语言理解、知识表示能力,能够为机器人的行为决策提供更丰富的信息和更智能的指导。然而,单纯的大模型在面对复杂多变的现实…...

【消息序列】详解(8):探秘物联网中设备广播服务

目录 一、概述 1.1. 定义与特点 1.2. 工作原理 1.3. 应用场景 1.4. 技术优势 二、截断寻呼(Truncated Page)流程 2.1. 截断寻呼的流程 2.2. 示例代码 2.3. 注意事项 三、无连接外围广播过程 3.1. 设备 A 启动无连接外围设备广播 3.2. 示例代…...

【RL Base】强化学习核心算法:深度Q网络(DQN)算法

📢本篇文章是博主强化学习(RL)领域学习时,用于个人学习、研究或者欣赏使用,并基于博主对相关等领域的一些理解而记录的学习摘录和笔记,若有不当和侵权之处,指出后将会立即改正,还望谅…...

深入浅出 Python 网络爬虫:从零开始构建你的数据采集工具

在大数据时代,网络爬虫作为一种数据采集技术,已经成为开发者和数据分析师不可或缺的工具。Python 凭借其强大的生态和简单易用的语言特点,在爬虫领域大放异彩。本文将带你从零开始,逐步构建一个 Python 网络爬虫,解决实…...

美国发布《联邦风险和授权管理计划 (FedRAMP) 路线图 (2024-2025)》

文章目录 前言一、战略目标实施背景2010年12月,《改革联邦信息技术管理的25点实施计划》2011年2月,《联邦云计算战略》2011年12月,《关于“云计算环境中的信息系统安全授权”的首席信息官备忘录》2022年12月,《FedRAMP 授权法案》…...

Python语法基础(三)

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 我们这篇文章来说一下函数的返回值和匿名函数 函数的返回值 我们先来看下面的这一段函数的定义代码 # 1、返回值的意义 def func1():print(111111111------start)num166print…...

云计算之elastaicsearch logstach kibana面试题

1.ELK是什么? ELK 其实并不是一款软件,而是一整套解决方案,是三个软件产品的首字母缩写 Elasticsearch:负责日志检索和储存 Logstash:负责日志的收集和分析、处理 Kibana:负责日志的可视化 这三款软件都是开源软件,通常是配合使用,而且又先后归于 Elastic.co 公司名下,…...

【已解决】git push需要输入用户名和密码问题

解决方法: 1)查看使用的clone方式: git remote -v 2)若为HTTPS,删除原clone方式: git remote rm origin 3)添加新的clone方式: git remote add origin gitgithub.com:zludon/git_test.git …...

python的字符串处理

需求: 编写一个程序,输入一段英文句子,统计每个单词的长度,并将单词按照长度从短到长排序。 程序逻辑框图 1、用户输入一句英文句子。 2、对输入的句子进行预处理(去空格并分割为单词列表)。 3、统计每个单…...

【线程】Java多线程代码案例(2)

【线程】Java多线程代码案例(2) 一、定时器的实现1.1Java标准库定时器1.2 定时器的实现 二、线程池的实现2.1 线程池2.2 Java标准库中的线程池2.3 线程池的实现 一、定时器的实现 1.1Java标准库定时器 import java.util.Timer; import java.util.Timer…...

虚拟机之间复制文件

在防火墙关闭的前提下,您可以通过几种不同的方法将文件从一个虚拟机复制到另一个虚拟机。这里,我们假设您想要从 IP 地址为 192.168.4.5 的虚拟机上的 /tmp 文件夹复制文件到当前虚拟机(192.168.4.6)的 /tmp 文件夹下。以下是几种…...

如何为 XFS 文件系统的 /dev/centos/root 增加 800G 空间

如何为 XFS 文件系统的 /dev/centos/root 增加 800G 空间 一、前言二、准备工作三、扩展逻辑卷1. 检查现有 LVM 配置2. 扩展物理卷3. 扩展卷组4. 扩展逻辑卷四、调整文件系统大小1. 检查文件系统状态2. 扩展文件系统五、处理可能出现的问题1. 文件系统无法扩展2. 磁盘空间不足3…...

【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密

在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 &#xff08;部分有免费额度&#x…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

10-Oracle 23 ai Vector Search 概述和参数

一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI&#xff0c;使用客户端或是内部自己搭建集成大模型的终端&#xff0c;加速与大型语言模型&#xff08;LLM&#xff09;的结合&#xff0c;同时使用检索增强生成&#xff08;Retrieval Augmented Generation &#…...