Spaces:
Running
on
T4
Running
on
T4
File size: 2,911 Bytes
d8fcee4 d767ca6 d8fcee4 9c2a5f6 8ec67ee 871bf7f d8fcee4 9c2a5f6 bc8b335 871bf7f 9c2a5f6 871bf7f 9c2a5f6 8b28b93 d767ca6 871bf7f 7d80404 d767ca6 b126be6 8b28b93 9c2a5f6 8b28b93 9c2a5f6 d767ca6 f606112 d767ca6 f606112 d767ca6 f606112 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
import gradio as gr
import torch
import numpy as np
import modin.pandas as pd
from PIL import Image
from diffusers import StableDiffusion3Pipeline #DiffusionPipeline #, StableDiffusion3Pipeline
from huggingface_hub import hf_hub_download
from diffusers import BitsAndBytesConfig, SD3Transformer2DModel
device = 'cuda' if torch.cuda.is_available() else 'cpu'
torch.cuda.max_memory_allocated(device=device)
torch.cuda.empty_cache()
model_id = "stabilityai/stable-diffusion-3.5-large-turbo"
nf4_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=torch.bfloat16
)
model_nf4 = SD3Transformer2DModel.from_pretrained(
model_id,
subfolder="transformer",
quantization_config=nf4_config,
torch_dtype=torch.bfloat16
)
t5_nf4 = T5EncoderModel.from_pretrained("diffusers/t5-nf4", torch_dtype=torch.bfloat16)
pipeline = StableDiffusion3Pipeline.from_pretrained(
model_id,
transformer=model_nf4,
text_encoder_3=t5_nf4,
torch_dtype=torch.bfloat16
)
pipeline.enable_model_cpu_offload()
def genie (Prompt, height, width, seed):
generator = np.random.seed(0) if seed == 0 else torch.manual_seed(seed)
image = pipeline(Prompt, num_inference_steps=4, height=height, width=width, guidance_scale=0.0,).images[0]
return image
gr.Interface(fn=genie, inputs=[#gr.Radio(['PhotoReal', 'Animagine XL 4',], value='PhotoReal', label='Choose Model'),
gr.Textbox(label='What you want the AI to generate. 77 Token Limit.'),
#gr.Textbox(label='What you Do Not want the AI to generate. 77 Token Limit'),
gr.Slider(512, 1024, 768, step=128, label='Height'),
gr.Slider(512, 1024, 768, step=128, label='Width'),
#gr.Slider(3, maximum=12, value=5, step=.25, label='Guidance Scale', info="5-7 for PhotoReal and 7-10 for Animagine"),
#gr.Slider(25, maximum=50, value=25, step=25, label='Number of Iterations'),
gr.Slider(minimum=0, step=1, maximum=9999999999999999, randomize=True, label='Seed: 0 is Random'),
],
outputs=gr.Image(label='Generated Image'),
title="Manju Dream Booth V2.5 - GPU",
description="<br><br><b/>Warning: This Demo is capable of producing NSFW content.",
article = "If You Enjoyed this Demo and would like to Donate, you can send any amount to any of these Wallets. <br><br>SHIB (BEP20): 0xbE8f2f3B71DFEB84E5F7E3aae1909d60658aB891 <br>PayPal: https://www.paypal.me/ManjushriBodhisattva <br>ETH: 0xbE8f2f3B71DFEB84E5F7E3aae1909d60658aB891 <br>DOGE: DL5qRkGCzB2ENBKfEhHarvKm1qas3wyHx7<br><br>Code Monkey: <a href=\"https://huggingface.co/Manjushri\">Manjushri</a>").launch(debug=True, max_threads=80) |