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

AIGC图片相关知识和实战经验(Flux.1,ComfyUI等等)

最近看了网上的一些新闻,flux.1火出圈了,因此自己也尝试跑了一下,作图的质量还是蛮高的,在这里做个知识总结回顾。

flux.1是什么?

根据介绍,flux.1是由stable diffusion 一作,Stability AI的核心成员Robin Rombach 和其他图像视频生成领域的专家创立的公司Black Forest Lab发布的开源模型。该模型上线后就引起了圈内大佬的关注,包括openai的Karpathy等。模型的参数量达到了120亿,应该是目前为止最大的图像生成模型。官博介绍,新模型在图像细节、提示词遵循、风格多样性和场景复杂性方面都取得了SOTA。

关于图像生成的效果,我们主要看两个方面:一个是好看,一个是听话(也就是忠实反映提示词的内容)。好看这个判断标准有一定的主观性,听话这个和它之前的模型(sdxl)等等相比,一对比就能发现它的长处。

跑flux.1需要什么环境配置?

Flux.1 发布了三个版本,其中pro版本是完全参数版本,需要显存应该比较大,没有跑过。dev版本是pro版本蒸馏后的模型,节省了使用的显存空间,生图质量相比pro版本下降较小。schnell版本是快速版本,相比dev版本,它的迭代步数从20步变成了4步,所以理论上生图速度相比于dev版本快5倍,但是生图质量会比dev差。跑一个dev或schnell版本的flux.1模型,+其他组件应该需要24G左右的显存+32G的内存。如果配置不够,可以考虑租一个云服务器。另外有大佬发布了fp8的量化版本,最低可以只需要12G显存就能跑。

文生图的原理是什么?有哪些模型组件?

文生图步骤:

步骤一: 使用CLIP Text Encode模型将输入的人类文本信息进行编码,生成与文本信息对应的Text Embeddings特征矩阵;
步骤二: 输入文本信息,再用random函数生成一个高斯噪声矩阵 作为Latent Feature(隐空间特征)的“替代” 输入到SD模型的 “图像优化模块” 中;
步骤三: 首先图像优化模块是由U-Net网络和Schedule算法 组成,将图像优化模块进行优化迭代后的Latent Feature输入到 图像解码器 (VAE Decoder) 中,将Latent Feature重建成像素级图。

模型文件基本都是safetensors格式。一个ComfyUI文生图工作流包括三个部分:主模型,文本编码器和解码器。主模型就是上面提到的flux.1模型,可以选择任意版本。文本编码器一般是clip模型,解码器就是ae(自编码器)解码,把图像从潜空间里还原成真实图像。那么为什么要有一个潜空间呢?第一是如果直接在全图大小用自编码器,计算量和空间需求太大了,撑不住。第二是训练模型难以收敛。第三是我们需要的是一个重构还原的过程,而不是百分百还原,这样我们可以保持模型在原图上修改创新的能力。

工作流,前端界面ComfyUI,SD WebUI Forge等。

ComfyUI是一个生图的前端界面,操作起来也很简单。首先把模型文件下载下来放到ComfyUI目录下的正确位置(unet,text_encoder,decoder)。从网站下一个工作流,通常是json格式,在ComfyUI界面load加载一下,然后点击Queue Prompt就可以执行图像生成过程了。同时comfyui也可以在工作流上增加删除修改节点,或者添加外部节点(通过Node Manager管理节点),开源社区有丰富的节点可以利用。

SD WebUI Forge也是一种生图的前端,但是他的界面更规整,更加傻瓜化。在SD WebUI的界面上,只需要在下拉菜单里选择模型文件就可以。但是看起来就不像ComfyUI那样自由那样可以自定义。

Flux的跟进项目

lora:一种模型微调范式,利用lora可以在只添加少量模型参数的情况下学习生成新图片的能力。

Controlnet:可以控制生成图片的风格,画面里的形象,动作姿势等等。可以在ComfyUI里添加controlnet节点。

IP adapter:通过一张参考图,生成想要的图片,即使输入的文字描述没有这一段。

Flux还在更新过程当中,限于目前的算力等限制还没能发挥全部的能力,我们还可以期待后续的更新版本的flux,在图像生成以及视频生成等领域的结果。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【深度智能】:迈向高级时代的人工智能全景指南
  • redis中的5中数据结构
  • 传神论文中心|第25期人工智能领域论文推荐
  • [数据集][目标检测]高铁受电弓检测数据集VOC+YOLO格式1245张2类别
  • 嵌入式硬件基础知识
  • 【Python篇】深度探索NumPy(下篇):从科学计算到机器学习的高效实战技巧
  • 【笔记】自动驾驶预测与决策规划_Part1_自动驾驶决策规划简介
  • 【03】深度学习——神经网络原理 | 多层感知机 | 前向传播和反向传播 | 多层感知机代码实现 | 回归问题、分类问题 | 多分类问题代码实现
  • 配置网络yum源
  • BolckingQueue
  • AI嘴替:黑神话悟空
  • SSHamble:一款针对SSH技术安全的研究与分析工具
  • 【Elasticsearch系列六】系统命令API
  • 安卓玩机工具-----无需root权限 卸载 禁用 删除当前机型app应用 ADB玩机工具
  • STM32与ESP8266的使用
  • HTTP 简介
  • PAT A1120
  • QQ浏览器x5内核的兼容性问题
  • scrapy学习之路4(itemloder的使用)
  • Sublime Text 2/3 绑定Eclipse快捷键
  • SwizzleMethod 黑魔法
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • use Google search engine
  • vue-router的history模式发布配置
  • 从tcpdump抓包看TCP/IP协议
  • 记一次删除Git记录中的大文件的过程
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 理清楚Vue的结构
  • 判断客户端类型,Android,iOS,PC
  • 前嗅ForeSpider教程:创建模板
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 深度学习中的信息论知识详解
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • 小试R空间处理新库sf
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • ​香农与信息论三大定律
  • !!java web学习笔记(一到五)
  • #### golang中【堆】的使用及底层 ####
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • #laravel 通过手动安装依赖PHPExcel#
  • (1) caustics\
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (52)只出现一次的数字III
  • (C++17) std算法之执行策略 execution
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (免费领源码)python#django#mysql校园校园宿舍管理系统84831-计算机毕业设计项目选题推荐
  • (区间dp) (经典例题) 石子合并
  • (四) Graphivz 颜色选择
  • (淘宝无限适配)手机端rem布局详解(转载非原创)
  • (一)、python程序--模拟电脑鼠走迷宫
  • (转)IOS中获取各种文件的目录路径的方法
  • .net core 管理用户机密
  • .NET HttpWebRequest、WebClient、HttpClient