Spaces:
Runtime error
Runtime error
File size: 2,089 Bytes
8f29578 |
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 58 59 60 61 62 63 64 65 66 67 68 |
import torch
from diffusers import FluxPipeline
import gradio as gr
def generate_flux_image(
prompt,
width=512,
height=512,
num_inference_steps=50,
guidance_scale=7.5,
seed=None
):
# Zufallsgenerator-Initialisierung
if seed is None:
generator = torch.Generator(device="cuda" if torch.cuda.is_available() else "cpu")
else:
generator = torch.Generator(device="cuda" if torch.cuda.is_available() else "cpu").manual_seed(seed)
# Pipeline laden
pipeline = FluxPipeline.from_pretrained(
"improvements/flux", # Passen Sie den Pfad an
torch_dtype=torch.float16
)
# Überprüfen und ggf. auf GPU verschieben
if torch.cuda.is_available():
pipeline = pipeline.to("cuda")
# Bildgenerierung
image = pipeline(
prompt=prompt,
width=width,
height=height,
num_inference_steps=num_inference_steps,
guidance_scale=guidance_scale,
generator=generator
).images[0]
return image
# Gradio-Interface
def create_gradio_interface():
with gr.Blocks() as demo:
with gr.Row():
prompt = gr.Textbox(label="Bildprompt")
width = gr.Slider(minimum=64, maximum=2048, value=512, label="Breite")
height = gr.Slider(minimum=64, maximum=2048, value=512, label="Höhe")
with gr.Row():
steps = gr.Slider(minimum=10, maximum=100, value=50, label="Inference Steps")
guidance = gr.Slider(minimum=1, maximum=15, value=7.5, label="Guidance Scale")
seed = gr.Number(label="Seed (optional)", precision=0)
generate_btn = gr.Button("Bild generieren")
output_image = gr.Image(label="Generiertes Bild")
generate_btn.click(
fn=generate_flux_image,
inputs=[prompt, width, height, steps, guidance, seed],
outputs=output_image
)
return demo
# Interface starten
if __name__ == "__main__":
interface = create_gradio_interface()
interface.launch(share=True) |