Spaces:
Running
Running
| import os | |
| import time | |
| import gradio as gr | |
| import modelscope_studio.components.base as ms | |
| import modelscope_studio.components.legacy 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, ms.Application(): | |
| 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() | |