Spaces:
Running
Running
import os | |
import time | |
import gradio as gr | |
import modelscope_studio as mgr | |
def resolve_assets(relative_path): | |
return os.path.join(os.path.dirname(__file__), "../../resources", | |
relative_path) | |
def load_more(_gallery): | |
time.sleep(1) | |
_gallery.append(resolve_assets('modelscope.svg')) | |
_gallery.append(resolve_assets('bot.jpeg')) | |
_gallery.append(resolve_assets('user.jpeg')) | |
_gallery.append(resolve_assets('screen.jpeg')) | |
has_more = True | |
if (len(_gallery) > 10): | |
has_more = False | |
return gr.update(value=_gallery, has_more=has_more) | |
with gr.Blocks() as demo: | |
gallery = mgr.WaterfallGallery( | |
value=[ | |
resolve_assets('modelscope.svg'), | |
# pass a tuple | |
[resolve_assets('bot.jpeg'), 'bot'], | |
# pass a dict | |
{ | |
"image": resolve_assets('user.jpeg'), | |
"caption": "user", | |
}, | |
resolve_assets('screen.jpeg'), | |
], | |
has_more=True, | |
columns=2, | |
height=600) | |
gallery.load_more(fn=load_more, inputs=[gallery], outputs=[gallery]) | |
if __name__ == "__main__": | |
demo.queue().launch() | |