| --- |
| license: unknown |
| pipeline_tag: text-to-image |
| tags: |
| - text-to-image |
| - image-to-image |
| - stable-diffusion-xl |
| - sdxl |
| - checkpoint |
| base_model: |
| - stabilityai/stable-diffusion-xl-base-1.0 |
| --- |
| |
| # SDXL Checkpoints β Juggernaut XL v9 + Illustrious Anime v4 |
|
|
| Full single-file SDXL checkpoints, ready to load as-is. |
|
|
| > **What this repo is:** two complete single-file SDXL checkpoints plus the shared tokenizers β weights only, not a retrain. The recommended settings below are the values these weights are actually run with day to day, not copied from the upstream card. |
|
|
| --- |
|
|
| ## Samples |
|
|
| > All samples below add this negative prompt, which is **not** part of the preset in the settings table: |
| > |
| > `washed out, low contrast, hazy, faded, pastel, bloom, overexposed, glare, milky, foggy, flat lighting, blown highlights, colour cast` |
| > |
| > Everything else β resolution, steps, guidance, seed β is exactly the documented preset. Without it these checkpoints, Illustrious especially, render with a heavy pastel bloom; see the note on it below. |
|
|
| <table> |
| <tr><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/apple.png" width="380" alt="prompt: a red apple on a rustic wooden table beside a window, soft daylight, visible wood grain, studio photograph, sharp focus β 1024Γ1024, 35 steps, guidance 7.5, seed 7"></td><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/portrait.png" width="380" alt="prompt: portrait of an older fisherman with a weathered face, natural window light, shallow depth of field, photorealistic β 1024Γ1024, 35 steps, guidance 7.5, seed 99"></td></tr> |
| <tr><td><sub>**prompt:** `a red apple on a rustic wooden table beside a window, soft daylight, visible wood grain, studio photograph, sharp focus` β 1024Γ1024, 35 steps, guidance 7.5, seed 7</sub></td><td><sub>**prompt:** `portrait of an older fisherman with a weathered face, natural window light, shallow depth of field, photorealistic` β 1024Γ1024, 35 steps, guidance 7.5, seed 99</sub></td></tr> |
| <tr><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/street.png" width="380" alt="prompt: a rain-slicked Tokyo street at night, neon signs reflecting in puddles, cinematic, 35mm photograph β 1024Γ1024, 35 steps, guidance 7.5, seed 1234"></td><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/anime-girl.png" width="380" alt="Illustrious Anime v4 β anime illustration of a girl in a school uniform standing on a rooftop at sunset, detailed cel shading, clean linework β 1024Γ1024, 35 steps, guidance 7.5, seed 21"></td></tr> |
| <tr><td><sub>**prompt:** `a rain-slicked Tokyo street at night, neon signs reflecting in puddles, cinematic, 35mm photograph` β 1024Γ1024, 35 steps, guidance 7.5, seed 1234</sub></td><td><sub>**Illustrious Anime v4** β `anime illustration of a girl in a school uniform standing on a rooftop at sunset, detailed cel shading, clean linework` β 1024Γ1024, 35 steps, guidance 7.5, seed 21</sub></td></tr> |
| <tr><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/anime-city.png" width="380" alt="Illustrious Anime v4 β anime background art of a quiet japanese street in summer, blue sky, detailed clouds, vibrant colors β 1024Γ1024, 35 steps, guidance 7.5, seed 22"></td><td></td></tr> |
| <tr><td><sub>**Illustrious Anime v4** β `anime background art of a quiet japanese street in summer, blue sky, detailed clouds, vibrant colors` β 1024Γ1024, 35 steps, guidance 7.5, seed 22</sub></td><td></td></tr> |
| </table> |
|
|
| --- |
|
|
|
|
|
|
|
|
| --- |
|
|
| ## img2img |
|
|
| Both checkpoints do `img2img` as well as `txt2img`. Two sources, each through both checkpoints. |
|
|
| <table> |
| <tr><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/img2img-source.png" width="250" alt="photographic source"></td><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/img2img-juggernaut.png" width="250" alt="Juggernaut XL v9 on the photographic source"></td><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/img2img-illustrious.png" width="250" alt="Illustrious Anime v4 on the photographic source"></td></tr> |
| <tr><td><sub>**source prompt:** `a red apple on a rustic wooden table beside a window, soft daylight, visible wood grain, studio photograph, sharp focus` β 1024Γ1024, seed 7</sub></td><td><sub>**img2img prompt:** `a still life oil painting of a red apple on a rustic wooden table beside a sunlit window, thick visible oil paint brushstrokes, warm daylight, painterly canvas texture, high detail` β **Juggernaut XL v9**, 1024Γ1024, **30 steps**, **strength 0.75**, seed 7 β about 170 s on an A100 80GB</sub></td><td><sub>**img2img prompt:** `a still life oil painting of a red apple on a rustic wooden table beside a sunlit window, thick visible oil paint brushstrokes, warm daylight, painterly canvas texture, high detail` β **Illustrious Anime v4**, 1024Γ1024, **30 steps**, **strength 0.75**, seed 7 β about 170 s on an A100 80GB</sub></td></tr> |
| <tr><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/fixture-source.png" width="250" alt="tests/sdxl/test_06_source.png, a synthetic gradient"></td><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/fixture-juggernaut.png" width="250" alt="Juggernaut on the test_06 fixture"></td><td><img src="https://huggingface.co/ChrisColeTech/sdxl/resolve/main/samples/fixture-illustrious.png" width="250" alt="Illustrious on the test_06 fixture"></td></tr> |
| <tr><td><sub>**source** β `tests/sdxl/test_06_source.png`, a synthetic gradient with a flat circle</sub></td><td><sub>**img2img prompt:** `an oil painting of an abstract composition with a large glowing golden circle at the centre over a flowing rainbow gradient, thick visible brushstrokes, impasto ridges catching the light, visible canvas texture` β **Juggernaut XL v9**, 1024Γ1024, **25 steps**, **guidance 7.5**, **strength 0.75**, seed 42 β about 174 s</sub></td><td><sub>**img2img prompt:** `an oil painting of an abstract composition with a large glowing golden circle at the centre over a flowing rainbow gradient, thick visible brushstrokes, impasto ridges catching the light, visible canvas texture` β **Illustrious Anime v4**, 1024Γ1024, **25 steps**, **guidance 7.5**, **strength 0.75**, seed 42 β about 174 s</sub></td></tr> |
| </table> |
|
|
| ### Describe the image you want. Do not give an instruction. |
|
|
| SDXL has no instruction-following training. The prompt is a **description of the |
| image to produce**, not a command applied to the source: |
|
|
| > β
`a still life oil painting of a red apple on a rustic wooden table beside a sunlit windowβ¦` |
| > |
| > β `the same scene rendered as a vivid oil paintingβ¦` |
|
|
| The instruction form is taken literally. Asking for "the same scene rendered as an |
| oil painting" returned an apple coated in dripping paint with a paintbrush in frame, |
| and at higher strength a different scene altogether β at the same `strength 0.75` |
| that produced the top row here. |
|
|
| ### The two checkpoints |
|
|
| Both keep the subject at 0.75 β same apple, position, scale and light. Juggernaut |
| is heavier impasto and warmer; Illustrious is cleaner and brighter (retaining ~93% |
| of source luminance against Juggernaut's ~85%), rendering more as illustration. |
|
|
| ### `strength` and the swept range |
|
|
| Swept 15β40 steps and guidance 5.0β12.5 at `strength 0.75`, output was stable |
| throughout. Below ~0.3 gives little more than a gloss pass; above ~0.85 the source |
| becomes a loose suggestion. |
|
|
| ### On the synthetic source |
|
|
| Bottom row: Juggernaut 1.00Γ source luminance, Illustrious 1.03Γ. Juggernaut |
| applies vertical brushwork to the gradient; Illustrious leaves it close to the |
| source. In both, the flat circle is reproduced flat β a uniform region carries no |
| detail for the sampler at `strength 0.75`, while the graduated area does. Two |
| consequences for testing: subject loss cannot be observed against a subjectless |
| source (`strength 0.90` passes here and does not preserve a photograph's subject), |
| and `histogram_correlation` measures 0.001/β0.017 here against 0.73β0.78 for the |
| same runs on a photograph. |
|
|
| ## Recommended settings |
|
|
| Values this build is run with in practice. They are read out of a live config when this card is generated, so they cannot drift from what is actually used. |
|
|
| | Parameter | Production value | Meaning | |
| |---|---|---| |
| | `width` | `1024` | Output width in pixels | |
| | `height` | `1024` | Output height in pixels | |
| | `steps` | `35` | Denoising steps | |
| | `guidance` | `7.5` | Guidance scale | |
| | `preview_every` | `5` | Emit a TAESD preview every N steps | |
| | `strength` | `0.75` | img2img denoise strength (1.0 = ignore the input image) | |
|
|
| **Supported modes:** `txt2img`, `img2img` |
|
|
| ### Notes and gotchas |
|
|
| - **This repo holds two checkpoints and the shared SDXL tokenizers** β there is no unet/VAE folder, because each `.safetensors` here is a complete single-file checkpoint. |
| - **Two independent checkpoints.** Each `.safetensors` here is complete on its own; load whichever you want. They share the tokenizers under `config/`. |
| - These are run at **float32**, so expect a larger memory footprint than an fp16 SDXL deployment. |
| - Unlike every other model here, SDXL uses a **real CFG schedule** β guidance 7.5. It is not a distilled/turbo build. |
| - **Expect a pastel bloom unless you negate it.** Illustrious in particular renders with a warm pink-lavender haze and lifted blacks β a trained style trait, not a fault: measured against the prompt it is the *most* saturated output here, it is just low-contrast and bright. A negative prompt naming the artifact (`washed out, hazy, pastel, bloom, β¦`) removes it cleanly β on the anime street it moved tonal spread 164 β 208 and dropped mean brightness 161 β 142. Raising `guidance` also increases contrast but amplifies everything, including the magenta cast, so the negative prompt is the better lever. On the photographic Juggernaut renders the same negative mostly raises colour saturation (apple 70 β 118) rather than removing haze, so judge it per checkpoint rather than applying it blindly. |
| - **OpenCLIP-G needs standard GELU, not QuickGELU** β this one silently destroys Illustrious-family checkpoints. SDXL has two text encoders: CLIP-L (OpenAI, QuickGELU) and OpenCLIP-G / bigG (LAION, standard GELU). Defaulting both to QuickGELU corrupts the bigG embeddings while the weights still load cleanly, so nothing in the logs looks wrong. `juggernaut_XL_v9` tolerated it and rendered normally; `illustrious_Anime_v4` did not, producing pure noise and near-blank canvases (pixel std as low as 4.1) on every attempt. Fixed 2026-07-18; both checkpoints now render correctly at the settings above, and every sample on this card is a post-fix render. |
|
|
|
|
| ## Layout |
|
|
| Each `.safetensors` under `combined/` is a complete SDXL checkpoint β unet, both text encoders and the VAE in one file β so any standard SDXL loader can take it directly. The shared CLIP-L and OpenCLIP-G tokenizers live under `config/tokenizer/` and `config/tokenizer_2/`. There is no per-component split here. |
|
|
| > If you load these outside the sidecar, set the OpenCLIP-G text encoder's activation to standard GELU. QuickGELU is the right default for CLIP-L only, and getting it wrong yields noise rather than an error β see the notes above. |
|
|
| --- |
|
|
| ## Files |
|
|
| | File | Size | Role | |
| |---|---|---| |
| | `combined/juggernaut_XL_v9.safetensors` | 6.62 GB | full single-file SDXL checkpoint | |
| | `combined/illustrious_Anime_v4.safetensors` | 6.53 GB | full single-file SDXL checkpoint | |
| | `config/tokenizer/tokenizer.json` | 3.47 MB | tokenizer / processor | |
| | `config/tokenizer_2/tokenizer.json` | 3.47 MB | tokenizer / processor | |
| | `config/tokenizer/vocab.json` | 1.01 MB | tokenizer / processor | |
| | `config/tokenizer_2/vocab.json` | 1.01 MB | tokenizer / processor | |
| | `config/tokenizer/merges.txt` | 512.32 KB | tokenizer / processor | |
| | `config/tokenizer_2/merges.txt` | 512.32 KB | tokenizer / processor | |
| | `config/tokenizer/tokenizer_config.json` | 737 B | tokenizer / processor | |
| | `config/tokenizer_2/tokenizer_config.json` | 725 B | tokenizer / processor | |
| | `config/model_index.json` | 609 B | config | |
| | `config/tokenizer/special_tokens_map.json` | 472 B | tokenizer / processor | |
| | `config/tokenizer_2/special_tokens_map.json` | 460 B | tokenizer / processor | |
|
|
| --- |
|
|
| ## Provenance |
|
|
| - **Upstream base model:** [`stabilityai/stable-diffusion-xl-base-1.0`](https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0) (upstream license: openrail++) |
| - **This build:** community fine-tunes of SDXL, redistributed as-is with the shared tokenizers alongside. Weights are not retrained or requantized here. |
| - **License:** left as `unknown` in this repo's metadata. Refer to the upstream model's license for redistribution and commercial-use terms β several of these bases are non-commercial. |
|
|