Spaces:
Running
Running
File size: 2,242 Bytes
046367c ac3b2cc 046367c 4a88483 046367c |
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 69 70 |
import gradio as gr
from datasets import load_dataset
import random
import math
from datasets import load_dataset
import gradio as gr
import os
mydataset_private = load_dataset("glitchbench/GlitchBench")["validation"]
dataset_size = len(mydataset_private)
GRID_SIZE = (2, 2)
def get_item_data(image_index):
item = mydataset_private[image_index]
return item
def show_random_samples():
total = GRID_SIZE[0] * GRID_SIZE[1]
random_indexes = random.sample(range(dataset_size), total)
all_examples = [get_item_data(index) for index in random_indexes]
all_inputs_left_right = []
for example_idx, example in enumerate(all_examples):
all_inputs_left_right.append(example["image"])
all_inputs_left_right.append(example["source"])
all_inputs_left_right.append(example["glitch-type"])
all_inputs_left_right.append(example["reddit"])
all_inputs_left_right.append("Secrect")
return all_inputs_left_right
def make_grid(grid_size):
list_of_components = []
with gr.Row():
for row_counter in range(grid_size[0]):
with gr.Column():
for col_counter in range(grid_size[1]):
item_image = gr.Image()
with gr.Accordion("Click for details", open=False):
item_glitch_source = gr.Textbox(label="Glitch Source")
item_reddit = gr.Textbox(label="Glitch Type")
item_id = gr.Textbox(label="Reddit ID")
item_description = gr.Textbox(label="Description")
list_of_components.append(item_image)
list_of_components.append(item_glitch_source)
list_of_components.append(item_reddit)
list_of_components.append(item_id)
list_of_components.append(item_description)
return list_of_components
with gr.Blocks(title="GltichBench") as browser:
gr.Markdown("## GlitchBench dataset explorer")
with gr.Column():
random_btn = gr.Button("Random Sample")
with gr.Row():
grid = make_grid(GRID_SIZE)
random_btn.click(show_random_samples, inputs=[], outputs=[*grid])
browser.launch()
|