File size: 1,648 Bytes
2ec2ebd
 
 
fe9c201
 
 
 
 
12ff912
c3eb335
ba74c9e
ad4c6dc
fe9c201
 
2ec2ebd
e18f8f6
5da5f21
ba74c9e
5da5f21
fe9c201
5da5f21
fe9c201
 
 
 
c3eb335
fe9c201
c3eb335
 
fe9c201
 
 
5da5f21
fe9c201
 
 
5da5f21
fe9c201
5da5f21
fe9c201
5da5f21
fe9c201
 
5da5f21
 
fe9c201
 
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
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
    for skip_layers in range(11, -1, -1):
        images = get_images(prompt, skip_layers=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

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")

    # button = gr.Button("Diffusion Lens")  # Create a button with the label 'Diffusion Lens'

    # Bind the button click to the generate_images function
    # button.click(fn=generate_images, inputs=[text_input, gr.State(all_images)], outputs=gallery)
    
    text_input.submit(fn=generate_images, inputs=text_input, outputs=gallery)

demo.launch()


# def display_images(images):
#     # Prepare images for display
#     return [gr.Image(image) for image in images]

# def get_prompt(prompt):
#     print('prompt:', prompt)
#     return prompt

# def generate_images(prompt):
#     print('calling diffusion lens')
#     for skip_layers in range(23, 0, -1):
#         images = get_images(prompt, skip_layers=skip_layers)
#         yield images[0]  # Yield each image as soon as it's ready
#         # yield gr.Image(images[0])  # Yield each image as soon as it's ready

# with gr.Blocks() as demo:
#     text_input = gr.Interface(fn=generate_images, inputs="text", outputs="image")
# demo.launch()