HuggingFace镜像/animagine-xl-3.1
模型介绍文件和版本分析
下载使用量0
.title-container { display: flex; justify-content: center; align-items: center; height: 100vh; /* Adjust this value to position the title vertically */ } .title { font-size: 2.5em; text-align: center; color: #333; font-family: 'Helvetica Neue', sans-serif; text-transform: uppercase; letter-spacing: 0.1em; padding: 0.5em 0; background: transparent; } .title span { background: -webkit-linear-gradient(45deg, #7ed56f, #28b485); -webkit-background-clip: text; -webkit-text-fill-color: transparent; } .custom-table { table-layout: fixed; width: 100%; border-collapse: collapse; margin-top: 2em; } .custom-table td { width: 50%; vertical-align: top; padding: 10px; box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.15); } .custom-image-container { position: relative; width: 100%; margin-bottom: 0em; overflow: hidden; border-radius: 10px; transition: transform .7s; /* Smooth transition for the container */ } .custom-image-container:hover { transform: scale(1.05); /* Scale the container on hover */ } .custom-image { width: 100%; height: auto; object-fit: cover; border-radius: 10px; transition: transform .7s; margin-bottom: 0em; } .nsfw-filter { filter: blur(8px); /* Apply a blur effect */ transition: filter 0.3s ease; /* Smooth transition for the blur effect */ } .custom-image-container:hover .nsfw-filter { filter: none; /* Remove the blur effect on hover */ } .overlay { position: absolute; bottom: 0; left: 0; right: 0; color: white; width: 100%; height: 40%; display: flex; flex-direction: column; justify-content: center; align-items: center; font-size: 1vw; font-style: bold; text-align: center; opacity: 0; /* Keep the text fully opaque */ background: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 60%, rgba(0, 0, 0, 0) 100%); transition: opacity .5s; } .custom-image-container:hover .overlay { opacity: 1; } .overlay-text { background: linear-gradient(45deg, #7ed56f, #28b485); -webkit-background-clip: text; color: transparent; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7); .overlay-subtext { font-size: 0.75em; margin-top: 0.5em; font-style: italic; } .overlay, .overlay-subtext { text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); }

Animagine XL 3.1

sample1
sample4
sample2
sample3
sample1
sample4

Animagine XL 3.1 是 Animagine XL V3 系列的一次更新,对之前的版本 Animagine XL 3.0 进行了增强。这个开源的动漫主题文本到图像模型经过改进,能够生成更高品质的动漫风格图像。它包含了来自知名动漫系列更广泛的角色,优化了数据集,并新增了美学标签,以更好地创建图像。基于 Stable Diffusion XL 构建,Animagine XL 3.1 旨在为动漫爱好者、艺术家和内容创作者提供一个宝贵的资源,通过生成准确且详细的动漫角色图像。

模型详情

  • 开发团队: Cagliostro Research Lab
  • 合作方: SeaArt.ai
  • 模型类型: 基于扩散的文本到图像生成模型
  • 模型描述: Animagine XL 3.1 通过文本提示生成高质量的动漫图像。它具有增强的手部解剖结构、改进的概念理解和高级的提示解释能力。
  • 许可证: Fair AI Public License 1.0-SD
  • 微调自: Animagine XL 3.0

Gradio & Colab 集成

在 Huggingface Spaces 中尝试由 Gradio 驱动的演示: Open In Spaces

或在 Google Colab 中打开演示: Open In 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 = "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, character name, from what series, everything else in any order.

特殊标签

Animagine XL 3.1 利用特殊标签来引导结果向高质量、评级、创作日期和美学方向发展。虽然模型可以在没有这些标签的情况下生成图像,但使用它们可以帮助获得更好的结果。

质量修饰符

质量标签现在同时考虑分数和帖子评级,以确保质量分布的平衡。我们对标签进行了细化,以提高清晰度,例如将“高质量”改为“极高质量”。

质量修饰符分数标准
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明确

年份修饰符

我们还重新定义了年份范围,以更准确地引导结果向特定的现代或复古动漫艺术风格发展。此更新简化了范围,专注于与当前和过去时代的相关性。

年份标签年份范围
newest2021 至 2024
recent2018 至 2020
mid2015 至 2017
early2011 至 2014
oldest2005 至 2010

美学标签

我们通过美学标签增强了标签系统,以根据视觉吸引力细化内容分类。这些标签源自专门用于图像分类的 ViT(Vision Transformer)模型所做的评估,该模型专门针对动漫数据进行训练。为此,我们使用了模型 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

建议使用较低的classifier-free guidance(CFG Scale),大约在5-7之间,采样步数低于30,并使用Euler Ancestral(Euler a)作为采样器。

多方面分辨率

该模型支持生成以下尺寸的图像:

尺寸宽高比
1024 x 10241:1 正方形
1152 x 8969:7
896 x 11527:9
1216 x 83219:13
832 x 121613:19
1344 x 7687:4 横向
768 x 13444:7 纵向
1536 x 64012:5 横向
640 x 15365:12 纵向

训练与超参数

Animagine XL 3.1 在2块A100 80GB GPU上训练了大约15天,总计超过350 GPU小时。训练过程分为三个阶段:

  • 预训练:利用87万张有序且标记的图像集合,增加Animagine XL 3.0的模型知识。
    • 微调 - 第一阶段:使用标记和精选的美学数据集,在预训练后优化损坏的U-Net。
    • 微调 - 第二阶段:使用标记和精选的美学数据集,优化模型的艺术风格,并改进手部和解剖结构的渲染。

超参数

阶段轮数UNet lr训练文本编码器批量大小噪声偏移优化器LR调度器梯度累积步数GPU
预训练101e-5True16N/AAdamWCosine Annealing Warm Restart32
微调第一阶段102e-6False480.0357AdafactorConstant with Warmup11
微调第二阶段151e-6False480.0357AdafactorConstant with Warmup11

模型比较(仅预训练)

训练配置

配置项Animagine XL 3.0Animagine XL 3.1
GPU2 x A100 80G2 x A100 80G
数据集1,271,990873,504
打乱分隔符TrueTrue
轮数1010
学习率7.5e-61e-5
文本编码器学习率3.75e-61e-5
有效批量大小48 x 1 x 216 x 3 x 2
优化器AdafactorAdamW
优化器参数比例参数: False, 相对步长: False, 预热初始化: False权重衰减: 0.1, Betas: (0.9, 0.99)
LR调度器Constant with WarmupCosine Annealing Warm Restart
LR调度器参数预热步数: 100周期数: 10, 最小LR: 1e-6, LR衰减: 0.9, 第一个周期步数: 9,099

源代码和训练配置可在此处获取:https://github.com/cagliostrolab/sd-scripts/tree/main/notebook

致谢

Animagine XL 3.1的开发和发布离不开以下个人和组织的宝贵贡献和支持:

  • SeaArt.ai:我们的合作伙伴和赞助商。
  • Shadow Lilac:提供美学分类模型,aesthetic-shadow-v2。
  • Derrian Distro:自定义学习率调度器,改编自LoRA Easy Training Scripts。
  • Kohya SS:全面的训练脚本。
  • Cagliostrolab合作者:对模型训练、项目管理和数据整理的贡献。
  • 早期测试者:宝贵的反馈和质量保证工作。
  • NovelAI:创新的美学标签方法,为我们的实现提供了灵感。
  • KBlueLeaf:在平衡质量标签分布和管理基于Hakubooru Metainfo的标签方面提供了灵感。

感谢大家在推动动漫风格图像生成技术边界方面的支持和专业知识。

合作者

  • Linaqruf
  • ItsMeBell
  • Asahina2K
  • DamarJati
  • Zwicky18
  • Scipius2121
  • Raelina
  • Kayfahaarukku
  • Kriz

局限性

尽管Animagine XL 3.1在动漫风格图像生成方面取得了显著进步,但仍需承认其局限性:

  1. 专注于动漫:该模型专门设计用于生成动漫风格图像,不适合创建真实照片。
  2. 提示复杂性:该模型可能不适合期望从简短或简单提示中获得高质量结果的用户。训练重点在于概念理解而非美学优化,可能需要更详细和具体的提示以达到预期输出。
  3. 提示格式:Animagine XL 3.1针对Danbooru风格的标签进行了优化,而非自然语言提示。为获得最佳效果,建议用户使用适当的标签和语法格式化提示。
  4. 解剖结构和手部渲染:尽管在解剖结构和手部渲染方面有所改进,但仍可能出现次优结果。
  5. 数据集规模:用于训练Animagine XL 3.1的数据集包含约87万张图像。结合前一版本的120万张图像,总训练数据约为210万张。尽管规模可观,但对于“终极”动漫模型而言,数据集规模仍可能有限。
  6. NSFW内容:Animagine XL 3.1旨在生成更平衡的NSFW内容。然而,即使未明确提示,模型仍可能生成NSFW结果。

通过承认这些局限性,我们旨在提供透明度并为Animagine XL 3.1的用户设定合理期望。尽管存在这些限制,我们相信该模型在动漫风格图像生成方面迈出了重要一步,并为艺术家、设计师和爱好者提供了强大的工具。

许可证

基于Animagine XL 3.0,Animagine XL 3.1遵循公平AI公共许可证1.0-SD,该许可与Stable Diffusion模型的许可兼容。要点包括:

  1. 修改分享: 对Animagine XL 3.1进行修改后,您必须分享您的改动以及原始许可证。
  2. 源代码可访问性: 如果您的修改版可通过网络访问,则应提供方式(如下载链接)以便他人获取源代码。这同样适用于衍生模型。
  3. 分发条件: 所有分发都必须在这一许可下进行,或者使用条款相似的其他许可。
  4. 合规性: 不合规情况需在30天内修正,以避免许可终止,这强调了透明度和对开源价值观的遵守。

选择此许可证旨在保持Animagine XL 3.1的开放性和可修改性,与开源社区的精神相一致。它保护贡献者和用户,鼓励建立一个合作、道德的开源社群,确保模型不仅受益于集体智慧,同时也尊重开源发展的自由原则。

卡利奥斯特罗实验室Discord服务器

卡利奥斯特罗实验室服务器现已对外开放: https://discord.gg/cqh9tZgbGc

欢迎自由加入我们的Discord社群。