SDXL-Lightning 4-step int8 ONNX (sharded UNet, 2 chunks)
Browse files- .gitattributes +5 -0
- README.md +96 -0
- model_index.json +42 -0
- scheduler/scheduler_config.json +23 -0
- text_encoder/config.json +26 -0
- text_encoder/model.onnx +3 -0
- text_encoder/model.onnx_data +3 -0
- text_encoder_2/config.json +26 -0
- text_encoder_2/model.onnx +3 -0
- text_encoder_2/model.onnx_data +3 -0
- tokenizer/merges.txt +0 -0
- tokenizer/special_tokens_map.json +30 -0
- tokenizer/tokenizer.json +0 -0
- tokenizer/tokenizer_config.json +30 -0
- tokenizer/vocab.json +0 -0
- tokenizer_2/merges.txt +0 -0
- tokenizer_2/special_tokens_map.json +30 -0
- tokenizer_2/tokenizer.json +0 -0
- tokenizer_2/tokenizer_config.json +38 -0
- tokenizer_2/vocab.json +0 -0
- unet/config.json +73 -0
- unet/model_int8.onnx +3 -0
- unet/model_int8.onnx_data +3 -0
- unet/model_int8.onnx_data_1 +3 -0
- vae_decoder/config.json +38 -0
- vae_decoder/model.onnx +3 -0
- vae_decoder/model.onnx_data +3 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,8 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
text_encoder/model.onnx_data filter=lfs diff=lfs merge=lfs -text
|
| 37 |
+
text_encoder_2/model.onnx_data filter=lfs diff=lfs merge=lfs -text
|
| 38 |
+
unet/model_int8.onnx_data filter=lfs diff=lfs merge=lfs -text
|
| 39 |
+
unet/model_int8.onnx_data_1 filter=lfs diff=lfs merge=lfs -text
|
| 40 |
+
vae_decoder/model.onnx_data filter=lfs diff=lfs merge=lfs -text
|
README.md
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: openrail++
|
| 3 |
+
tags:
|
| 4 |
+
- stable-diffusion-xl
|
| 5 |
+
- sdxl
|
| 6 |
+
- sdxl-lightning
|
| 7 |
+
- onnx
|
| 8 |
+
- onnxruntime-web
|
| 9 |
+
- text-to-image
|
| 10 |
+
- distilled
|
| 11 |
+
- fp16
|
| 12 |
+
library_name: optimum
|
| 13 |
+
pipeline_tag: text-to-image
|
| 14 |
+
---
|
| 15 |
+
|
| 16 |
+
# SDXL-Lightning 4-step (ONNX, fp16, ORT-Web compatible)
|
| 17 |
+
|
| 18 |
+
ONNX export of [ByteDance/SDXL-Lightning](https://huggingface.co/ByteDance/SDXL-Lightning)
|
| 19 |
+
4-step UNet merged into [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0),
|
| 20 |
+
with the VAE decoder replaced by [madebyollin/sdxl-vae-fp16-fix](https://huggingface.co/madebyollin/sdxl-vae-fp16-fix)
|
| 21 |
+
for fp16 stability. Layout is a diffusers-style pipeline with per-subfolder
|
| 22 |
+
ONNX files and bundled tokenizers, intended for in-browser inference via
|
| 23 |
+
ONNX Runtime Web (WebGPU EP).
|
| 24 |
+
|
| 25 |
+
## Contents
|
| 26 |
+
|
| 27 |
+
| Subfolder | Size | Notes |
|
| 28 |
+
|---|---|---|
|
| 29 |
+
| `text_encoder/` | 236 MB | CLIP-L/14, fp16 |
|
| 30 |
+
| `text_encoder_2/` | 1.3 GB | CLIP-G/14 (OpenCLIP-ViT-bigG-14), fp16 |
|
| 31 |
+
| `unet/` | 4.8 GB | SDXL-Lightning 4-step UNet, fp16 |
|
| 32 |
+
| `vae_decoder/` | 95 MB | sdxl-vae-fp16-fix decoder, fp16 |
|
| 33 |
+
| `tokenizer/`, `tokenizer_2/` | small | Fast tokenizers (`tokenizer.json` present) |
|
| 34 |
+
| `scheduler/` | small | EulerDiscrete, `timestep_spacing='trailing'` |
|
| 35 |
+
| `model_index.json` | small | Diffusers pipeline manifest |
|
| 36 |
+
|
| 37 |
+
Total: ~6.5 GB.
|
| 38 |
+
|
| 39 |
+
## Recommended usage
|
| 40 |
+
|
| 41 |
+
Designed for 4 denoising steps, classifier-free guidance disabled (CFG = 1.0).
|
| 42 |
+
Guidance > 1 breaks Lightning. Recommended scheduler is the bundled
|
| 43 |
+
`EulerDiscreteScheduler` with `timestep_spacing="trailing"`.
|
| 44 |
+
|
| 45 |
+
The export targets ORT-Web's WebGPU EP. The CPU EP passes a sanity check
|
| 46 |
+
locally; the WebGPU EP is the production target and tolerates a stricter
|
| 47 |
+
op set. If a runtime op error appears in the browser, downgrade the opset
|
| 48 |
+
or rebuild the export against a different toolchain version.
|
| 49 |
+
|
| 50 |
+
## Production notes
|
| 51 |
+
|
| 52 |
+
- `Resize` ops are kept at fp32 with auto-inserted casts at the boundary —
|
| 53 |
+
onnxconverter-common's default block list catches most cases, but the
|
| 54 |
+
`scales` Constant input was hand-patched back to fp32 after the converter
|
| 55 |
+
failed to insert casts for Constant-produced inputs (2 in UNet, 3 in VAE).
|
| 56 |
+
- I/O dtypes are fp32 throughout (`keep_io_types=True`) so JavaScript callers
|
| 57 |
+
can feed unconverted fp32 tensors and read fp32 outputs.
|
| 58 |
+
- The `vae_encoder/` from the original optimum export was dropped — Lightning
|
| 59 |
+
is text-to-image only.
|
| 60 |
+
|
| 61 |
+
## Licenses
|
| 62 |
+
|
| 63 |
+
This is a derivative work combining three upstream sources, each with its own
|
| 64 |
+
license. All three are permissive but you should read them before commercial use.
|
| 65 |
+
|
| 66 |
+
- **SDXL-Lightning UNet** — [ByteDance/SDXL-Lightning](https://huggingface.co/ByteDance/SDXL-Lightning)
|
| 67 |
+
is licensed under [CreativeML Open RAIL++-M](https://huggingface.co/ByteDance/SDXL-Lightning/blob/main/LICENSE.md).
|
| 68 |
+
- **SDXL base-1.0** (everything except the UNet weights) — [stabilityai/stable-diffusion-xl-base-1.0](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0)
|
| 69 |
+
is licensed under [CreativeML Open RAIL++-M](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/blob/main/LICENSE.md).
|
| 70 |
+
- **VAE decoder** — [madebyollin/sdxl-vae-fp16-fix](https://huggingface.co/madebyollin/sdxl-vae-fp16-fix)
|
| 71 |
+
is MIT-licensed.
|
| 72 |
+
|
| 73 |
+
The combined work is released under CreativeML Open RAIL++-M (the more
|
| 74 |
+
restrictive of the upstream licenses).
|
| 75 |
+
|
| 76 |
+
## How it was built
|
| 77 |
+
|
| 78 |
+
Reproduction recipe (CPU-only Windows box):
|
| 79 |
+
|
| 80 |
+
1. Construct the SDXL UNet from `stabilityai/stable-diffusion-xl-base-1.0`
|
| 81 |
+
config and load `sdxl_lightning_4step_unet.safetensors` from
|
| 82 |
+
`ByteDance/SDXL-Lightning` into it.
|
| 83 |
+
2. Save the merged pipeline as a full diffusers pipeline.
|
| 84 |
+
3. `optimum-cli export onnx --task stable-diffusion-xl --framework pt` →
|
| 85 |
+
per-subfolder ONNX at fp32 (~13 GB).
|
| 86 |
+
4. Convert UNet + both text encoders to fp16 in place via
|
| 87 |
+
`onnxconverter-common.float16.convert_float_to_float16` with a custom
|
| 88 |
+
post-pass that reverts Resize-feeding Constants back to fp32.
|
| 89 |
+
5. Replace the original VAE decoder with a fresh ONNX export of
|
| 90 |
+
`madebyollin/sdxl-vae-fp16-fix`, fp16-converted with the same post-pass.
|
| 91 |
+
6. Build fast tokenizers (`tokenizer.json`) from the slow-tokenizer files
|
| 92 |
+
optimum-cli dropped, since transformers.js v3 has no slow-tokenizer fallback.
|
| 93 |
+
|
| 94 |
+
Built with `torch==2.4.1+cpu`, `optimum[exporters]==1.23.3`,
|
| 95 |
+
`transformers==4.45.2`, `diffusers==0.30.3`, `onnx==1.17.0`,
|
| 96 |
+
`onnxruntime==1.20.1`, `onnxconverter-common==1.14.0`.
|
model_index.json
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_class_name": "StableDiffusionXLPipeline",
|
| 3 |
+
"_diffusers_version": "0.30.3",
|
| 4 |
+
"_name_or_path": "C:/ml-export/sdxl-lightning-4step/sdxl-lightning-4step-merged",
|
| 5 |
+
"feature_extractor": [
|
| 6 |
+
null,
|
| 7 |
+
null
|
| 8 |
+
],
|
| 9 |
+
"force_zeros_for_empty_prompt": true,
|
| 10 |
+
"image_encoder": [
|
| 11 |
+
null,
|
| 12 |
+
null
|
| 13 |
+
],
|
| 14 |
+
"scheduler": [
|
| 15 |
+
"diffusers",
|
| 16 |
+
"EulerDiscreteScheduler"
|
| 17 |
+
],
|
| 18 |
+
"text_encoder": [
|
| 19 |
+
"transformers",
|
| 20 |
+
"CLIPTextModel"
|
| 21 |
+
],
|
| 22 |
+
"text_encoder_2": [
|
| 23 |
+
"transformers",
|
| 24 |
+
"CLIPTextModelWithProjection"
|
| 25 |
+
],
|
| 26 |
+
"tokenizer": [
|
| 27 |
+
"transformers",
|
| 28 |
+
"CLIPTokenizer"
|
| 29 |
+
],
|
| 30 |
+
"tokenizer_2": [
|
| 31 |
+
"transformers",
|
| 32 |
+
"CLIPTokenizer"
|
| 33 |
+
],
|
| 34 |
+
"unet": [
|
| 35 |
+
"diffusers",
|
| 36 |
+
"UNet2DConditionModel"
|
| 37 |
+
],
|
| 38 |
+
"vae": [
|
| 39 |
+
"diffusers",
|
| 40 |
+
"AutoencoderKL"
|
| 41 |
+
]
|
| 42 |
+
}
|
scheduler/scheduler_config.json
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_class_name": "EulerDiscreteScheduler",
|
| 3 |
+
"_diffusers_version": "0.30.3",
|
| 4 |
+
"beta_end": 0.012,
|
| 5 |
+
"beta_schedule": "scaled_linear",
|
| 6 |
+
"beta_start": 0.00085,
|
| 7 |
+
"clip_sample": false,
|
| 8 |
+
"final_sigmas_type": "zero",
|
| 9 |
+
"interpolation_type": "linear",
|
| 10 |
+
"num_train_timesteps": 1000,
|
| 11 |
+
"prediction_type": "epsilon",
|
| 12 |
+
"rescale_betas_zero_snr": false,
|
| 13 |
+
"sample_max_value": 1.0,
|
| 14 |
+
"set_alpha_to_one": false,
|
| 15 |
+
"sigma_max": null,
|
| 16 |
+
"sigma_min": null,
|
| 17 |
+
"skip_prk_steps": true,
|
| 18 |
+
"steps_offset": 1,
|
| 19 |
+
"timestep_spacing": "trailing",
|
| 20 |
+
"timestep_type": "discrete",
|
| 21 |
+
"trained_betas": null,
|
| 22 |
+
"use_karras_sigmas": false
|
| 23 |
+
}
|
text_encoder/config.json
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_name_or_path": "C:/ml-export/sdxl-lightning-4step/sdxl-lightning-4step-merged\\text_encoder",
|
| 3 |
+
"architectures": [
|
| 4 |
+
"CLIPTextModel"
|
| 5 |
+
],
|
| 6 |
+
"attention_dropout": 0.0,
|
| 7 |
+
"bos_token_id": 0,
|
| 8 |
+
"dropout": 0.0,
|
| 9 |
+
"eos_token_id": 2,
|
| 10 |
+
"hidden_act": "quick_gelu",
|
| 11 |
+
"hidden_size": 768,
|
| 12 |
+
"initializer_factor": 1.0,
|
| 13 |
+
"initializer_range": 0.02,
|
| 14 |
+
"intermediate_size": 3072,
|
| 15 |
+
"layer_norm_eps": 1e-05,
|
| 16 |
+
"max_position_embeddings": 77,
|
| 17 |
+
"model_type": "clip_text_model",
|
| 18 |
+
"num_attention_heads": 12,
|
| 19 |
+
"num_hidden_layers": 12,
|
| 20 |
+
"output_hidden_states": true,
|
| 21 |
+
"pad_token_id": 1,
|
| 22 |
+
"projection_dim": 768,
|
| 23 |
+
"torch_dtype": "float32",
|
| 24 |
+
"transformers_version": "4.45.2",
|
| 25 |
+
"vocab_size": 49408
|
| 26 |
+
}
|
text_encoder/model.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:21267b285b3e3ab33fc6d95610ce629a67e0bca01647c36e65e6cd04b6eaa6e7
|
| 3 |
+
size 360437
|
text_encoder/model.onnx_data
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:4b61db0f4781c335e6bba50ab7471bbfe02aad41d050ff5935dcbb2d7724fda0
|
| 3 |
+
size 246120960
|
text_encoder_2/config.json
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_name_or_path": "C:/ml-export/sdxl-lightning-4step/sdxl-lightning-4step-merged\\text_encoder_2",
|
| 3 |
+
"architectures": [
|
| 4 |
+
"CLIPTextModelWithProjection"
|
| 5 |
+
],
|
| 6 |
+
"attention_dropout": 0.0,
|
| 7 |
+
"bos_token_id": 0,
|
| 8 |
+
"dropout": 0.0,
|
| 9 |
+
"eos_token_id": 2,
|
| 10 |
+
"hidden_act": "gelu",
|
| 11 |
+
"hidden_size": 1280,
|
| 12 |
+
"initializer_factor": 1.0,
|
| 13 |
+
"initializer_range": 0.02,
|
| 14 |
+
"intermediate_size": 5120,
|
| 15 |
+
"layer_norm_eps": 1e-05,
|
| 16 |
+
"max_position_embeddings": 77,
|
| 17 |
+
"model_type": "clip_text_model",
|
| 18 |
+
"num_attention_heads": 20,
|
| 19 |
+
"num_hidden_layers": 32,
|
| 20 |
+
"output_hidden_states": true,
|
| 21 |
+
"pad_token_id": 1,
|
| 22 |
+
"projection_dim": 1280,
|
| 23 |
+
"torch_dtype": "float32",
|
| 24 |
+
"transformers_version": "4.45.2",
|
| 25 |
+
"vocab_size": 49408
|
| 26 |
+
}
|
text_encoder_2/model.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:0cf6265108359805f27b16141209c83b9452d4ac66f7b626c6c6f046f648f484
|
| 3 |
+
size 1047642
|
text_encoder_2/model.onnx_data
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:81330f8daecb663019d641658449d3d76205d90c2207356b9cccf1a427214c12
|
| 3 |
+
size 1389319680
|
tokenizer/merges.txt
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
tokenizer/special_tokens_map.json
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"bos_token": {
|
| 3 |
+
"content": "<|startoftext|>",
|
| 4 |
+
"lstrip": false,
|
| 5 |
+
"normalized": true,
|
| 6 |
+
"rstrip": false,
|
| 7 |
+
"single_word": false
|
| 8 |
+
},
|
| 9 |
+
"eos_token": {
|
| 10 |
+
"content": "<|endoftext|>",
|
| 11 |
+
"lstrip": false,
|
| 12 |
+
"normalized": true,
|
| 13 |
+
"rstrip": false,
|
| 14 |
+
"single_word": false
|
| 15 |
+
},
|
| 16 |
+
"pad_token": {
|
| 17 |
+
"content": "<|endoftext|>",
|
| 18 |
+
"lstrip": false,
|
| 19 |
+
"normalized": true,
|
| 20 |
+
"rstrip": false,
|
| 21 |
+
"single_word": false
|
| 22 |
+
},
|
| 23 |
+
"unk_token": {
|
| 24 |
+
"content": "<|endoftext|>",
|
| 25 |
+
"lstrip": false,
|
| 26 |
+
"normalized": true,
|
| 27 |
+
"rstrip": false,
|
| 28 |
+
"single_word": false
|
| 29 |
+
}
|
| 30 |
+
}
|
tokenizer/tokenizer.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
tokenizer/tokenizer_config.json
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"add_prefix_space": false,
|
| 3 |
+
"added_tokens_decoder": {
|
| 4 |
+
"49406": {
|
| 5 |
+
"content": "<|startoftext|>",
|
| 6 |
+
"lstrip": false,
|
| 7 |
+
"normalized": true,
|
| 8 |
+
"rstrip": false,
|
| 9 |
+
"single_word": false,
|
| 10 |
+
"special": true
|
| 11 |
+
},
|
| 12 |
+
"49407": {
|
| 13 |
+
"content": "<|endoftext|>",
|
| 14 |
+
"lstrip": false,
|
| 15 |
+
"normalized": true,
|
| 16 |
+
"rstrip": false,
|
| 17 |
+
"single_word": false,
|
| 18 |
+
"special": true
|
| 19 |
+
}
|
| 20 |
+
},
|
| 21 |
+
"bos_token": "<|startoftext|>",
|
| 22 |
+
"clean_up_tokenization_spaces": true,
|
| 23 |
+
"do_lower_case": true,
|
| 24 |
+
"eos_token": "<|endoftext|>",
|
| 25 |
+
"errors": "replace",
|
| 26 |
+
"model_max_length": 77,
|
| 27 |
+
"pad_token": "<|endoftext|>",
|
| 28 |
+
"tokenizer_class": "CLIPTokenizer",
|
| 29 |
+
"unk_token": "<|endoftext|>"
|
| 30 |
+
}
|
tokenizer/vocab.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
tokenizer_2/merges.txt
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
tokenizer_2/special_tokens_map.json
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"bos_token": {
|
| 3 |
+
"content": "<|startoftext|>",
|
| 4 |
+
"lstrip": false,
|
| 5 |
+
"normalized": true,
|
| 6 |
+
"rstrip": false,
|
| 7 |
+
"single_word": false
|
| 8 |
+
},
|
| 9 |
+
"eos_token": {
|
| 10 |
+
"content": "<|endoftext|>",
|
| 11 |
+
"lstrip": false,
|
| 12 |
+
"normalized": true,
|
| 13 |
+
"rstrip": false,
|
| 14 |
+
"single_word": false
|
| 15 |
+
},
|
| 16 |
+
"pad_token": {
|
| 17 |
+
"content": "!",
|
| 18 |
+
"lstrip": false,
|
| 19 |
+
"normalized": false,
|
| 20 |
+
"rstrip": false,
|
| 21 |
+
"single_word": false
|
| 22 |
+
},
|
| 23 |
+
"unk_token": {
|
| 24 |
+
"content": "<|endoftext|>",
|
| 25 |
+
"lstrip": false,
|
| 26 |
+
"normalized": true,
|
| 27 |
+
"rstrip": false,
|
| 28 |
+
"single_word": false
|
| 29 |
+
}
|
| 30 |
+
}
|
tokenizer_2/tokenizer.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
tokenizer_2/tokenizer_config.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"add_prefix_space": false,
|
| 3 |
+
"added_tokens_decoder": {
|
| 4 |
+
"0": {
|
| 5 |
+
"content": "!",
|
| 6 |
+
"lstrip": false,
|
| 7 |
+
"normalized": false,
|
| 8 |
+
"rstrip": false,
|
| 9 |
+
"single_word": false,
|
| 10 |
+
"special": true
|
| 11 |
+
},
|
| 12 |
+
"49406": {
|
| 13 |
+
"content": "<|startoftext|>",
|
| 14 |
+
"lstrip": false,
|
| 15 |
+
"normalized": true,
|
| 16 |
+
"rstrip": false,
|
| 17 |
+
"single_word": false,
|
| 18 |
+
"special": true
|
| 19 |
+
},
|
| 20 |
+
"49407": {
|
| 21 |
+
"content": "<|endoftext|>",
|
| 22 |
+
"lstrip": false,
|
| 23 |
+
"normalized": true,
|
| 24 |
+
"rstrip": false,
|
| 25 |
+
"single_word": false,
|
| 26 |
+
"special": true
|
| 27 |
+
}
|
| 28 |
+
},
|
| 29 |
+
"bos_token": "<|startoftext|>",
|
| 30 |
+
"clean_up_tokenization_spaces": true,
|
| 31 |
+
"do_lower_case": true,
|
| 32 |
+
"eos_token": "<|endoftext|>",
|
| 33 |
+
"errors": "replace",
|
| 34 |
+
"model_max_length": 77,
|
| 35 |
+
"pad_token": "!",
|
| 36 |
+
"tokenizer_class": "CLIPTokenizer",
|
| 37 |
+
"unk_token": "<|endoftext|>"
|
| 38 |
+
}
|
tokenizer_2/vocab.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
unet/config.json
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_class_name": "UNet2DConditionModel",
|
| 3 |
+
"_diffusers_version": "0.30.3",
|
| 4 |
+
"_name_or_path": "C:/ml-export/sdxl-lightning-4step/sdxl-lightning-4step-merged\\unet",
|
| 5 |
+
"act_fn": "silu",
|
| 6 |
+
"addition_embed_type": "text_time",
|
| 7 |
+
"addition_embed_type_num_heads": 64,
|
| 8 |
+
"addition_time_embed_dim": 256,
|
| 9 |
+
"attention_head_dim": [
|
| 10 |
+
5,
|
| 11 |
+
10,
|
| 12 |
+
20
|
| 13 |
+
],
|
| 14 |
+
"attention_type": "default",
|
| 15 |
+
"block_out_channels": [
|
| 16 |
+
320,
|
| 17 |
+
640,
|
| 18 |
+
1280
|
| 19 |
+
],
|
| 20 |
+
"center_input_sample": false,
|
| 21 |
+
"class_embed_type": null,
|
| 22 |
+
"class_embeddings_concat": false,
|
| 23 |
+
"conv_in_kernel": 3,
|
| 24 |
+
"conv_out_kernel": 3,
|
| 25 |
+
"cross_attention_dim": 2048,
|
| 26 |
+
"cross_attention_norm": null,
|
| 27 |
+
"down_block_types": [
|
| 28 |
+
"DownBlock2D",
|
| 29 |
+
"CrossAttnDownBlock2D",
|
| 30 |
+
"CrossAttnDownBlock2D"
|
| 31 |
+
],
|
| 32 |
+
"downsample_padding": 1,
|
| 33 |
+
"dropout": 0.0,
|
| 34 |
+
"dual_cross_attention": false,
|
| 35 |
+
"encoder_hid_dim": null,
|
| 36 |
+
"encoder_hid_dim_type": null,
|
| 37 |
+
"flip_sin_to_cos": true,
|
| 38 |
+
"freq_shift": 0,
|
| 39 |
+
"in_channels": 4,
|
| 40 |
+
"layers_per_block": 2,
|
| 41 |
+
"mid_block_only_cross_attention": null,
|
| 42 |
+
"mid_block_scale_factor": 1,
|
| 43 |
+
"mid_block_type": "UNetMidBlock2DCrossAttn",
|
| 44 |
+
"norm_eps": 1e-05,
|
| 45 |
+
"norm_num_groups": 32,
|
| 46 |
+
"num_attention_heads": null,
|
| 47 |
+
"num_class_embeds": null,
|
| 48 |
+
"only_cross_attention": false,
|
| 49 |
+
"out_channels": 4,
|
| 50 |
+
"projection_class_embeddings_input_dim": 2816,
|
| 51 |
+
"resnet_out_scale_factor": 1.0,
|
| 52 |
+
"resnet_skip_time_act": false,
|
| 53 |
+
"resnet_time_scale_shift": "default",
|
| 54 |
+
"reverse_transformer_layers_per_block": null,
|
| 55 |
+
"sample_size": 128,
|
| 56 |
+
"time_cond_proj_dim": null,
|
| 57 |
+
"time_embedding_act_fn": null,
|
| 58 |
+
"time_embedding_dim": null,
|
| 59 |
+
"time_embedding_type": "positional",
|
| 60 |
+
"timestep_post_act": null,
|
| 61 |
+
"transformer_layers_per_block": [
|
| 62 |
+
1,
|
| 63 |
+
2,
|
| 64 |
+
10
|
| 65 |
+
],
|
| 66 |
+
"up_block_types": [
|
| 67 |
+
"CrossAttnUpBlock2D",
|
| 68 |
+
"CrossAttnUpBlock2D",
|
| 69 |
+
"UpBlock2D"
|
| 70 |
+
],
|
| 71 |
+
"upcast_attention": null,
|
| 72 |
+
"use_linear_projection": true
|
| 73 |
+
}
|
unet/model_int8.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:bbe5d37f958016dd180576264b5c667958665a27117c8013c5baff55f7bd195a
|
| 3 |
+
size 6547812
|
unet/model_int8.onnx_data
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d78123a5c6c45524f2f5930018da87bbd1ed26df4238b7a588f346c2c231a205
|
| 3 |
+
size 2000000000
|
unet/model_int8.onnx_data_1
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:da823220949e682698e6999aa2e16b10f8e40e0a564f92160cb7a1fd001b3e82
|
| 3 |
+
size 1571911680
|
vae_decoder/config.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"_class_name": "AutoencoderKL",
|
| 3 |
+
"_diffusers_version": "0.30.3",
|
| 4 |
+
"_name_or_path": "C:/ml-export/sdxl-lightning-4step/sdxl-lightning-4step-merged\\vae",
|
| 5 |
+
"act_fn": "silu",
|
| 6 |
+
"block_out_channels": [
|
| 7 |
+
128,
|
| 8 |
+
256,
|
| 9 |
+
512,
|
| 10 |
+
512
|
| 11 |
+
],
|
| 12 |
+
"down_block_types": [
|
| 13 |
+
"DownEncoderBlock2D",
|
| 14 |
+
"DownEncoderBlock2D",
|
| 15 |
+
"DownEncoderBlock2D",
|
| 16 |
+
"DownEncoderBlock2D"
|
| 17 |
+
],
|
| 18 |
+
"force_upcast": true,
|
| 19 |
+
"in_channels": 3,
|
| 20 |
+
"latent_channels": 4,
|
| 21 |
+
"latents_mean": null,
|
| 22 |
+
"latents_std": null,
|
| 23 |
+
"layers_per_block": 2,
|
| 24 |
+
"mid_block_add_attention": true,
|
| 25 |
+
"norm_num_groups": 32,
|
| 26 |
+
"out_channels": 3,
|
| 27 |
+
"sample_size": 1024,
|
| 28 |
+
"scaling_factor": 0.13025,
|
| 29 |
+
"shift_factor": null,
|
| 30 |
+
"up_block_types": [
|
| 31 |
+
"UpDecoderBlock2D",
|
| 32 |
+
"UpDecoderBlock2D",
|
| 33 |
+
"UpDecoderBlock2D",
|
| 34 |
+
"UpDecoderBlock2D"
|
| 35 |
+
],
|
| 36 |
+
"use_post_quant_conv": true,
|
| 37 |
+
"use_quant_conv": true
|
| 38 |
+
}
|
vae_decoder/model.onnx
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:d2dbbf47fba8ee8b1ec26c10b8a259d6e9870ec7d921df2b2d473fb97a2d0c03
|
| 3 |
+
size 135522
|
vae_decoder/model.onnx_data
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:fc3ff1700fd5f86a3e789aaadf647aa7742f2c739be6221ca692c5c92a21d39c
|
| 3 |
+
size 98965248
|