Spaces:
Runtime error
Runtime error
Upload app.py
Browse files
app.py
CHANGED
@@ -24,9 +24,11 @@ from diffusers import AutoencoderKL
|
|
24 |
from torch import Tensor, nn
|
25 |
from transformers import CLIPTextModel, CLIPTokenizer, T5EncoderModel, T5Tokenizer
|
26 |
from safetensors.torch import load_file
|
|
|
|
|
27 |
dtype = torch.bfloat16
|
28 |
-
from huggingface_hub import snapshot_download
|
29 |
-
model_path = snapshot_download(repo_id="nyanko7/flux-dev-de-distill")
|
30 |
device = "cuda" if torch.cuda.is_available() else "cpu"
|
31 |
# ---------------- Encoders ----------------
|
32 |
|
@@ -65,10 +67,14 @@ class HFEmbedder(nn.Module):
|
|
65 |
return outputs[self.output_key]
|
66 |
|
67 |
|
|
|
|
|
|
|
|
|
68 |
#device = "cuda"
|
69 |
-
t5 = HFEmbedder("DeepFloyd/t5-v1_1-xxl", max_length=512, torch_dtype=torch.bfloat16).to(device)
|
70 |
-
clip = HFEmbedder("openai/clip-vit-large-patch14", max_length=77, torch_dtype=torch.bfloat16).to(device)
|
71 |
-
ae = AutoencoderKL.from_pretrained("camenduru/FLUX.1-dev-diffusers", subfolder="vae", torch_dtype=torch.bfloat16).to(device)
|
72 |
# quantize(t5, weights=qfloat8)
|
73 |
# freeze(t5)
|
74 |
|
@@ -655,9 +661,10 @@ def generate_image(
|
|
655 |
):
|
656 |
if seed == 0:
|
657 |
seed = int(random.random() * 1000000)
|
|
|
658 |
|
659 |
#device = "cuda" if torch.cuda.is_available() else "cpu"
|
660 |
-
torch_device = torch.device(device)
|
661 |
|
662 |
if do_img2img and init_image is not None:
|
663 |
init_image = get_image(init_image)
|
@@ -696,8 +703,18 @@ def generate_image(
|
|
696 |
|
697 |
x = x.clamp(-1, 1)
|
698 |
x = rearrange(x[0], "c h w -> h w c")
|
699 |
-
img = Image.fromarray((127.5 * (x + 1.0)).cpu().byte().numpy())
|
700 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
701 |
return img, seed
|
702 |
|
703 |
def create_demo():
|
|
|
24 |
from torch import Tensor, nn
|
25 |
from transformers import CLIPTextModel, CLIPTokenizer, T5EncoderModel, T5Tokenizer
|
26 |
from safetensors.torch import load_file
|
27 |
+
from diffusers import FluxTransformer2DModel
|
28 |
+
from pipeline_flux_de_distill import FluxPipeline
|
29 |
dtype = torch.bfloat16
|
30 |
+
#from huggingface_hub import snapshot_download
|
31 |
+
#model_path = snapshot_download(repo_id="nyanko7/flux-dev-de-distill")
|
32 |
device = "cuda" if torch.cuda.is_available() else "cpu"
|
33 |
# ---------------- Encoders ----------------
|
34 |
|
|
|
67 |
return outputs[self.output_key]
|
68 |
|
69 |
|
70 |
+
model_path = "camenduru/FLUX.1-dev-diffusers"
|
71 |
+
transformer = FluxTransformer2DModel.from_pretrained("InstantX/flux-dev-de-distill-diffusers", torch_dtype=torch.bfloat16)
|
72 |
+
pipeline = FluxPipeline.from_pretrained(model_path, transformer=transformer, torch_dtype=torch.bfloat16).to(device)
|
73 |
+
|
74 |
#device = "cuda"
|
75 |
+
#t5 = HFEmbedder("DeepFloyd/t5-v1_1-xxl", max_length=512, torch_dtype=torch.bfloat16).to(device)
|
76 |
+
#clip = HFEmbedder("openai/clip-vit-large-patch14", max_length=77, torch_dtype=torch.bfloat16).to(device)
|
77 |
+
#ae = AutoencoderKL.from_pretrained("camenduru/FLUX.1-dev-diffusers", subfolder="vae", torch_dtype=torch.bfloat16).to(device)
|
78 |
# quantize(t5, weights=qfloat8)
|
79 |
# freeze(t5)
|
80 |
|
|
|
661 |
):
|
662 |
if seed == 0:
|
663 |
seed = int(random.random() * 1000000)
|
664 |
+
generator = torch.Generator(device=device).manual_seed(seed)
|
665 |
|
666 |
#device = "cuda" if torch.cuda.is_available() else "cpu"
|
667 |
+
"""torch_device = torch.device(device)
|
668 |
|
669 |
if do_img2img and init_image is not None:
|
670 |
init_image = get_image(init_image)
|
|
|
703 |
|
704 |
x = x.clamp(-1, 1)
|
705 |
x = rearrange(x[0], "c h w -> h w c")
|
706 |
+
img = Image.fromarray((127.5 * (x + 1.0)).cpu().byte().numpy())"""
|
707 |
|
708 |
+
img = pipeline(
|
709 |
+
prompt=prompt,
|
710 |
+
negative_prompt=neg_prompt,
|
711 |
+
guidance_scale=guidance,
|
712 |
+
num_inference_steps=num_steps,
|
713 |
+
width=width,
|
714 |
+
height=height,
|
715 |
+
generator=generator,
|
716 |
+
).images[0]
|
717 |
+
|
718 |
return img, seed
|
719 |
|
720 |
def create_demo():
|