Spaces:
Running
Running
| import gradio as gr | |
| from utils import * | |
| from content import * | |
| from css_html_js import * | |
| with gr.Blocks(title=f'{benchname} Leaderboard', css=custom_css) as demo: | |
| gr.Markdown(intro_md) | |
| with gr.Tabs(elem_classes='tab-buttons') as tabs: | |
| with gr.TabItem('π Main Leaderboard', elem_id='main', id=0): | |
| table, type_map = build_df() | |
| headers = [coln for coln in table.columns if not coln.startswith('_')] | |
| datatypes = [type_map[x] for x in headers] | |
| colwidths = [80, 400, 120, 130] + [155 for _ in headers[4:]] | |
| with gr.Row(): | |
| model_name = gr.Textbox( | |
| value=search_default_val, | |
| label='Model Name', | |
| interactive=True, | |
| visible=True, | |
| ) | |
| model_size = gr.CheckboxGroup( | |
| choices=MODEL_SIZE, | |
| value=MODEL_SIZE, | |
| label='Model Size', | |
| interactive=True, | |
| ) | |
| model_type = gr.CheckboxGroup( | |
| choices=MODEL_TYPE, | |
| value=MODEL_TYPE, | |
| label='Model Type', | |
| interactive=True, | |
| ) | |
| data_component = gr.components.DataFrame( | |
| value=table[headers], | |
| type='pandas', | |
| datatype=datatypes, | |
| interactive=False, | |
| visible=True, | |
| max_height=700, | |
| column_widths=colwidths, | |
| ) | |
| def filter_df(model_name, model_size, model_type): | |
| df = table.copy(deep=True) | |
| df['_vis'] = [model_size_flag(x, model_size) for x in df['_parameters']] | |
| df['_vis'] &= pd.Series([model_type_flag(df.iloc[i], model_type) for i in range(len(df))]) | |
| if model_name != search_default_val: | |
| model_name_lower = model_name.lower() | |
| df['_vis'] &= pd.Series([(model_name_lower in name.lower()) for name in df['_name'].tolist()]) | |
| df = df[df['_vis']] | |
| df['Rank'] = list(range(1, len(df)+1)) | |
| ret = gr.components.DataFrame( | |
| value=df[headers], | |
| type='pandas', | |
| datatype=datatypes, | |
| interactive=False, | |
| wrap=True, | |
| visible=True, | |
| max_height=700, | |
| column_widths=colwidths, | |
| ) | |
| return ret | |
| model_name.submit(filter_df, [model_name, model_size, model_type], data_component) | |
| model_size.change(filter_df, [model_name, model_size, model_type], data_component) | |
| model_type.change(filter_df, [model_name, model_size, model_type], data_component) | |
| with gr.TabItem('π About', elem_id='about', id=1): | |
| gr.Markdown(about_md) | |
| with gr.TabItem('π Submit your model', elem_id='submit', id=2): | |
| gr.Markdown(submit_md) | |
| # with gr.Row(): | |
| # with gr.Accordion('Citation', open=False): | |
| # gr.Markdown(citation_md) | |
| gr.Markdown(Bottom_logo) | |
| if __name__=="__main__": | |
| demo.launch() | |