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 castEverything 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.
![]() | ![]() |
| **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 | **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 |
![]() | ![]() |
| **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 | **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 |
![]() | |
| **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 |
img2img
Both checkpoints do img2img as well as txt2img. Two sources, each through both checkpoints.
![]() | ![]() | ![]() |
| **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 | **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 | **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 |
![]() | ![]() | ![]() |
| **source** β `tests/sdxl/test_06_source.png`, a synthetic gradient with a flat circle | **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 | **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 |
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
.safetensorshere is a complete single-file checkpoint. - Two independent checkpoints. Each
.safetensorshere is complete on its own; load whichever you want. They share the tokenizers underconfig/. - 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. Raisingguidancealso 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_v9tolerated it and rendered normally;illustrious_Anime_v4did 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(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
unknownin this repo's metadata. Refer to the upstream model's license for redistribution and commercial-use terms β several of these bases are non-commercial.
Model tree for ChrisColeTech/sdxl
Base model
stabilityai/stable-diffusion-xl-base-1.0









