import gradio as gr from diffusion_lens import get_images def generate_images(prompt): print('calling diffusion lens') all_images = [] # Initialize a list to store all images message = 'Generating images from intermediate layers..)' # Message for the user for skip_layers in range(11, -1, -1): images = get_images(prompt, skip_layers=skip_layers) all_images.append((images[0], f'layer_{12 - skip_layers}')) # all_images.append(images[0]) # (images[0], f'layer_{12 - skip_layers}')) # Add the new image to the list # yield all_images # Yield the list of all images yield all_images, message # Yield the list of all images with labels and the message with gr.Blocks() as demo: text_input = gr.Textbox(label="Enter prompt") gallery = gr.Gallery(label="Generated Images", columns=6, rows=2, object_fit="contain", height="auto") # text_input.submit(fn=generate_images, inputs=text_input, outputs=gallery) text_input.submit(fn=generate_images, inputs=text_input, outputs=[gallery, message_display]) demo.launch()