Amber Tanaka
Asta Leaderboard First Draft (#3)
ee1b999 unverified
raw
history blame
2.11 kB
import gradio as gr
import pandas as pd
# Import our UI factories and the data loader
from ui_components import create_leaderboard_display, create_benchmark_details_display, get_full_leaderboard_data
# Define the category for this page
CATEGORY_NAME = "Code Execution"
with gr.Blocks() as demo:
gr.Markdown(f"## {CATEGORY_NAME} Leaderboard Results")
# --- This page now has two main sections: Validation and Test ---
with gr.Tabs():
with gr.Tab("Results: Validation"):
# 1. Load all necessary data for the "validation" split ONCE.
validation_df, validation_tag_map = get_full_leaderboard_data("validation")
if not validation_df.empty:
# 2. Render the main category display using the loaded data.
create_leaderboard_display(
full_df=validation_df,
tag_map=validation_tag_map,
category_name=CATEGORY_NAME,
split_name="validation"
)
# 3. Render the detailed breakdown for each benchmark in the category.
create_benchmark_details_display(
full_df=validation_df,
tag_map=validation_tag_map,
category_name=CATEGORY_NAME
)
else:
gr.Markdown("No data available for validation split.")
with gr.Tab("Results: Test"):
# Repeat the process for the "test" split
test_df, test_tag_map = get_full_leaderboard_data("test")
if not test_df.empty:
create_leaderboard_display(
full_df=test_df,
tag_map=test_tag_map,
category_name=CATEGORY_NAME,
split_name="test"
)
create_benchmark_details_display(
full_df=test_df,
tag_map=test_tag_map,
category_name=CATEGORY_NAME
)
else:
gr.Markdown("No data available for test split.")