freddyaboulton's picture
Upload folder using huggingface_hub
60324a2 verified
Raw
History Blame Contribute Delete
1.6 kB
import gradio as gr
with gr.Blocks() as demo:
files = [
"https://gradio-builds.s3.amazonaws.com/assets/cheetah-003.jpg",
"https://gradio-static-files.s3.amazonaws.com/world.mp4",
"https://gradio-builds.s3.amazonaws.com/assets/TheCheethcat.jpg",
]
with gr.Row():
with gr.Column():
gal = gr.Gallery(columns=4, interactive=True, label="Input Gallery",
sources=["upload", "webcam", "clipboard"])
btn = gr.Button()
with gr.Column():
output_gal = gr.Gallery(columns=4, interactive=True, label="Output Gallery")
with gr.Row():
textbox = gr.Json(label="uploaded files")
num_upload = gr.Number(value=0, label="Num Upload")
num_change = gr.Number(value=0, label="Num Change")
preview_open = gr.Number(value=0, label="Preview Open?")
select_output = gr.Textbox(label="Select Data")
gal.upload(lambda v,n: (v, v, n+1), [gal, num_upload], [textbox, output_gal, num_upload])
gal.change(lambda v,n: (v, v, n+1), [gal, num_change], [textbox, output_gal, num_change])
output_gal.preview_open(lambda: 1, inputs=None, outputs=preview_open)
output_gal.preview_close(lambda: 0, inputs=None, outputs=preview_open)
btn.click(lambda: files, None, [output_gal])
def select(select_data: gr.SelectData):
return select_data.value['image']['url'] if 'image' in select_data.value else select_data.value['video']['url']
output_gal.select(select, None, select_output)
if __name__ == "__main__":
demo.launch()