🚀 logo-lora
logo-lora 是一个基于 black-forest-labs/FLUX.1-dev 的标准 PEFT LoRA。它主要用于生成汽车赛车游戏应用的标志,通过特定的训练和验证设置,能够输出高质量的图像。
🚀 快速开始
以下是使用 logo-lora 进行推理的代码示例:
import torch
from diffusers import DiffusionPipeline
model_id = 'black-forest-labs/FLUX.1-dev'
adapter_id = 'brianling16/logo-lora'
pipeline = DiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16)
pipeline.load_lora_weights(adapter_id)
prompt = "Generate a logo for a car racing game app"
from optimum.quanto import quantize, freeze, qint8
quantize(pipeline.transformer, weights=qint8)
freeze(pipeline.transformer)
pipeline.to('cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu')
image = pipeline(
prompt=prompt,
num_inference_steps=20,
generator=torch.Generator(device='cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu').manual_seed(42),
width=512,
height=512,
guidance_scale=3.0,
).images[0]
image.save("output.png", format="PNG")
✨ 主要特性
- 基于
black-forest-labs/FLUX.1-dev
基础模型,具有良好的图像生成能力。
- 可用于生成汽车赛车游戏应用的标志。
- 文本编码器未经过训练,可复用基础模型的文本编码器进行推理。
📦 安装指南
文档未提及具体安装步骤,可参考基础模型 black-forest-labs/FLUX.1-dev
的安装说明。
💻 使用示例
基础用法
import torch
from diffusers import DiffusionPipeline
model_id = 'black-forest-labs/FLUX.1-dev'
adapter_id = 'brianling16/logo-lora'
pipeline = DiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16)
pipeline.load_lora_weights(adapter_id)
prompt = "Generate a logo for a car racing game app"
pipeline.to('cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu')
image = pipeline(
prompt=prompt,
num_inference_steps=20,
generator=torch.Generator(device='cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu').manual_seed(42),
width=512,
height=512,
guidance_scale=3.0,
).images[0]
image.save("output.png", format="PNG")
高级用法
import torch
from diffusers import DiffusionPipeline
model_id = 'black-forest-labs/FLUX.1-dev'
adapter_id = 'brianling16/logo-lora'
pipeline = DiffusionPipeline.from_pretrained(model_id, torch_dtype=torch.bfloat16)
pipeline.load_lora_weights(adapter_id)
prompt = "Generate a logo for a car racing game app"
from optimum.quanto import quantize, freeze, qint8
quantize(pipeline.transformer, weights=qint8)
freeze(pipeline.transformer)
pipeline.to('cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu')
image = pipeline(
prompt=prompt,
num_inference_steps=20,
generator=torch.Generator(device='cuda' if torch.cuda.is_available() else 'mps' if torch.backends.mps.is_available() else 'cpu').manual_seed(42),
width=512,
height=512,
guidance_scale=3.0,
).images[0]
image.save("output.png", format="PNG")
📚 详细文档
验证设置
属性 |
详情 |
CFG |
3.0 |
CFG Rescale |
0.0 |
步数 |
20 |
采样器 |
FlowMatchEulerDiscreteScheduler |
种子 |
42 |
分辨率 |
512 |
跳过层引导 |
无 |
注意:验证设置不一定与训练设置相同。
训练设置
属性 |
详情 |
训练轮数 |
0 |
训练步数 |
2600 |
学习率 |
8e - 05 |
学习率调度 |
多项式 |
热身步数 |
10 |
最大梯度范数 |
2.0 |
有效批量大小 |
1 |
微批量大小 |
1 |
梯度累积步数 |
1 |
GPU 数量 |
1 |
梯度检查点 |
True |
预测类型 |
flow - matching (额外参数=['shift=3', 'flux_guidance_mode=constant', 'flux_guidance_value=1.0', 'flow_matching_loss=compatible', 'flux_lora_target=all']) |
优化器 |
adamw_bf16 |
可训练参数精度 |
Pure BF16 |
标题丢弃概率 |
5.0% |
LoRA 秩 |
64 |
LoRA 阿尔法 |
None |
LoRA 丢弃率 |
0.1 |
LoRA 初始化风格 |
默认 |
数据集
app_data
属性 |
详情 |
重复次数 |
4 |
图像总数 |
10001 |
纵横比桶总数 |
1 |
分辨率 |
0.262144 兆像素 |
裁剪 |
否 |
裁剪风格 |
无 |
裁剪纵横比 |
无 |
是否用于正则化数据 |
否 |
🔧 技术细节
本项目基于 PEFT LoRA 技术,从 black-forest-labs/FLUX.1-dev
基础模型派生而来。在训练过程中,使用了特定的数据集 app_data
,并设置了一系列训练参数,如学习率、批量大小等。验证设置和训练设置有所不同,以确保模型的泛化能力。推理时,通过加载基础模型和 LoRA 权重,结合输入的提示信息,使用扩散模型生成图像。
📄 许可证
本项目使用其他许可证,具体请参考相关说明。