首页 > 其他分享 >从Flux Dev蒸馏出来的模型——Flux.1 Lite

从Flux Dev蒸馏出来的模型——Flux.1 Lite

时间:2024-10-29 11:50:57浏览次数:5  
标签:flux.1 8B torch Dev Flux alpha lite Flux.1 区块

在这里插入图片描述
flux.1-lite-8B-alpha 是 Freepik 发布的 FLUX.1-dev 模型的精简版。 这个 80 亿参数的变压器模型使用的内存比原来少了 7 GB,运行速度比原来快了 23%,但精度保持不变(bfloat16)。 正如 Ostris 所指出的那样,原始模型中并非所有区块的贡献都相同,因此 Freepik 团队分析了每个区块输入和输出之间的均方误差 (MSE),以识别并移除最不重要的区块,从而创建了这个更高效的 flux.1-lite-8B-alpha 模型。

模型输入和输出

flux.1-lite-8B-alpha 是一个文本到图像模型,能够根据文本提示生成高质量的图像。 该模型是在一个大型网络图像数据集上训练出来的,尤其适合用户希望将文字描述转化为视觉表现的创意任务。

功能

flux.1-lite-8B-alpha 可生成与所提供文本提示密切匹配的详细、高质量图像。 该模型擅长角色设计、景观创作和想象场景等任务。 为达到最佳效果,Freepik 团队建议使用 3.5 的指导尺度,并将推理步骤数设置在 22 到 30 之间。

import torch
from diffusers import FluxPipeline

base_model_id = "Freepik/flux.1-lite-8B-alpha"
torch_dtype = torch.bfloat16
device = "cuda"

# Load the pipe
model_id = "Freepik/flux.1-lite-8B-alpha"
pipe = FluxPipeline.from_pretrained(
    model_id, torch_dtype=torch_dtype
).to(device)

# Inference
prompt = "A close-up image of a green alien with fluorescent skin in the middle of a dark purple forest"

guidance_scale = 3.5  # Keep guidance_scale at 3.5
n_steps = 28
seed = 11

with torch.inference_mode():
    image = pipe(
        prompt=prompt,
        generator=torch.Generator(device="cpu").manual_seed(seed),
        num_inference_steps=n_steps,
        guidance_scale=guidance_scale,
        height=1024,
        width=1024,
    ).images[0]
image.save("output.png")

动机

受 Ostris 研究结果的启发,我们分析了每个区块的输入和输出之间的均方误差 (MSE),以量化它们对最终结果的贡献,结果发现了显著的差异。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

正如 Ostris 所指出的,并非所有区块的贡献都相同。 虽然跳过早期 MMDiT 或晚期 DiT 中的一个区块会对模型性能产生重大影响,但跳过中间的任何一个区块都不会对最终图像质量产生重大影响。

在这里插入图片描述

未来工作

敬请期待! 我们的目标是进一步提炼 FLUX.1-dev,直到它能在 24GB 消费级 GPU 显卡上流畅运行,保持原有精度(bfloat16),运行速度更快,让每个人都能获得高质量的人工智能模型。

ComfyUI

我们还精心设计了 ComfyUI 工作流程,让 Flux.1 Lite 的使用更加无缝! 请参见 comfy/flux.1-lite_workflow.json。

在这里插入图片描述
The safetensors checkpoint is available here: flux.1-lite-8B-alpha.safetensors

标签:flux.1,8B,torch,Dev,Flux,alpha,lite,Flux.1,区块
From: https://blog.csdn.net/weixin_41446370/article/details/143307277

相关文章

  • Flux【真人模型】:高p高糊反向真实质感!网图风格的Lora模型,超逼真的AI美女大模型!
    大家好,我是画画的彤姐今天和大家分享一款基于Flux训练的网图风格的lora模型:墨幽-F.1-Lora-网图,该Lora模型由墨幽团队出品,旨在生成高p高糊的反向真实质感图片,而非真实摄影图片。不过,在自己出图过程中,却意外发现这个loar模型生成的图片有时候TMD蛮真实呢。触发词:Thisisah......
  • UI组件DevExpress ASP.NET Bootstrap - 支持Bootstrap v5.3.3和暗黑模式
    在本文中,我们将详细介绍DevExpressBootstrap控件升级到Bootstrapv5.3.3、增强了DevExpressBootstrap项目模板的安全相关更新,以及对颜色模式的支持等。P.S.:DevExpress ASP.NETBootstrap Controls利用轻量级渲染、响应式布局和现代性能优化技术,扩展网站的受众范围并提高搜索......
  • 界面控件DevExpress WPF v24.1新版亮点:属性网格、轻量级主题升级
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。DevExpressWPF控件今年一个重大版本——v24.1全......
  • devm_kzalloc
    devm_kzmalloc()是资源管理版本的kzalloc(),它与设备关联,来进行内存的申请与释放。也就是当设备从系统中剥离,设备驱动被卸载后,使用该函数申请的内存会自动释放。主要是为了防止忘记释放内存导致内存泄漏。void*devm_kzalloc(structdevice*dev,size_tsize,gfp_tgfp);参数......
  • DevOps工具链组合推荐
    ###DevOps工具链组合推荐在当今的软件开发领域,DevOps已成为提高软件交付速度、提升产品质量、加强团队合作的关键策略。对于寻求实现快速开发和高效运营的团队而言,选择合适的DevOps工具链是至关重要的。一个理想的DevOps工具链应包括代码仓库、持续集成(CI)/持续部署(CD)工具、配置......
  • 编写一个简单的Iinput_dev框架
    往期内容本专栏往期内容:input子系统的框架和重要数据结构详解-CSDN博客inputdevice和inputhandler的注册以及匹配过程解析-CSDN博客inputdevice和inputhandler的注册以及匹配过程解析-CSDN博客I2C子系统专栏:专栏地址:IIC子系统_憧憬一下的博客-CSDN博客具体芯片的II......
  • 第四届文化、设计与社会发展国际学术会议(CDSD 2024) The 4th International Confere
    @目录一、会议详情二、重要信息三、大会介绍四、出席嘉宾五、征稿主题一、会议详情二、重要信息大会官网:https://ais.cn/u/vEbMBz提交检索:EICompendex、IEEEXplore、Scopus大会时间:2024年12月06-08日大会地点:马来西亚-吉隆坡三、大会介绍文化是人类社会相对于经济和......
  • [python]windows上通过whl文件安装sounddevice教程
    要通过.whl文件安装sounddevice,可以按照以下步骤进行操作:一、准备工作下载.whl文件:从gitee.com/FIRC/pythonlibs_whl_mirror或其他可信任的源下载sounddevice的.whl安装包。确保下载的.whl文件与你的Python版本和系统架构相匹配。安装pip:pip是Python的包管理工具,通常与Python一起安......
  • 【深搜】桐桐的组合(devc++)
    【问题描述】排列与组合是常用的数学方法,桐桐刚刚学会了全排列,就想试试组合,组合就是从n 个元素中抽出r个元素(不分顺序且r≤n),我们可以简单地将n 个元素理解为自然数1,2,…,n ,从中任取r 个数。【输入格式】两个整数n 和r(1≤r≤n≤20)。【输出格式】输出所有的组......
  • Nuxt.js 应用中的 server:devHandler 事件钩子详解
    title:Nuxt.js应用中的server:devHandler事件钩子详解date:2024/10/26updated:2024/10/26author:cmdragonexcerpt:server:devHandler是Nuxt.js中的一个生命周期钩子,它在Nitro开发服务器注册开发中间件时被调用。使用这个钩子,开发者可以为开发服务器添加......