【AI绘画】FLUX:这款新的人工智能图像生成器非常善于创造人手

news2024/10/1 23:45:59

FLUX.1 是 Stable Diffusion 的公开重量级继承者,可将文本转化为图像。

在这里插入图片描述
FLUX.1 dev 生成图像:“A beautiful queen of the universe holding up her hands, face in the background.”。

就在7月下旬,人工智能初创公司黑森林实验室(Black Forest Labs)宣布成立公司,并发布了第一套名为 FLUX.1 的文本到图像人工智能模型。这家总部位于德国的公司由开发了稳定扩散(Stable Diffusion)技术并发明了潜在扩散技术的研究人员创立,旨在为图像和视频创建先进的生成式人工智能。

FLUX.1 的发布是在 Stability AI 于 6 月中旬发布 Stable Diffusion 3 Medium 之后七周左右。Stability AI 的产品因在生成人体解剖图方面表现不佳而受到图像合成爱好者的广泛批评,用户在社交媒体上分享了肢体变形的例子。稳定人工智能公司的三位主要工程师罗宾-隆巴赫(Robin Rombach)、安德烈亚斯-布拉特曼(Andreas Blattmann)和多米尼克-洛伦茨(Dominik Lorenz)早些时候离职,他们后来与潜在扩散联合开发者帕特里克-埃塞尔(Patrick Esser)等人一起创建了黑森林实验室(Black Forest Labs)。

Black Forest Labs 发布了三种 FLUX.1 文本到图像模型:高端商业 "pro "版、非商业使用的中端开放权重 "dev "版和更快的开放权重 "schnell "版("schnell "在德语中意为快速)。Black Forest Labs 声称,其模型在图像质量和文本提示的遵从性等方面优于 Midjourney 和 DALL-E 等现有选择。
在这里插入图片描述

AI-generated image by FLUX.1 dev: “A close-up photo of a pair of hands holding a plate full of pickles.”

在这里插入图片描述
AI-generated image by FLUX.1 dev: A hand holding up five fingers with a starry background.

在这里插入图片描述
AI-generated image by FLUX.1 dev: “An Ars Technica reader sitting in front of a computer monitor. The screen shows the Ars Technica website.”

在这里插入图片描述
AI-generated image by FLUX.1 dev: “a boxer posing with fists raised, no gloves.”

在这里插入图片描述
AI-generated image by FLUX.1 dev: “An advertisement for ‘Frosted Prick’ cereal.”

在这里插入图片描述
AI-generated image of a happy woman in a bakery baking a cake by FLUX.1 dev.

在这里插入图片描述
AI-generated image by FLUX.1 dev: “An advertisement for ‘Marshmallow Menace’ cereal.”

在这里插入图片描述
AI-generated image of “A handsome Asian influencer on top of the Empire State Building, instagram” by FLUX.1 dev.

根据我们的经验,两个更高端的 FLUX.1 模型的输出在及时保真度上一般可与 OpenAI 的 DALL-E 3 相媲美,逼真度似乎接近 Midjourney 6。与稳定版 Diffusion XL 相比,它们有了很大的改进,而稳定版 Diffusion XL 是团队在稳定版下发布的最后一个重要版本(如果不算 SDXL Turbo)。

FLUX.1 模型采用了该公司所谓的 “混合架构”,结合了变压器和扩散技术,参数扩展到 120 亿个。Black Forest Labs 称,它在以前的扩散模型基础上进行了改进,加入了流匹配和其他优化功能。

FLUX.1 在生成人类双手方面似乎很有能力,而这正是早期图像合成模型(如 Stable Diffusion 1.5)的一个薄弱环节,原因是缺乏以双手为重点的训练图像。从早期开始,其他人工智能图像生成器(如 Midjourney)也掌握了手部图像的生成,但值得注意的是,FLUX 1 的开放权重模型能相对准确地呈现各种姿势的手部图像。

我们从 GitHub 上下载了 FLUX.1 开发模型的权重文件,但它高达 23GB,无法容纳在我们 RTX 3060 显卡的 12GB VRAM 中,因此需要量化才能在本地运行(减小文件大小),据说(通过 Reddit 上的聊天)有些人已经取得了成功。

相反,我们在人工智能云托管平台 Fal 和 Replicate 上使用 FLUX.1 模型进行了实验,虽然 Fal 提供了一些免费的启动点数,但使用这些平台需要付费。

如何在消费级显卡运行Flux.1

Diffusers

pip install git+https://github.com/huggingface/diffusers.git

然后可以使用 FluxPipeline 运行模型

import torch
from diffusers import FluxPipeline

pipe = FluxPipeline.from_pretrained("black-forest-labs/FLUX.1-schnell", 
                                    torch_dtype=torch.bfloat16,
                                    revision="refs/pr/1",
                                   )
# 减少显存使用的方法如下
# pipe.vae.enable_tiling()
# pipe.vae.enable_slicing()
pipe.enable_sequential_cpu_offload() #save some VRAM by offloading the model to CPU. Remove this if you have enough GPU power
# pipe.enable_xformers_memory_efficient_attention()

prompt = "A cat holding a sign that says hello world"
image = pipe(
    prompt,
    guidance_scale=0.0,
    output_type="pil",
    num_inference_steps=4,
    max_sequence_length=256,
    generator=torch.Generator("cpu").manual_seed(0)
).images[0]
image.save("flux-schnell.png")

Colab T4 运行 schnell 和 dev

参考 camenduru/flux-jupyter

git clone https://github.com/camenduru/flux-jupyter.git

可以在Colab中先尝试,再将其搬到自己的本地环境中。

注意:官方提供的flux包没有量化手段,只能用于参考,不可直接用于消费级显卡环境。苹果用户可以使用MPS,但我没有Mac,不便测试,多多谅解

最后

说到 “信任和安全”,该公司没有提到它是从哪里获得的训练数据,这些数据教会了 FLUX.1 模型如何生成图像。从我们可以用模型生成的包含受版权保护的人物形象的输出结果来看,黑森林实验室很可能使用了大量未经授权的互联网图像搜刮数据,这些数据可能是由 LAION 收集的,该组织收集的数据集用于训练稳定扩散(Stable Diffusion)。目前这还只是猜测。虽然 FLUX.1 的基本技术成就值得关注,但我们感觉该团队很可能像 Stability AI 一样,在 "合理使用 "图片搜刮的道德规范方面玩得不亦乐乎。这种做法最终可能会招致类似针对 Stability AI 的诉讼。

虽然文本到图片的生成是黑森林目前的重点,但该公司计划下一步扩展到视频生成领域,并表示 FLUX.1 将作为正在开发的新文本到视频模型的基础,该模型将与 OpenAI 的 Sora、Runway 的 Gen-3 Alpha 和 Kuaishou 的 Kling 展开竞争,按需扭曲媒体现实。"黑森林的公告称:"我们的视频模型将以高清晰度和前所未有的速度实现精确创作和编辑。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1979435.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从零入门CV图像竞赛(2024全球Deepfake攻防挑战赛)

从零入门CV图像竞赛(2024全球Deepfake攻防挑战赛) Deepfake是什么? Deepfake是一种利用深度学习技术,特别是生成对抗网络(GANs)来实现视频、音频等多媒体内容的伪造技术。这项技术可以实现对视频中人物的…

【2】Swift Dynamic Island开发

文章目录 先新建一个实时活动组件熟悉下实时活动的代码UI代码解析 灵动岛(Dynamic Island)和实时活动(Live Activities)是 iPhone 为了便于用户在退出APP时,仍然能随时关注进行中的活动、高频操作的组件。其中: 灵动岛…

快速体验LLaMA-Factory 私有化部署和高效微调Llama3模型(曙光超算互联网平台异构加速卡DCU)

序言 本文以 LLaMA-Factory 为例,在超算互联网平台SCNet上使用异构加速卡AI 显存64GB PCIE,私有化部署Llama3模型,并对 Llama3-8B-Instruct 模型进行 LoRA 微调、推理和合并。 快速体验基础版本,请参考另一篇博客:快…

栈和队列的区别

简介 栈和队列从定义上来讲,只有一个不同,就是栈是先进后出的,而队列是先进先出的,两者不的不同如下所图所示: 栈和队列的实现 从实现上来说,栈和队列都可以用数组或者链表实现,不过从实现难度和时空复杂…

WEB前端16-Vuex状态管理模式

Vue2-Vuex基础 1.Vuex基本概念 在复杂的前端应用程序中,状态管理变得至关重要。Vuex 是 Vue.js 官方提供的状态管理模式和库,它能帮助我们更好地管理应用程序的状态并实现组件间的通信。本文将介绍 Vuex 的基本概念、核心概念和实际应用。 什么是 Vue…

Vue3炫酷的界面

Vanta.js - Animated 3D Backgrounds For Your Website3D & WebGL Background Animations For Your Websitehttps://www.vantajs.com/?effectbirds需要的安装包 npm install three npm install three0.13.4.0npm install vue3.2.37#Vanta JS 依赖 npm install vanta np…

移情别恋c++ ദ്ദി˶ー̀֊ー́ ) ——1.c++入门(2)

1. 函数重载 C⽀持在同⼀作⽤域中出现同名函数&#xff0c;但是要求这些同名函数的形参不同&#xff0c;可以是参数个数不同或者 类型不同。这样C函数调⽤就表现出了多态⾏为&#xff0c;使⽤更灵活。C语⾔是不⽀持同⼀作⽤域中出现同 名函数的。 #include<iostream> u…

传知代码-半监督学习与数据增强(论文复现)

代码以及视频讲解 本文所涉及所有资源均在传知代码平台可获取 概述 本文复现论文 FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence[1] 提出的半监督学习方法。 半监督学习&#xff08;Semi-supervised Learning&#xff09;是一种机器学习…

使用Python库开发Markdown编辑器并将内容导出为图片

简介 在本文中&#xff0c;我们将探索如何使用Python的wxPython库开发一个Markdown编辑器应用程序。这个应用程序不仅能浏览和编辑Markdown文件&#xff0c;还可以将编辑的内容导出为PNG图片。 C:\pythoncode\new\markdowneditor.py 完整代码 import wx import markdown2 im…

前端实现下载word(多个word下载)-- docxtemplater

文章目录 &#x1f50e;什么是docxtemplater&#xff1f;&#x1f47b;docxtemplater语法&#x1f47b;普通插值for循环选择图片&#xff08;&#x1f330;代码&#xff09; &#x1f47b;实现下载&#x1f47b;安装依赖&#x1f330;完整代码关键逻辑解释 &#x1f47b;实现多…

CSP-J 复赛 模拟题 解析版

根据解析写代码1&#xff1a; #include <bits/stdc.h> using namespace std; long long a[101010]; long long b[101010]; int main(){bool flag0;long long t;cin>>t;while(t--){long long n,k;cin>>n>>k;for(int i1;i<n;i){cin>>a[i]>…

kickstart自动安装脚本

1、准备阶段 #开启图形 init 5 ​ #安装带GUI的服务器包组 yum -y groupinstall "Server with GUI" ​ #在xshell做需要加X ssh -Xl root 172.25.254.128 ​ #开启图形 gedit ​ 2、kickstart [rootpxe ~]# cat /root/anaconda-ks.cfg #此文件是在系统安装好后…

大数据Flink(一百零九):阿里云Flink的基本名称概念

文章目录 阿里云Flink的基本名称概念 一、层次结构 二、​​​​​​​​​​​​​​概念说明 1、工作空间&#xff08;Workspace&#xff09; 2、项目空间&#xff08;Namespace&#xff09; 3、资源&#xff08;Resource&#xff09; 4、草稿&#xff08;Draft&#…

将本地微服务发布到docker镜像二:

上一篇文章我们介绍了如何将一个简单的springboot服务发布到docker镜像中&#xff0c;这一篇我们将介绍如何将一个复杂的微服务&#xff08;关联mysql、redis&#xff09;发布到docker镜像。 我们将使用以下两种不同的方式来实现此功能。 redis、mysql、springboot微服务分开…

linux的自动检测的脚本:用于检测应用程序状态的linux脚本

目录 一、要求 1、需求内容 2、分析 二、脚本介绍 1、脚本代码 2、脚本解释 &#xff08;1&#xff09;脚本结构 &#xff08;2&#xff09;应用程序和服务列表 &#xff08;3&#xff09;日志文件路径 &#xff08;4&#xff09;测试 URL 列表 &#xff08;5&#…

智能小程序 Ray 开发面板 SDK —— 无线开关一键执行模板教程(一)

1. 准备工作 前提条件 已阅读 Ray 新手村任务&#xff0c;了解 Ray 框架的基础知识已阅读 使用 Ray 开发万能面板&#xff0c;了解 Ray 面板开发的基础知识 构建内容 在此 Codelab 中&#xff0c;您将利用面板小程序开发构建出一个支持一键执行及自动化的无线开关面板&…

HCIP----BGP综合实验

一、实验拓扑 二、实验要求 三、实验思路 1.基于172.16.0.0/16根据实验拓扑图进行IP地址规划&#xff0c;规划过程如下&#xff1a; 2.根据上述的IP地址的规划进行配置&#xff0c;配置完后在AS2中配置OSPF使其内部实现全网通&#xff08;互相建邻的条件&#xff09;。 3.在A…

keil编程中#pragma NOAREGS的作用和优点

参考 功能 不直接操作内存地址 #pragma NOAREGS在Keil中的使用含义是禁用自动分配寄存器&#xff0c;开发人员指定控制的寄存器。‌例如中断的执行使用的寄存器需要人为的指定&#xff0c;避免分配同样的寄存器导致数据错误。对寄存器R0到R7不直接操作寄存器地址&#xff0c…

C# 设计模式六大原则之依赖倒置原则

总目录 前言 1 基本介绍 1. 定义 依赖倒置原则 Dependence Inversion Principle&#xff0c;简称&#xff1a;DIP。 依赖倒置原则&#xff1a;高层模块不应该依赖低层模块&#xff0c;二者都应该依赖其抽象&#xff1b;抽象不应该依赖细节&#xff0c;细节应该依赖抽象。 2…

GO之基本语法

一、Golang变量 一&#xff09;变量的声明&#xff1a;使用var关键字 Go语言是静态类型语言 Go语言的基本类型有&#xff1a; boolstringint、int8、int16、int32、int64uint、uint8、uint16、uint32、uint64、uintptrbyte // uint8 的别名rune // int32 的别名 代表一个 Unic…