Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
@@ -5,7 +5,7 @@ import random
|
|
5 |
|
6 |
import torch
|
7 |
from diffusers import StableDiffusion3Pipeline, AutoencoderKL
|
8 |
-
|
9 |
from transformers import CLIPTokenizer, T5TokenizerFast
|
10 |
|
11 |
import re
|
@@ -61,27 +61,35 @@ def upload_to_ftp(filename):
|
|
61 |
pyx = cyper.inline(code, fast_indexing=True, directives=dict(boundscheck=False, wraparound=False, language_level=3))
|
62 |
|
63 |
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
|
64 |
-
|
65 |
|
66 |
pipe = StableDiffusion3Pipeline.from_pretrained(
|
67 |
#"stabilityai # stable-diffusion-3.5-large",
|
68 |
"ford442/stable-diffusion-3.5-large-bf16",
|
69 |
# vae=AutoencoderKL.from_pretrained("ford442/stable-diffusion-3.5-large-fp32", use_safetensors=True, subfolder='vae',token=True),
|
70 |
#scheduler = FlowMatchHeunDiscreteScheduler.from_pretrained('ford442/stable-diffusion-3.5-large-bf16', subfolder='scheduler',token=True),
|
|
|
71 |
# text_encoder=CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder', token=True),
|
|
|
72 |
# text_encoder_2=CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_2',token=True),
|
|
|
73 |
# text_encoder_3=T5EncoderModel.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_3',token=True),
|
74 |
#tokenizer=CLIPTokenizer.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", add_prefix_space=True, subfolder="tokenizer", token=True),
|
75 |
#tokenizer_2=CLIPTokenizer.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", add_prefix_space=True, subfolder="tokenizer_2", token=True),
|
76 |
tokenizer_3=T5TokenizerFast.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", add_prefix_space=False, use_fast=True, subfolder="tokenizer_3", token=True),
|
77 |
-
|
78 |
#torch_dtype=torch.bfloat16,
|
79 |
#use_safetensors=False,
|
80 |
)
|
81 |
#pipe.load_lora_weights("ford442/sdxl-vae-bf16", weight_name="LoRA/UltraReal.safetensors")
|
82 |
pipe.to(device=device, dtype=torch.bfloat16)
|
83 |
#pipe.to(device)
|
|
|
84 |
|
|
|
|
|
|
|
|
|
85 |
upscaler_2 = UpscaleWithModel.from_pretrained("Kim2091/ClearRealityV1").to(torch.device('cpu'))
|
86 |
|
87 |
MAX_SEED = np.iinfo(np.int32).max
|
@@ -100,6 +108,9 @@ def infer_30(
|
|
100 |
num_inference_steps,
|
101 |
progress=gr.Progress(track_tqdm=True),
|
102 |
):
|
|
|
|
|
|
|
103 |
torch.set_float32_matmul_precision("highest")
|
104 |
seed = random.randint(0, MAX_SEED)
|
105 |
generator = torch.Generator(device='cuda').manual_seed(seed)
|
@@ -147,6 +158,9 @@ def infer_60(
|
|
147 |
num_inference_steps,
|
148 |
progress=gr.Progress(track_tqdm=True),
|
149 |
):
|
|
|
|
|
|
|
150 |
torch.set_float32_matmul_precision("highest")
|
151 |
seed = random.randint(0, MAX_SEED)
|
152 |
generator = torch.Generator(device='cuda').manual_seed(seed)
|
@@ -193,6 +207,9 @@ def infer_90(
|
|
193 |
num_inference_steps,
|
194 |
progress=gr.Progress(track_tqdm=True),
|
195 |
):
|
|
|
|
|
|
|
196 |
torch.set_float32_matmul_precision("highest")
|
197 |
seed = random.randint(0, MAX_SEED)
|
198 |
generator = torch.Generator(device='cuda').manual_seed(seed)
|
|
|
5 |
|
6 |
import torch
|
7 |
from diffusers import StableDiffusion3Pipeline, AutoencoderKL
|
8 |
+
from transformers import CLIPTextModelWithProjection, T5EncoderModel
|
9 |
from transformers import CLIPTokenizer, T5TokenizerFast
|
10 |
|
11 |
import re
|
|
|
61 |
pyx = cyper.inline(code, fast_indexing=True, directives=dict(boundscheck=False, wraparound=False, language_level=3))
|
62 |
|
63 |
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
|
64 |
+
vaeX=AutoencoderKL.from_pretrained("ford442/stable-diffusion-3.5-large-fp32", use_safetensors=True, subfolder='vae',token=True)
|
65 |
|
66 |
pipe = StableDiffusion3Pipeline.from_pretrained(
|
67 |
#"stabilityai # stable-diffusion-3.5-large",
|
68 |
"ford442/stable-diffusion-3.5-large-bf16",
|
69 |
# vae=AutoencoderKL.from_pretrained("ford442/stable-diffusion-3.5-large-fp32", use_safetensors=True, subfolder='vae',token=True),
|
70 |
#scheduler = FlowMatchHeunDiscreteScheduler.from_pretrained('ford442/stable-diffusion-3.5-large-bf16', subfolder='scheduler',token=True),
|
71 |
+
text_encoder=None, #CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder', token=True),
|
72 |
# text_encoder=CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder', token=True),
|
73 |
+
text_encoder_2=None, #CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_2',token=True),
|
74 |
# text_encoder_2=CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_2',token=True),
|
75 |
+
text_encoder_3=None, #T5EncoderModel.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_3',token=True),
|
76 |
# text_encoder_3=T5EncoderModel.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_3',token=True),
|
77 |
#tokenizer=CLIPTokenizer.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", add_prefix_space=True, subfolder="tokenizer", token=True),
|
78 |
#tokenizer_2=CLIPTokenizer.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", add_prefix_space=True, subfolder="tokenizer_2", token=True),
|
79 |
tokenizer_3=T5TokenizerFast.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", add_prefix_space=False, use_fast=True, subfolder="tokenizer_3", token=True),
|
80 |
+
vae=None,
|
81 |
#torch_dtype=torch.bfloat16,
|
82 |
#use_safetensors=False,
|
83 |
)
|
84 |
#pipe.load_lora_weights("ford442/sdxl-vae-bf16", weight_name="LoRA/UltraReal.safetensors")
|
85 |
pipe.to(device=device, dtype=torch.bfloat16)
|
86 |
#pipe.to(device)
|
87 |
+
pipe.vae=vaeX.to('cpu')
|
88 |
|
89 |
+
text_encoder=CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder', token=True).to(device=device, dtype=torch.bfloat16)
|
90 |
+
text_encoder_2=CLIPTextModelWithProjection.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_2',token=True).to(device=device, dtype=torch.bfloat16)
|
91 |
+
text_encoder_3=T5EncoderModel.from_pretrained("ford442/stable-diffusion-3.5-large-bf16", subfolder='text_encoder_3',token=True).to(device=device, dtype=torch.bfloat16)
|
92 |
+
|
93 |
upscaler_2 = UpscaleWithModel.from_pretrained("Kim2091/ClearRealityV1").to(torch.device('cpu'))
|
94 |
|
95 |
MAX_SEED = np.iinfo(np.int32).max
|
|
|
108 |
num_inference_steps,
|
109 |
progress=gr.Progress(track_tqdm=True),
|
110 |
):
|
111 |
+
pipe.text_encoder=text_encoder
|
112 |
+
pipe.text_encoder_2=text_encoder_2
|
113 |
+
pipe.text_encoder_3=text_encoder_3
|
114 |
torch.set_float32_matmul_precision("highest")
|
115 |
seed = random.randint(0, MAX_SEED)
|
116 |
generator = torch.Generator(device='cuda').manual_seed(seed)
|
|
|
158 |
num_inference_steps,
|
159 |
progress=gr.Progress(track_tqdm=True),
|
160 |
):
|
161 |
+
pipe.text_encoder=text_encoder
|
162 |
+
pipe.text_encoder_2=text_encoder_2
|
163 |
+
pipe.text_encoder_3=text_encoder_3
|
164 |
torch.set_float32_matmul_precision("highest")
|
165 |
seed = random.randint(0, MAX_SEED)
|
166 |
generator = torch.Generator(device='cuda').manual_seed(seed)
|
|
|
207 |
num_inference_steps,
|
208 |
progress=gr.Progress(track_tqdm=True),
|
209 |
):
|
210 |
+
pipe.text_encoder=text_encoder
|
211 |
+
pipe.text_encoder_2=text_encoder_2
|
212 |
+
pipe.text_encoder_3=text_encoder_3
|
213 |
torch.set_float32_matmul_precision("highest")
|
214 |
seed = random.randint(0, MAX_SEED)
|
215 |
generator = torch.Generator(device='cuda').manual_seed(seed)
|