Views
No views yet

uv:
1conda create -n rpiae python=3.10 -y
2conda activate rpiae
3pip install uv
4
5# Install PyTorch 2.8.0 with CUDA 12.9 # or your own cuda version
6uv pip install torch==2.8.0 torchvision torchaudio --index-url https://download.pytorch.org/whl/cu129
7
8# Install other dependencies
9uv pip install -r requirements.txt./model_weights:1hf download qihoo360/RPiAE \
2 --repo-type model \
3 --local-dir ./model_weights--data-path.1stage_1:
2 target: stage1.RPiAE / stage1.RPiAE_VB
3 params: { ... }
4 ckpt: <path_to_ckpt>
5
6stage_2:
7 target: stage2.models.lightningDiT.LightningDiT
8 params: { ... }
9 ckpt: <path_to_ckpt>
10
11transport:
12 params:
13 path_type: Linear
14 prediction: velocity
15 ...
16sampler:
17 mode: ODE
18 params:
19 num_steps: 50
20 ...
21guidance:
22 method: cfg/autoguidance
23 scale: 1.0
24 ...
25misc:
26 latent_size: [64, 16, 16]
27 num_classes: 1000
28training:
29 ...
30eval:
31 ...stage_1 defines the RPiAE training process (reconstruction-oriented training).stage_2 defines the generation model (LightningDiT) in the RPiAE latent space.transport, sampler, and guidance control ODE/SDE solving and guidance strategy.misc stores latent shape and shared constants.training and eval contain optimization and online evaluation settings.gan block for discriminator and loss schedule.configs/stage1/pretrained/DINOv2-B_decXL_RPiAE.yamlconfigs/stage1/training/DINOv2-B_decXL_RPiAE_stage1.yamlconfigs/stage1/training/DINOv2-B_decXL_RPiAE_stage2.yamlconfigs/stage1/training/DINOv2-B_decXL_RPiAE_stage3.yamlconfigs/stage2/training/ImageNet256/LightingDiT-XL_f16d64rpiae-v2b_vitxl.yamlconfigs/stage2/sampling/ImageNet256/LightingDiT-XL_d64rpiae-v2b_vitxl.yamlconfigs/stage2/sampling/ImageNet256/LightingDiT-XL_d64rpiae-v2b_vitxl_AG.yaml1EXPERIMENT_NAME=
2ENTITY=
3PROJECT=1bash run_train_stage1_rpiae_s1.sh \
2 configs/stage1/training/DINOv2-B_decXL_RPiAE_stage1.yaml1bash run_train_stage1_rpiae_s23.sh \
2 configs/stage1/training/DINOv2-B_decXL_RPiAE_stage2.yaml1bash run_train_stage1_rpiae_s23.sh \
2 configs/stage1/training/DINOv2-B_decXL_RPiAE_stage3.yaml*_mult*.sh scripts instead.1RANK=
2MASTER_ADDR=
3GPUS_PER_NODE=
4NNODES=
5MASTER_PORT=1bash run_train_stage1_mult_rpiae_s1.sh \
2 configs/stage1/training/DINOv2-B_decXL_RPiAE_stage1.yaml1bash run_train_stage1_mult_rpiae_s23.sh \
2 configs/stage1/training/DINOv2-B_decXL_RPiAE_stage2.yaml1bash run_train_stage1_mult_rpiae_s23.sh \
2 configs/stage1/training/DINOv2-B_decXL_RPiAE_stage3.yaml1bash run_sample_reconstruction_eval.sh \
2 configs/stage1/pretrained/DINOv2-B_decXL_RPiAE.yaml1torchrun --standalone --nnodes=1 --nproc_per_node=N \
2 src/train_diffusion_rpiae.py \
3 --config <training_config> \
4 --data-path <imagenet_train_split> \
5 --results-dir ckpts/diffusion \
6 --compile \
7 --precision fp321bash run_train_mult_diffusion.sh \
2 configs/stage2/training/ImageNet256/LightingDiT-XL_f16d64rpiae-v2b_vitxl.yaml1export RANK=<node_rank>
2export MASTER_ADDR=<master_node_ip_or_hostname>bf16 is supported, we recommend using fp32 for more stable training.src/sample.py uses the same config schema to draw a small batch of images on a
single device and saves them to sample.png:1python src/sample.py \
2 --config <sample_config> \
3 --seed 42src/sample_ddp.py parallelises sampling across GPUs, producing PNGs and an
FID-ready .npz:1torchrun --standalone --nnodes=1 --nproc_per_node=N \
2 src/sample_ddp.py \
3 --config <sample_config> \
4 --sample-dir samples \
5 --precision fp32/bf16 \
6 --label-sampling equal--label-sampling {equal,random}: equal uses exactly 50 images per class for FID-50k; random uniformly samples labels. We use equal by default. We recommend using fp32 when model FID is low.guidance block.1git clone https://github.com/openai/guided-diffusion.git
2cd guided-diffusion/evaluation1conda create -n adm-fid python=3.10
2conda activate adm-fid
3pip install 'tensorflow[and-cuda]'==2.19 scipy requests tqdmwget https://openaipublic.blob.core.windows.net/diffusion/jul-2021/ref_batches/imagenet/256/VIRTUAL_imagenet256_labeled.npzpython evaluator.py VIRTUAL_imagenet256_labeled.npz /path/to/samples.npz@misc{RPiAE,
title={RPiAE: A Representation-Pivoted Autoencoder Enhancing Both Image Generation and Editing},
author={Yue Gong and Hongyu Li and Shanyuan Liu and Bo Cheng and Yuhang Ma and Liebucha Wu and Xiaoyu Wu and Manyuan Zhang and Dawei Leng and Yuhui Yin and Lijun Zhang},
year={2026},
eprint={2603.19206},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2603.19206},
}