import gradio as gr import replicate import time DEPLOYMENT_URIS = { "Lora 500": "dd-ds-ai/abendblatt-lora-500", "Lora 1000": "dd-ds-ai/lora-test-01-deployment-test", "Lora 2000": "dd-ds-ai/abendblatt-lora-2000" } def generate_image(model_selection, lora_scale, guidance_scale, prompt_strength, num_steps, prompt): # deployment_uri = DEPLOYMENT_URIS[model_selection] # deployment = replicate.deployments.get(deployment_uri) # # prediction = deployment.predictions.create( # input={ # "model": "dev", # "lora_scale": lora_scale, # "num_outputs": 1, # "aspect_ratio": "1:1", # "output_format": "webp", # "guidance_scale": guidance_scale, # "output_quality": 90, # "prompt_strength": prompt_strength, # "extra_lora_scale": 1, # "num_inference_steps": num_steps, # "prompt": prompt # } # ) # prediction.wait() # output = prediction.output # image_url = output[0] if output else None time.sleep(20) image_url = "https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fi1.sndcdn.com%2Fartworks-000207677710-z7mg8u-t500x500.jpg&f=1&nofb=1&ipt=54d62f19e1816c166bec632275277c4118a940853b2cd93d1c673ea487d9dfee&ipo=images" return image_url # Gradio-Interface erstellen def create_gradio_interface(): model_selection = gr.Radio(choices=["Lora 500", "Lora 1000", "Lora 2000"], label="Model Selection", value="Lora 1000") lora_scale = gr.Slider(0, 2, value=1, step=0.1, label="Lora Scale") guidance_scale = gr.Slider(1, 10, value=3.5, step=0.1, label="Guidance Scale") prompt_strength = gr.Slider(0, 1, value=0.8, step=0.1, label="Prompt Strength") num_steps = gr.Slider(1, 50, value=28, step=1, label="Number of Inference Steps") prompt = gr.Textbox(label="Prompt", value="a person reading the hamburger abendblatt newspaper") generate_btn = gr.Button("Bild generieren") interface = gr.Interface( fn=generate_image, inputs=[model_selection, lora_scale, guidance_scale, prompt_strength, num_steps, prompt], outputs=gr.Image(label="Generated Image"), ) interface.launch(share=True) # Starte die Gradio-App if __name__ == "__main__": create_gradio_interface()