Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
|
@@ -17,20 +17,14 @@ from diffusers import AutoencoderKL, StableDiffusionXLPipeline
|
|
| 17 |
from diffusers import EulerAncestralDiscreteScheduler
|
| 18 |
#from diffusers import DPMSolverMultistepScheduler
|
| 19 |
#from diffusers import DDIMScheduler
|
| 20 |
-
#from diffusers import AutoencoderKL
|
| 21 |
from typing import Tuple
|
| 22 |
-
#from transformers import AutoTokenizer, AutoModelForCausalLM
|
| 23 |
import paramiko
|
| 24 |
import gc
|
| 25 |
import time
|
| 26 |
import datetime
|
| 27 |
from diffusers.schedulers import AysSchedules
|
| 28 |
|
| 29 |
-
|
| 30 |
-
#os.system("./cusparselt.sh")
|
| 31 |
-
#os.system("chmod +x ./cudnn.sh")
|
| 32 |
-
#os.system("./cudnn.sh")
|
| 33 |
-
#from gradio import themes
|
| 34 |
|
| 35 |
torch.backends.cuda.matmul.allow_tf32 = False
|
| 36 |
torch.backends.cuda.matmul.allow_bf16_reduced_precision_reduction = False
|
|
@@ -48,7 +42,6 @@ FTP_USER = "ford442"
|
|
| 48 |
FTP_PASS = "GoogleBez12!"
|
| 49 |
FTP_DIR = "1ink.us/stable_diff/" # Remote directory on FTP server
|
| 50 |
|
| 51 |
-
#vae_url = 'https://1ink.us/files/myslrVAE_v10.safetensors'
|
| 52 |
DESCRIPTIONXX = """
|
| 53 |
## REALVISXL V5.0 BF16 ⚡⚡⚡⚡
|
| 54 |
"""
|
|
@@ -113,21 +106,18 @@ def load_and_prepare_model(model_id):
|
|
| 113 |
model_dtypes = {"ford442/RealVisXL_V5.0_BF16": torch.bfloat16,}
|
| 114 |
dtype = model_dtypes.get(model_id, torch.bfloat16) # Default to float32 if not found
|
| 115 |
#vae = AutoencoderKL.from_pretrained("ford442/sdxl-vae-bf16", safety_checker=None)
|
| 116 |
-
vae = AutoencoderKL.from_pretrained("stabilityai/sdxl-vae")
|
| 117 |
#vae = AutoencoderKL.from_single_file('https://huggingface.co/ford442/sdxl-vae-bf16/mySLR/myslrVAE_v10.safetensors')
|
| 118 |
#vae = AutoencoderKL.from_pretrained("stabilityai/sd-vae-ft-mse",use_safetensors=True)
|
| 119 |
-
|
| 120 |
# vae = AutoencoderKL.from_pretrained("BeastHF/MyBack_SDXL_Juggernaut_XL_VAE/MyBack_SDXL_Juggernaut_XL_VAE_V10(version_X).safetensors",safety_checker=None).to(torch.bfloat16)
|
| 121 |
-
# vae = AutoencoderKL.from_pretrained("ford442/sdxl-vae-bf16", safety_checker=None).to('cuda')
|
| 122 |
-
#sched = EulerAncestralDiscreteScheduler.from_pretrained('ford442/Juggernaut-XI-v11-fp32', subfolder='scheduler',beta_schedule="scaled_linear",use_karras_sigmas=True)
|
| 123 |
#sched = EulerAncestralDiscreteScheduler.from_pretrained("SG161222/RealVisXL_V5.0", subfolder='scheduler',beta_schedule="scaled_linear", steps_offset=1,timestep_spacing="trailing"))
|
| 124 |
sched = EulerAncestralDiscreteScheduler.from_pretrained("SG161222/RealVisXL_V5.0", subfolder='scheduler', steps_offset=1,timestep_spacing="trailing")
|
| 125 |
-
#sched = EulerAncestralDiscreteScheduler(timestep_spacing="trailing",steps_offset=1)
|
| 126 |
#sched = EulerAncestralDiscreteScheduler.from_pretrained('ford442/RealVisXL_V5.0_BF16', subfolder='scheduler',beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1,use_karras_sigmas=True)
|
| 127 |
# sched = EulerAncestralDiscreteScheduler.from_config('ford442/RealVisXL_V5.0_BF16', beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
| 128 |
-
pipeX = StableDiffusionXLPipeline.from_pretrained("SG161222/RealVisXL_V5.0")
|
| 129 |
-
|
| 130 |
#pipeX = StableDiffusionXLPipeline.from_pretrained("ford442/Juggernaut-XI-v11-fp32",use_safetensors=True)
|
|
|
|
| 131 |
pipe = StableDiffusionXLPipeline.from_pretrained(
|
| 132 |
'ford442/RealVisXL_V5.0_BF16',
|
| 133 |
# 'ford442/Juggernaut-XI-v11-fp32',
|
|
@@ -146,18 +136,15 @@ def load_and_prepare_model(model_id):
|
|
| 146 |
# scheduler = EulerAncestralDiscreteScheduler.from_config(pipeX.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
| 147 |
#scheduler=EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset =1)
|
| 148 |
)
|
|
|
|
| 149 |
#sched = EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear",use_karras_sigmas=True, algorithm_type="dpmsolver++")
|
| 150 |
#pipe.scheduler = EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
| 151 |
-
|
| 152 |
|
| 153 |
pipe.scheduler = sched
|
| 154 |
-
pipe.vae=vae
|
| 155 |
-
pipe.unet=pipeX.unet
|
| 156 |
-
# pipe.scheduler=EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config)
|
| 157 |
-
#pipe.to(dtype=torch.bfloat16)
|
| 158 |
-
#pipe.unet = pipeX.unet
|
| 159 |
#pipe.scheduler=EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
| 160 |
-
#pipe.unet.to(torch.bfloat16)
|
| 161 |
|
| 162 |
pipe.to(device)
|
| 163 |
pipe.to(torch.bfloat16)
|
|
@@ -165,7 +152,6 @@ def load_and_prepare_model(model_id):
|
|
| 165 |
pipe.unet.set_default_attn_processor()
|
| 166 |
pipe.vae.set_default_attn_processor()
|
| 167 |
|
| 168 |
-
#pipe.to(torch.bfloat16)
|
| 169 |
print(f'Pipeline: ')
|
| 170 |
print(f'_optional_components: {pipe._optional_components}')
|
| 171 |
print(f'watermark: {pipe.watermark}')
|
|
|
|
| 17 |
from diffusers import EulerAncestralDiscreteScheduler
|
| 18 |
#from diffusers import DPMSolverMultistepScheduler
|
| 19 |
#from diffusers import DDIMScheduler
|
|
|
|
| 20 |
from typing import Tuple
|
|
|
|
| 21 |
import paramiko
|
| 22 |
import gc
|
| 23 |
import time
|
| 24 |
import datetime
|
| 25 |
from diffusers.schedulers import AysSchedules
|
| 26 |
|
| 27 |
+
from gradio import themes
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
|
| 29 |
torch.backends.cuda.matmul.allow_tf32 = False
|
| 30 |
torch.backends.cuda.matmul.allow_bf16_reduced_precision_reduction = False
|
|
|
|
| 42 |
FTP_PASS = "GoogleBez12!"
|
| 43 |
FTP_DIR = "1ink.us/stable_diff/" # Remote directory on FTP server
|
| 44 |
|
|
|
|
| 45 |
DESCRIPTIONXX = """
|
| 46 |
## REALVISXL V5.0 BF16 ⚡⚡⚡⚡
|
| 47 |
"""
|
|
|
|
| 106 |
model_dtypes = {"ford442/RealVisXL_V5.0_BF16": torch.bfloat16,}
|
| 107 |
dtype = model_dtypes.get(model_id, torch.bfloat16) # Default to float32 if not found
|
| 108 |
#vae = AutoencoderKL.from_pretrained("ford442/sdxl-vae-bf16", safety_checker=None)
|
| 109 |
+
#vae = AutoencoderKL.from_pretrained("stabilityai/sdxl-vae")
|
| 110 |
#vae = AutoencoderKL.from_single_file('https://huggingface.co/ford442/sdxl-vae-bf16/mySLR/myslrVAE_v10.safetensors')
|
| 111 |
#vae = AutoencoderKL.from_pretrained("stabilityai/sd-vae-ft-mse",use_safetensors=True)
|
| 112 |
+
vae = AutoencoderKL.from_pretrained('ford442/Juggernaut-XI-v11-fp32',subfolder='vae')
|
| 113 |
# vae = AutoencoderKL.from_pretrained("BeastHF/MyBack_SDXL_Juggernaut_XL_VAE/MyBack_SDXL_Juggernaut_XL_VAE_V10(version_X).safetensors",safety_checker=None).to(torch.bfloat16)
|
|
|
|
|
|
|
| 114 |
#sched = EulerAncestralDiscreteScheduler.from_pretrained("SG161222/RealVisXL_V5.0", subfolder='scheduler',beta_schedule="scaled_linear", steps_offset=1,timestep_spacing="trailing"))
|
| 115 |
sched = EulerAncestralDiscreteScheduler.from_pretrained("SG161222/RealVisXL_V5.0", subfolder='scheduler', steps_offset=1,timestep_spacing="trailing")
|
|
|
|
| 116 |
#sched = EulerAncestralDiscreteScheduler.from_pretrained('ford442/RealVisXL_V5.0_BF16', subfolder='scheduler',beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1,use_karras_sigmas=True)
|
| 117 |
# sched = EulerAncestralDiscreteScheduler.from_config('ford442/RealVisXL_V5.0_BF16', beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
| 118 |
+
pipeX = StableDiffusionXLPipeline.from_pretrained("SG161222/RealVisXL_V5.0",use_safetensors=False)
|
|
|
|
| 119 |
#pipeX = StableDiffusionXLPipeline.from_pretrained("ford442/Juggernaut-XI-v11-fp32",use_safetensors=True)
|
| 120 |
+
|
| 121 |
pipe = StableDiffusionXLPipeline.from_pretrained(
|
| 122 |
'ford442/RealVisXL_V5.0_BF16',
|
| 123 |
# 'ford442/Juggernaut-XI-v11-fp32',
|
|
|
|
| 136 |
# scheduler = EulerAncestralDiscreteScheduler.from_config(pipeX.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
| 137 |
#scheduler=EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset =1)
|
| 138 |
)
|
| 139 |
+
|
| 140 |
#sched = EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear",use_karras_sigmas=True, algorithm_type="dpmsolver++")
|
| 141 |
#pipe.scheduler = EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
| 142 |
+
# for set timestep pipeline.scheduler = DPMSolverMultistepScheduler.from_config(pipeline.scheduler.config, algorithm_type="sde-dpmsolver++")
|
| 143 |
|
| 144 |
pipe.scheduler = sched
|
| 145 |
+
pipe.vae=vae.to(torch.bfloat16)
|
| 146 |
+
pipe.unet=pipeX.unet.to(torch.bfloat16)
|
|
|
|
|
|
|
|
|
|
| 147 |
#pipe.scheduler=EulerAncestralDiscreteScheduler.from_config(pipe.scheduler.config, beta_schedule="scaled_linear", beta_start=0.00085, beta_end=0.012, steps_offset=1)
|
|
|
|
| 148 |
|
| 149 |
pipe.to(device)
|
| 150 |
pipe.to(torch.bfloat16)
|
|
|
|
| 152 |
pipe.unet.set_default_attn_processor()
|
| 153 |
pipe.vae.set_default_attn_processor()
|
| 154 |
|
|
|
|
| 155 |
print(f'Pipeline: ')
|
| 156 |
print(f'_optional_components: {pipe._optional_components}')
|
| 157 |
print(f'watermark: {pipe.watermark}')
|