Eugeoter's picture
Update README.md
c915669 verified
---
license: mit
language:
- en
base_model:
- Laxhar/sdxl_noob
pipeline_tag: text-to-image
library_name: diffusers
---
<h1 align="center"><strong style="font-size: 48px;">NoobAI XL (V预测分支)</strong></h1>
该模型页面为 NoobAI XL 的 V 预测分支,无法在 AUTOMATIC1111 WebUI 中使用。
请通过 diffusers, ComfyUI[https://github.com/comfyanonymous/ComfyUI] 或 [reForge
](https://github.com/Panchovix/stable-diffusion-webui-reForge/) 使用。
# 基本信息
模型使用约 300k 图像,在 [该检查点](https://huggingface.co/Laxhar/noob_sdxl_beta/blob/main/app/noob_hercules/fp16/checkpoint-e0_s35000.safetensors/checkpoint-e0_s35000.safetensors) 训练而成。
训练的第一阶段,仅训练 UNet 的 OUT 层,以较低的学习率(3e-6)微调,直到 V 预测基本能够正常工作。
训练的第二阶段,恢复所有其它参数,训练一个完整的 epoch。
# 如何使用?
## 用法:reForge
1. 安装 reForge;
2. 切换为 dev_upstream_experimental 分支,即运行 `git checkout dev_upstream_experimental`
3. 启动 reForge WebUI;
4. 在页面下方找到 “Advanced Model Sampling for Forge”;
5. 启用 “Enable Advanced Model Sampling”;
6. 在 “Discrete Sampling Type” 中选择 “v_prediction”。
## 用法:Diffusers
```python
import torch
from diffusers import StableDiffusionXLPipeline, EulerAncestralDiscreteScheduler
ckpt_path = "/path/to/model.safetensors"
pipe = StableDiffusionXLPipeline.from_single_file(
ckpt_path,
use_safetensors=True,
torch_dtype=torch.float16,
)
pipe.scheduler = EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config)
pipe.scheduler.register_to_config(
prediction_type="v_prediction",
rescale_betas_zero_snr=True,
)
pipe.enable_xformers_memory_efficient_attention()
pipe = pipe.to("cuda")
prompt = "best quality, 1boy, solo"
negative_prompt = "bad hands, worst quality, low quality, bad quality, multiple views, 4koma, comic, jpeg artifacts, monochrome, sepia, greyscale, flat color, pale color, muted color, low contrast, bad anatomy, picture frame, english text, signature, watermark, logo, patreon username, web address, artist name"
image = pipe(
prompt=prompt,
negative_prompt=negative_prompt,
width=832,
height=1216,
num_inference_steps=28,
guidance_scale=7.0,
generator=torch.Generator().manual_seed(42),
).images[0]
image.save('image.png')
```