license: other
license_name: faipl-1.0-sd
license_link: https://freedevproject.org/faipl-1.0-sd/
language:
- en
tags:
- 文生图
- 稳定扩散
- 安全张量
- 稳定扩散XL
base_model: cagliostrolab/animagine-xl-3.0
widget:
- text: 1女孩,绿发,毛衣,注视观众,上半身,无檐帽,户外,夜晚,高领衫,杰作,最佳质量,极致美学,超现实
parameter:
negative_prompt: 不适宜内容,低分辨率,(劣质),文字,错误,缺失,额外内容,最差质量,JPEG伪影,低质量,水印,未完成,不悦目,早期作品,色差,签名,多余数字,艺术错误,用户名,扫描件,[抽象]
example_title: 1女孩
- text: 1男孩,男性焦点,绿发,毛衣,注视观众,上半身,无檐帽,户外,夜晚,高领衫,杰作,最佳质量,极致美学,超现实
parameter:
negative_prompt: 不适宜内容,低分辨率,(劣质),文字,错误,缺失,额外内容,最差质量,JPEG伪影,低质量,水印,未完成,不悦目,早期作品,色差,签名,多余数字,艺术错误,用户名,扫描件,[抽象]
example_title: 1男孩
Animagine XL 3.1
Animagine XL 3.1 是Animagine XL V3系列的升级版本,在前作Animagine XL 3.0基础上全面增强。这款开源动漫主题文生图模型能生成更高质量的动漫风格图像,包含更多知名动漫角色,采用优化数据集并新增美学标签。基于Stable Diffusion XL构建,旨在为动漫爱好者、艺术家和内容创作者提供精准细致的角色呈现。
模型详情
Gradio & Colab集成
通过Huggingface Spaces体验Gradio演示: 
或在Google Colab中运行: 
🧨 Diffusers安装指南
首先安装必要库:
pip install diffusers transformers accelerate safetensors --upgrade
运行以下示例代码生成图像:
import torch
from diffusers import DiffusionPipeline
pipe = DiffusionPipeline.from_pretrained(
"cagliostrolab/animagine-xl-3.1",
torch_dtype=torch.float16,
use_safetensors=True,
)
pipe.to('cuda')
prompt = "1女孩,惣流·明日香·兰格雷,新世纪福音战士,单人,上半身,V字手势,微笑,注视观众,户外,夜晚"
negative_prompt = "不适宜内容,低分辨率,(劣质),文字,错误,缺失,额外内容,最差质量,JPEG伪影,低质量,水印,未完成,不悦目,早期作品,色差,签名,多余数字,艺术错误,用户名,扫描件,[抽象]"
image = pipe(
prompt,
negative_prompt=negative_prompt,
width=832,
height=1216,
guidance_scale=7,
num_inference_steps=28
).images[0]
image.save("./output/asuka_test.png")
使用规范
标签顺序
为获得最佳效果,建议遵循结构化提示模板:
1女孩/1男孩,角色名,出自作品,其余内容任意顺序。
特殊标签
Animagine XL 3.1采用特殊标签引导生成质量、评级、创作年代和美学风格。虽然模型可不使用这些标签,但使用它们能获得更好效果。
质量修饰符
质量标签现综合考虑评分和后期评级,确保质量分布均衡。我们优化了标签表述,如将"高质量"改为"优秀质量"。
质量修饰符 |
评分标准 |
杰作 |
> 95% |
最佳质量 |
> 85% & ≤ 95% |
优秀质量 |
> 75% & ≤ 85% |
良好质量 |
> 50% & ≤ 75% |
普通质量 |
> 25% & ≤ 50% |
低质量 |
> 10% & ≤ 25% |
最差质量 |
≤ 10% |
评级修饰符
简化评级标签以建立通用规则,如将"rating: general"简化为"general"。
评级修饰符 |
评级标准 |
全年龄 |
普通级 |
敏感内容 |
敏感级 |
限制级 |
疑问级 |
露骨内容 |
限制级 |
年代修饰符
重新定义年代范围以更准确引导现代或复古风格。
年代标签 |
年代范围 |
最新 |
2021至2024 |
近期 |
2018至2020 |
中期 |
2015至2017 |
早期 |
2011至2014 |
复古 |
2005至2010 |
美学标签
采用ViT图像分类模型shadowlilac/aesthetic-shadow-v2评估内容美学价值。
美学标签 |
评分范围 |
极致美学 |
> 0.71 |
美学 |
> 0.45 & < 0.71 |
不悦目 |
> 0.27 & < 0.45 |
极不悦目 |
≤ 0.27 |
推荐设置
引导模型生成高美学图像时使用负面提示:
不适宜内容,低分辨率,(劣质),文字,错误,缺失,额外内容,最差质量,JPEG伪影,低质量,水印,未完成,不悦目,早期作品,色差,签名,多余数字,艺术错误,用户名,扫描件,[抽象]
高质量输出建议前缀:
杰作,最佳质量,极致美学,超高清
推荐CFG Scale设为5-7,采样步数低于30步,使用Euler Ancestral (Euler a)采样器。
多比例分辨率
支持生成以下尺寸图像:
尺寸 |
比例 |
1024 x 1024 |
1:1 正方形 |
1152 x 896 |
9:7 |
896 x 1152 |
7:9 |
1216 x 832 |
19:13 |
832 x 1216 |
13:19 |
1344 x 768 |
7:4 横版 |
768 x 1344 |
4:7 竖版 |
1536 x 640 |
12:5 横版 |
640 x 1536 |
5:12 竖版 |
训练与超参数
Animagine XL 3.1 在2块A100 80GB GPU上训练约15天,总耗时超350 GPU小时。训练分三阶段:
- 预训练:使用87万有序标注图像扩展模型知识
- 微调第一阶段:采用美学标注数据集修复U-Net
- 微调第二阶段:优化艺术风格及手部解剖表现
超参数配置
阶段 |
周期数 |
UNet学习率 |
训练文本编码器 |
批大小 |
噪声偏移 |
优化器 |
学习率调度器 |
梯度累积步数 |
GPU数量 |
预训练 |
10 |
1e-5 |
是 |
16 |
N/A |
AdamW |
余弦退火热重启 |
3 |
2 |
微调第一阶段 |
10 |
2e-6 |
否 |
48 |
0.0357 |
Adafactor |
带热身的恒定调度 |
1 |
1 |
微调第二阶段 |
15 |
1e-6 |
否 |
48 |
0.0357 |
Adafactor |
带热身的恒定调度 |
1 |
1 |
模型对比(仅预训练)
训练配置
配置项 |
Animagine XL 3.0 |
Animagine XL 3.1 |
GPU |
2 x A100 80G |
2 x A100 80G |
数据集 |
1,271,990 |
873,504 |
随机分隔符 |
是 |
是 |
训练周期 |
10 |
10 |
学习率 |
7.5e-6 |
1e-5 |
文本编码器学习率 |
3.75e-6 |
1e-5 |
有效批大小 |
48 x 1 x 2 |
16 x 3 x 2 |
优化器 |
Adafactor |
AdamW |
优化器参数 |
比例参数: False, 相对步长: False, 热启动: False |
权重衰减: 0.1, Betas: (0.9, 0.99) |
学习率调度器 |
带热身的恒定调度 |
余弦退火热重启 |
调度器参数 |
热身步数: 100 |
周期数: 10, 最小学习率: 1e-6, 学习率衰减: 0.9, 首周期步数: 9,099 |
源代码和训练配置见: https://github.com/cagliostrolab/sd-scripts/tree/main/notebook
致谢
Animagine XL 3.1的开发离不开以下个人和组织的贡献: