Trained
timestep-conditioned transcoders and
SAE baselines for the
FLUX.1[schnell] text-to-image diffusion transformer (MM-DiT), accompanying the paper
DifFRACT: Diffusion Feature Reconstruction and Attribution for Circuit Tracing (
PDF).
A transcoder decomposes an MLP sublayer into a sparse linear combination of interpretable features; conditioning it on the denoising timestep lets a single transcoder track how a feature behaves across the diffusion trajectory. Substituting these transcoders into a frozen Local Replacement Model yields the attribution graphs and circuit-guided interventions studied in the paper. The code to load and use these weights is at the companion repository (
GitHub).
40 PyTorch checkpoints in two folders. Every checkpoint is a state_dict for a TemporalAwareTranscoder module (the SAE baseline shares the identical architecture).
The 32 transcoders for layers 0–15 (both streams) are the set analysed by the Local Replacement Model; layer 18 (and the SAEs at 6/12/18) support the sparsity–faithfulness comparison.
Install the companion code (
GitHub), then:
1from huggingface_hub import snapshot_download
2from transcoder_training.transcoder import load_transcoders
3
4transcoders = load_transcoders(
5 f"{path}/temporal-aware-transcoders",
6 layers=range(16),
7 d_model=3072,
8 expansion_factor=16,
9 time_embed_dim=256,
10)
1import torch
2from transcoder_training.transcoder import TemporalAwareSAE
3
4sae = TemporalAwareSAE(d_model=3072, expansion_factor=16, time_embed_dim=256)
5sae.load_state_dict(torch.load(f"{path}/temporal-aware-saes/sae_img_12.pt", map_location="cpu"))
6sae.eval()
The end-to-end pipeline (Local Replacement Model, attribution graph, intervention) is demonstrated in walkthrough.ipynb in the companion repository.
1@misc{mazur2026diffractdiffusionfeaturereconstruction,
2 title={DifFRACT: Diffusion Feature Reconstruction and Attribution for Circuit Tracing},
3 author={Artyom Mazur and Nina Konovalova and Aibek Alanov},
4 year={2026},
5 eprint={2606.15796},
6 archivePrefix={arXiv},
7 primaryClass={cs.CV},
8 url={https://arxiv.org/abs/2606.15796},
9}