Spaces:
Runtime error
Runtime error
File size: 2,195 Bytes
bcb94b3 72447d4 bcb94b3 72447d4 7fdd80f 72447d4 6d60b67 72447d4 d029e8e 72447d4 d029e8e |
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 |
import gradio as gr
import time
import logging
# Set up logging
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)
def load_model(model_path):
logger.info(f"Attempting to load model from {model_path}...")
try:
demo = gr.load(model_path)
logger.info(f"Successfully loaded demo from {model_path}.")
return demo
except Exception as e:
logger.error(f"Failed to load demo from {model_path}: {e}")
return None
# Load the demo
demo = load_model("models/John6666/only-porn-real-porn-sdxl")
def generate_image(prompt, max_retries=5):
# if demo is None:
# return None, "Error: Demo failed to load."
for attempt in range(max_retries):
try:
logger.info(f"Attempt {attempt + 1}: Starting image generation with prompt: {prompt}")
start_time = time.time()
result = demo(prompt)
generation_time = time.time() - start_time
logger.info(f"Generation completed in {generation_time:.2f} seconds")
logger.info(result)
return result, f"Image generated successfully\nGeneration time: {generation_time:.2f} seconds"
except Exception as e:
logger.error(f"Error on attempt {attempt + 1}: {str(e)}")
if attempt < max_retries - 1:
logger.info(f"Retrying... ({attempt + 2}/{max_retries})")
else:
logger.error("Max retries reached. Giving up.")
return None, f"Failed to generate image after {max_retries} attempts. Last error: {str(e)}"
# This line should never be reached, but just in case:
return None, "Unexpected error occurred"
iface = gr.Interface(
fn=generate_image,
inputs=gr.Textbox(label="Enter your prompt"),
outputs=[
gr.Image(label="Generated Image"),
gr.Textbox(label="Output Information", lines=5)
],
title="Text-to-Image Generation",
description="Enter a prompt to generate an image. The system will automatically retry up to 5 times if an error occurs."
)
logger.info("Launching the Gradio interface...")
iface.launch() |