模型简介
模型特点
模型能力
使用案例
🚀 Animagine XL 3.1
Animagine XL 3.1 是 Animagine XL V3 系列的一次更新,对前作 Animagine XL 3.0 进行了全面升级。作为一款开源的动漫主题文本到图像生成模型,它在生成动漫风格图像方面表现卓越,质量大幅提升。该模型涵盖了更多知名动漫系列中的角色,拥有优化后的数据集和全新的美学标签,能够帮助用户更出色地创作图像。基于 Stable Diffusion XL 构建,Animagine XL 3.1 致力于为动漫爱好者、艺术家和内容创作者提供精准且细致的动漫角色呈现,是一款极具价值的工具。
🚀 快速开始
你可以通过以下两种方式体验 Animagine XL 3.1 的演示:
✨ 主要特性
- 角色丰富:包含更多来自知名动漫系列的角色,为图像创作提供更广泛的选择。
- 数据集优化:经过优化的数据集,有助于生成更高质量的动漫图像。
- 美学标签升级:全新的美学标签,让图像创作更加出色。
- 性能提升:增强了手部解剖结构的表现,提高了概念理解和提示解释能力。
📦 安装指南
首先,安装所需的库:
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 = "1girl, souryuu asuka langley, neon genesis evangelion, solo, upper body, v, smile, looking at viewer, outdoors, night"
negative_prompt = "nsfw, lowres, (bad), text, error, fewer, extra, missing, worst quality, jpeg artifacts, low quality, watermark, unfinished, displeasing, oldest, early, chromatic aberration, signature, extra digits, artistic error, username, scan, [abstract]"
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")
💻 使用示例
基础用法
为了获得最佳效果,建议遵循以下结构化提示模板:
1girl/1boy, 角色名称, 出自哪个系列, 其他内容可任意排序。
高级用法
特殊标签的使用
Animagine XL 3.1 利用特殊标签来引导生成结果,包括质量、评级、创作日期和美学等方面。即使不使用这些标签,模型也能生成图像,但使用它们可以获得更好的效果。
质量修饰符
质量标签综合考虑了分数和后期评级,以确保质量分布的平衡。我们对标签进行了优化,使其更加清晰,例如将 'high quality' 改为 'great quality'。
属性 | 详情 |
---|---|
质量修饰符 | 分数标准 |
masterpiece |
> 95% |
best quality |
> 85% 且 ≤ 95% |
great quality |
> 75% 且 ≤ 85% |
good quality |
> 50% 且 ≤ 75% |
normal quality |
> 25% 且 ≤ 50% |
low quality |
> 10% 且 ≤ 25% |
worst quality |
≤ 10% |
评级修饰符
我们简化了评级标签,使其更加简洁明了,旨在建立适用于不同模型的全球规则。例如,'rating: general' 现在简化为 'general','rating: sensitive' 简化为 'sensitive'。
属性 | 详情 |
---|---|
评级修饰符 | 评级标准 |
safe |
通用 |
sensitive |
敏感 |
nsfw |
有问题 |
explicit, nsfw |
明确 |
年份修饰符
我们重新定义了年份范围,以便更准确地引导结果向特定的现代或复古动漫艺术风格靠拢。这次更新简化了范围,更注重与当前和过去时代的相关性。
属性 | 详情 |
---|---|
年份标签 | 年份范围 |
newest |
2021 年至 2024 年 |
recent |
2018 年至 2020 年 |
mid |
2015 年至 2017 年 |
early |
2011 年至 2014 年 |
oldest |
2005 年至 2010 年 |
美学标签
我们通过美学标签增强了标签系统,根据视觉吸引力对内容进行更精细的分类。这些标签来自专门为动漫数据训练的 ViT(视觉变换器)图像分类模型的评估结果。为此,我们使用了模型 shadowlilac/aesthetic-shadow-v2,该模型在训练前评估内容的美学价值,确保每一个生成的内容不仅相关准确,而且在视觉上具有吸引力。
属性 | 详情 |
---|---|
美学标签 | 分数范围 |
very aesthetic |
> 0.71 |
aesthetic |
> 0.45 且 < 0.71 |
displeasing |
> 0.27 且 < 0.45 |
very displeasing |
≤ 0.27 |
推荐设置
为了引导模型生成高美学价值的图像,可以使用以下负提示:
nsfw, lowres, (bad), text, error, fewer, extra, missing, worst quality, jpeg artifacts, low quality, watermark, unfinished, displeasing, oldest, early, chromatic aberration, signature, extra digits, artistic error, username, scan, [abstract]
为了获得更高质量的结果,可以在提示前加上:
masterpiece, best quality, very aesthetic, absurdres
建议使用较低的无分类器引导(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 垂直 |
📚 详细文档
模型详情
- 开发者:Cagliostro Research Lab
- 合作方:SeaArt.ai
- 模型类型:基于扩散的文本到图像生成模型
- 模型描述:Animagine XL 3.1 能够根据文本提示生成高质量的动漫图像。它在手部解剖结构、概念理解和提示解释方面表现出色。
- 许可证:Fair AI Public License 1.0 - SD
- 微调基础:Animagine XL 3.0
训练和超参数
Animagine XL 3.1 在 2 个 A100 80GB GPU 上训练了约 15 天,总计超过 350 个 GPU 小时。训练过程分为三个阶段:
- 预训练:使用包含 870k 有序和标记图像的丰富数据集,以增加 Animagine XL 3.0 的模型知识。
- 微调 - 第一阶段:采用标记和精选的美学数据集,对预训练后的 U - Net 进行优化。
- 微调 - 第二阶段:利用标记和精选的美学数据集,进一步优化模型的艺术风格,提高手部和解剖结构的渲染效果。
超参数
阶段 | 轮数 | U - Net 学习率 | 是否训练文本编码器 | 批量大小 | 噪声偏移 | 优化器 | 学习率调度器 | 梯度累积步数 | GPU 数量 |
---|---|---|---|---|---|---|---|---|---|
预训练 | 10 | 1e - 5 | True | 16 | N/A | AdamW | 余弦退火热重启 | 3 | 2 |
微调第一阶段 | 10 | 2e - 6 | False | 48 | 0.0357 | Adafactor | 带热身的常数调度器 | 1 | 1 |
微调第二阶段 | 15 | 1e - 6 | False | 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 |
打乱分隔符 | True | True |
轮数 | 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,贝塔值:(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 的开发和发布离不开以下个人和组织的宝贵贡献和支持:
- SeaArt.ai:我们的合作伙伴和赞助商。
- Shadow Lilac:提供了美学分类模型 [aesthetic - shadow - v2](https://huggingface.co/shadowlilac/aesthetic - shadow - v2)。
- [Derrian Distro](https://github.com/derrian - distro):提供了自定义学习率调度器,改编自 [LoRA Easy Training Scripts](https://github.com/derrian - distro/LoRA_Easy_Training_Scripts/blob/main/custom_scheduler/LoraEasyCustomOptimizer/CustomOptimizers.py)。
- [Kohya SS](https://github.com/kohya - ss):提供了全面的训练脚本。
- Cagliostrolab 合作者:致力于模型训练、项目管理和数据整理。
- 早期测试者:提供了宝贵的反馈和质量保证工作。
- NovelAI:其创新的美学标签方法为我们的实现提供了灵感。
- KBlueLeaf:在平衡质量标签分布和基于 Hakubooru Metainfo 管理标签方面提供了灵感。
感谢大家的支持和专业知识,推动了动漫风格图像生成的边界。
合作者
局限性
虽然 Animagine XL 3.1 在动漫风格图像生成方面取得了显著进展,但也需要认识到其局限性:
- 专注动漫:该模型专门用于生成动漫风格图像,不适合创建逼真的照片。
- 提示复杂性:对于期望从简短或简单提示中获得高质量结果的用户来说,该模型可能不太适用。由于训练重点在于概念理解而非美学细化,可能需要更详细和具体的提示才能达到预期输出。
- 提示格式:Animagine XL 3.1 针对 Danbooru 风格的标签进行了优化,而非自然语言提示。为了获得最佳效果,建议用户使用适当的标签和语法来格式化提示。
- 解剖结构和手部渲染:尽管在解剖结构和手部渲染方面有所改进,但仍可能存在生成效果不理想的情况。
- 数据集大小:用于训练 Animagine XL 3.1 的数据集约包含 870,000 张图像。与前一版本的数据集(120 万张)结合后,总训练数据约为 210 万张图像。尽管数量可观,但对于一个“终极”动漫模型来说,这个数据集规模可能仍然有限。
- NSFW 内容:Animagine XL 3.1 旨在生成更平衡的 NSFW 内容,但需要注意的是,即使没有明确提示,模型仍可能生成 NSFW 结果。
通过认识到这些局限性,我们旨在提供透明度,并为 Animagine XL 3.1 的用户设定现实的期望。尽管存在这些限制,我们相信该模型在动漫风格图像生成方面迈出了重要的一步,为艺术家、设计师和爱好者提供了强大的工具。
🔧 技术细节
Animagine XL 3.1 基于 Stable Diffusion XL 构建,是一款扩散式文本到图像生成模型。在训练过程中,它经历了预训练和两个阶段的微调,使用了优化后的数据集和特殊的标签系统。通过不断优化模型的参数和结构,提高了生成图像的质量和准确性。同时,模型在手部解剖结构、概念理解和提示解释方面进行了重点优化,以满足用户对动漫风格图像的需求。
📄 许可证
基于 Animagine XL 3.0,Animagine XL 3.1 采用 Fair AI Public License 1.0 - SD 许可证,该许可证与 Stable Diffusion 模型的许可证兼容。关键要点如下:
- 修改共享:如果对 Animagine XL 3.1 进行修改,必须同时共享修改内容和原始许可证。
- 源代码可访问性:如果修改后的版本可以通过网络访问,必须提供一种方式(如下载链接)让他人获取源代码。这也适用于派生模型。
- 分发条款:任何分发必须遵循此许可证或具有类似规则的其他许可证。
- 合规性:如果违反规定,必须在 30 天内进行修复,否则许可证将被终止,强调了透明度和对开源价值观的遵守。
选择此许可证的目的是保持 Animagine XL 3.1 的开放性和可修改性,符合开源社区的精神。它保护了贡献者和用户的权益,鼓励建立一个协作、道德的开源社区。这确保了模型不仅受益于社区的投入,还尊重开源开发的自由。
Cagliostro Lab Discord 服务器
最后,Cagliostro Lab 服务器已向公众开放:https://discord.gg/cqh9tZgbGc
欢迎加入我们的 Discord 服务器!

