These are
complete loadable SDXL UNet components
, not complete text-to-image pipelines.
You still need the original checkpoint's two text encoders, tokenizers, VAE, and scheduler.
OBS-Diff applied
unstructured pruning
. The selected weights are stored as exact zeros, but the tensor shapes and parameter count remain unchanged. The folders are therefore approximately the same extracted size and do not automatically run faster with ordinary dense CUDA kernels.
Overview
This repository contains four independently pruned versions of the CreaPrompt Hyper SDXL 1.2 UNet:
Variant
Targeted-weight sparsity
Whole-UNet zeros
Mean ImageReward
Delta vs. dense
Wins vs. dense
Mean generation time
Dense reference
0.0000%
0.0001%
+0.771080
+0.000000
—
1.9656 s
OBS 20%
20.0004%
17.0132%
+0.758518
-0.012563
2/4
1.9399 s
OBS 30%
30.0004%
25.5196%
+0.731054
-0.040026
2/4
1.9611 s
OBS 40%
40.0004%
34.0260%
+0.687856
-0.083225
3/4
1.9567 s
OBS 50%
50.0004%
42.5324%
+0.380332
-0.390748
1/4
1.9403 s
Preliminary interpretation
Variant
Practical reading
20%
Best overall fidelity/quality tradeoff in this small evaluation
30%
Moderate quality decline with stronger output changes
40%
More aggressive; won 3/4 individual comparisons but had a lower overall mean
50%
Experimental; substantial quality instability and one severe failure
The evaluation contains only four prompts, so these results are a
screening benchmark
, not a universal quality guarantee.
These repositories contain the UNet only. Load the original complete CreaPrompt Hyper SDXL 1.2 checkpoint for the remaining SDXL components, then replace its UNet.
import torch
from diffusers import (
DPMSolverSinglestepScheduler,
StableDiffusionXLPipeline,
UNet2DConditionModel,
)
REPO_ID = "ApacheOne/OBS-Diff-SDXL-creaprompthyper1.2"# Local copy of the original complete single-file checkpoint.
BASE_CHECKPOINT = (
"/content/models/hyper_sdxl_4step_471056.safetensors"
)
# Change to sparsity_20, sparsity_30, sparsity_40, or sparsity_50.
SPARSITY = "sparsity_20"
unet = UNet2DConditionModel.from_pretrained(
REPO_ID,
subfolder=f"obs_diff_sdxl_results/unets/{SPARSITY}",
torch_dtype=torch.float16,
)
pipe = StableDiffusionXLPipeline.from_single_file(
BASE_CHECKPOINT,
unet=unet,
torch_dtype=torch.float16,
use_safetensors=True,
)
pipe.scheduler = DPMSolverSinglestepScheduler.from_config(
pipe.scheduler.config,
algorithm_type="sde-dpmsolver++",
solver_order=2,
solver_type="midpoint",
lower_order_final=True,
use_karras_sigmas=False,
use_exponential_sigmas=False,
use_beta_sigmas=False,
final_sigmas_type="zero",
)
pipe.vae.enable_slicing()
pipe.vae.enable_tiling()
pipe.to("cuda")
generator = torch.Generator("cuda").manual_seed(1234)
image = pipe(
prompt=(
"a cinematic photograph of a red fox standing in snow, ""detailed fur, natural lighting"
),
width=1024,
height=1024,
num_inference_steps=4,
guidance_scale=0.0,
generator=generator,
).images[0]
image.save("obs_diff_sdxl_test.png")
Technical details
Pruning method
OBS-Diff uses second-order information to select and compensate pruned weights. This adaptation calibrated the SDXL UNet using its four-step denoising trajectory and independently exported four sparsity targets.
The percentage names refer to sparsity among the
targeted attention and feed-forward weights
, not the percentage of the complete UNet file physically deleted.
Variant
Targeted zeros
Whole-UNet zeros
OBS 20%
20.0004%
17.0132%
OBS 30%
30.0004%
25.5196%
OBS 40%
40.0004%
34.0260%
OBS 50%
50.0004%
42.5324%
Why the files are not smaller
The pruning is unstructured:
Original dense tensor shape → same tensor shape
Selected FP16 values → replaced by exact zero
Parameter count → unchanged
An FP16 zero still occupies two bytes in a normal dense SafeTensors tensor. Therefore:
all four UNets have approximately the same extracted size;
normal dense CUDA kernels still execute the same matrix dimensions;
standard inference does not receive a proportional speedup;
specialized sparse storage and sparse kernels would be needed to convert the zero pattern into storage or runtime gains.
Benchmark notes
The comparison used only four prompts. Individual outputs can improve even when the aggregate mean declines:
OBS 40% achieved the best ImageReward on the bathroom and plane examples.
OBS 30% achieved the best ImageReward on the bear example.
OBS 50% produced a major failure on the toilet example.
OBS 20% stayed closest to the dense aggregate result.
Use the provided HTML and JSON reports for the full per-image metrics:
These are
UNet components
, not complete SDXL pipelines.
The original text encoders, tokenizers, VAE, and scheduler are not included.
The original CreaPrompt Hyper SDXL 1.2 checkpoint is required for matching T2I behavior.
Sparsity is unstructured and does not physically shrink dense tensor dimensions.
No retraining or recovery fine-tuning was performed.
The benchmark is small and should not be treated as a general quality ranking.
Results may change with prompt, seed, resolution, sampler, scheduler, and inference step count.
The models were evaluated specifically at four steps and CFG 0.0.
Credits
OBS-Diff:
pruning method and reference implementation
Diffusers:
SDXL pipeline and UNet serialization
ImageReward:
prompt-image quality evaluation
CreaPrompt Hyper SDXL 1.2:
source checkpoint used for this experiment
Recommended starting point:
sparsity_20
It produced the smallest aggregate ImageReward decline in this initial comparison while retaining approximately
17.01% whole-UNet zeros
.
Runs of ApacheOne OBS-Diff-SDXL-creaprompthyper1.2 on huggingface.co
0
Total runs
0
24-hour runs
0
3-day runs
0
7-day runs
0
30-day runs
More Information About OBS-Diff-SDXL-creaprompthyper1.2 huggingface.co Model
OBS-Diff-SDXL-creaprompthyper1.2 huggingface.co
OBS-Diff-SDXL-creaprompthyper1.2 huggingface.co is an AI model on huggingface.co that provides OBS-Diff-SDXL-creaprompthyper1.2's model effect (), which can be used instantly with this ApacheOne OBS-Diff-SDXL-creaprompthyper1.2 model. huggingface.co supports a free trial of the OBS-Diff-SDXL-creaprompthyper1.2 model, and also provides paid use of the OBS-Diff-SDXL-creaprompthyper1.2. Support call OBS-Diff-SDXL-creaprompthyper1.2 model through api, including Node.js, Python, http.
OBS-Diff-SDXL-creaprompthyper1.2 huggingface.co is an online trial and call api platform, which integrates OBS-Diff-SDXL-creaprompthyper1.2's modeling effects, including api services, and provides a free online trial of OBS-Diff-SDXL-creaprompthyper1.2, you can try OBS-Diff-SDXL-creaprompthyper1.2 online for free by clicking the link below.
ApacheOne OBS-Diff-SDXL-creaprompthyper1.2 online free url in huggingface.co:
OBS-Diff-SDXL-creaprompthyper1.2 is an open source model from GitHub that offers a free installation service, and any user can find OBS-Diff-SDXL-creaprompthyper1.2 on GitHub to install. At the same time, huggingface.co provides the effect of OBS-Diff-SDXL-creaprompthyper1.2 install, users can directly use OBS-Diff-SDXL-creaprompthyper1.2 installed effect in huggingface.co for debugging and trial. It also supports api for free installation.
OBS-Diff-SDXL-creaprompthyper1.2 install url in huggingface.co: