import gradio as gr import pandas as pd from gradio_leaderboard import Leaderboard, SelectColumns, ColumnFilter TITLE = "

M-RewardBench Leaderboard

" INTRODUCTION_TEXT = "https://m-rewardbench.github.io/" GOOGLE_SHEET_URL = "https://docs.google.com/spreadsheets/d/1qrD7plUdrBwAw7G6UeDVZAaV9ihxaNAcoiKwSaqotR4/export?gid=0&format=csv" ABOUT_TEXT = """Welcome to M-RewardBench Leaderboard!""" class AutoEvalColumn: model = { "name": "Model", "type": "markdown", "displayed_by_default": True, "never_hidden": True, } model_type = { "name": "Model_Type", "type": "markdown", "displayed_by_default": True, "never_hidden": True, } eng_Latn = { "name": "eng_Latn", "type": "float", "displayed_by_default": True, "never_hidden": False, } Avg_Multilingual = { "name": "Avg_Multilingual", "type": "float", "displayed_by_default": True, "never_hidden": False, } arb_Arab = { "name": "arb_Arab", "type": "float", "displayed_by_default": True, "never_hidden": False, } tur_Latn = { "name": "tur_Latn", "type": "float", "displayed_by_default": True, "never_hidden": False, } rus_Cyrl = { "name": "rus_Cyrl", "type": "float", "displayed_by_default": True, "never_hidden": False, } ces_Latn = { "name": "ces_Latn", "type": "float", "displayed_by_default": True, "never_hidden": False, } pol_Latn = { "name": "pol_Latn", "type": "float", "displayed_by_default": True, "never_hidden": False, } kor_Hang = { "name": "kor_Hang", "type": "float", "displayed_by_default": True, "never_hidden": False, } def get_result_data(): return pd.read_csv(GOOGLE_SHEET_URL) def init_leaderboard(dataframe): if dataframe is None or dataframe.empty: raise ValueError("Leaderboard DataFrame is empty or None.") return Leaderboard( value=dataframe, datatype=[ col["type"] for col in AutoEvalColumn.__dict__.values() if isinstance(col, dict) ], select_columns=SelectColumns( default_selection=[ col["name"] for col in AutoEvalColumn.__dict__.values() if isinstance(col, dict) and col["displayed_by_default"] ], cant_deselect=[ col["name"] for col in AutoEvalColumn.__dict__.values() if isinstance(col, dict) and col.get("never_hidden", False) ], label="Select Columns to Display:", ), search_columns=["Model"], interactive=False, ) def format_model_link(row): """Format model name as HTML link if URL is available""" model_name = row["Model"] # url = row.get("URL", "") # if pd.notna(url) and url.strip(): # return f'{model_name}' return model_name demo = gr.Blocks() with demo: gr.HTML(TITLE) gr.Markdown(INTRODUCTION_TEXT) with gr.Tabs() as tabs: with gr.TabItem("🏅 Leaderboard"): df = get_result_data() df["Model"] = df.apply(format_model_link, axis=1) leaderboard = init_leaderboard(df) demo.launch(ssr_mode=False)