Views
No views yet
diffusers-compatible weights for the end-to-end trained SD-3.5-VAE. In addition, we release end-to-end trained variants of several other widely used VAEs to facilitate research and integration within text-to-image diffusion frameworks.
1from diffusers import AutoencoderKL
2
3vae = AutoencoderKL.from_pretrained("REPA-E/e2e-sd3.5-vae").to("cuda")Usevae.encode(...)/vae.decode(...)in your pipeline. (A full example is provided below.)
| Model | Hugging Face Link |
|---|---|
| E2E-FLUX-VAE | 🤗 REPA-E/e2e-flux-vae |
| E2E-SD-3.5-VAE | 🤗 REPA-E/e2e-sd3.5-vae |
| E2E-Qwen-Image-VAE | 🤗 REPA-E/e2e-qwenimage-vae |
diffusers library:1pip install diffusers>=0.33.0
2pip install torch>=2.3.1diffusers:1from io import BytesIO
2import requests
3
4from diffusers import AutoencoderKL
5import numpy as np
6import torch
7from PIL import Image
8
9
10response = requests.get("https://raw.githubusercontent.com/End2End-Diffusion/fuse-dit/main/assets/example.png")
11device = "cuda"
12
13image = torch.from_numpy(
14 np.array(
15 Image.open(BytesIO(response.content))
16 )
17).permute(2, 0, 1).unsqueeze(0).to(torch.float32) / 127.5 - 1
18image = image.to(device)
19
20vae = AutoencoderKL.from_pretrained("REPA-E/e2e-sd3.5-vae").to(device)
21
22with torch.no_grad():
23 latents = vae.encode(image).latent_dist.sample()
24 reconstructed = vae.decode(latents).sample
25