Spaces:
Running
Running
| from utils import * | |
| global data_component | |
| def update_table(query, min_size, max_size, selected_tasks=None): | |
| df = get_df() | |
| filtered_df = search_and_filter_models(df, query, min_size, max_size) | |
| if selected_tasks and len(selected_tasks) > 0: | |
| selected_columns = BASE_COLS + selected_tasks | |
| filtered_df = filtered_df[selected_columns] | |
| return filtered_df | |
| with gr.Blocks() as block: | |
| gr.Markdown(LEADERBOARD_INTRODUCTION) | |
| with gr.Tabs(elem_classes="tab-buttons") as tabs: | |
| # Table 1 | |
| with gr.TabItem("π MMEB", elem_id="qa-tab-table1", id=1): | |
| with gr.Row(): | |
| with gr.Accordion("Citation", open=False): | |
| citation_button = gr.Textbox( | |
| value=CITATION_BUTTON_TEXT, | |
| label=CITATION_BUTTON_LABEL, | |
| elem_id="citation-button", | |
| lines=10, | |
| ) | |
| gr.Markdown(TABLE_INTRODUCTION) | |
| with gr.Row(): | |
| search_bar = gr.Textbox( | |
| placeholder="Search models...", | |
| show_label=False, | |
| elem_id="search-bar" | |
| ) | |
| df = get_df() | |
| min_size, max_size = get_size_range(df) | |
| with gr.Row(): | |
| min_size_slider = gr.Slider( | |
| minimum=min_size, | |
| maximum=max_size, | |
| value=min_size, | |
| step=0.1, | |
| label="Minimum number of parameters (B)", | |
| ) | |
| max_size_slider = gr.Slider( | |
| minimum=min_size, | |
| maximum=max_size, | |
| value=max_size, | |
| step=0.1, | |
| label="Maximum number of parameters (B)", | |
| ) | |
| task_choices = [col for col in COLUMN_NAMES if col not in BASE_COLS] | |
| with gr.Row(): | |
| tasks_select = gr.CheckboxGroup( | |
| choices=task_choices, | |
| value=task_choices, | |
| label="Select tasks to Display", | |
| elem_id="tasks-select" | |
| ) | |
| data_component = gr.components.Dataframe( | |
| value=df[COLUMN_NAMES], | |
| headers=COLUMN_NAMES, | |
| type="pandas", | |
| datatype=DATA_TITLE_TYPE, | |
| interactive=False, | |
| visible=True | |
| ) | |
| refresh_button = gr.Button("Refresh") | |
| def update_with_tasks(*args): | |
| return update_table(*args) | |
| search_bar.change( | |
| fn=update_with_tasks, | |
| inputs=[search_bar, min_size_slider, max_size_slider, tasks_select], | |
| outputs=data_component | |
| ) | |
| min_size_slider.change( | |
| fn=update_with_tasks, | |
| inputs=[search_bar, min_size_slider, max_size_slider, tasks_select], | |
| outputs=data_component | |
| ) | |
| max_size_slider.change( | |
| fn=update_with_tasks, | |
| inputs=[search_bar, min_size_slider, max_size_slider, tasks_select], | |
| outputs=data_component | |
| ) | |
| tasks_select.change( | |
| fn=update_with_tasks, | |
| inputs=[search_bar, min_size_slider, max_size_slider, tasks_select], | |
| outputs=data_component | |
| ) | |
| refresh_button.click(fn=refresh_data, outputs=data_component) | |
| # table 2 | |
| with gr.TabItem("π About", elem_id="qa-tab-table2", id=2): | |
| gr.Markdown(LEADERBOARD_INFO, elem_classes="markdown-text") | |
| # table 3 | |
| with gr.TabItem("π Submit here! ", elem_id="submit-tab", id=3): | |
| with gr.Row(): | |
| gr.Markdown(SUBMIT_INTRODUCTION, elem_classes="markdown-text") | |
| block.launch(share=True) |