|
import gradio as gr |
|
|
|
from leaderboard.dataset import get_leaderboard_df |
|
from leaderboard.submission import submit_model |
|
|
|
|
|
def display_leaderboard(): |
|
df = get_leaderboard_df() |
|
return df |
|
|
|
|
|
with gr.Blocks() as app: |
|
gr.Markdown("# human_methylation_bench_ver1 Leaderboard") |
|
|
|
with gr.Tab("Leaderboard"): |
|
leaderboard_df = gr.DataFrame( |
|
value=display_leaderboard(), |
|
headers=["Model Name", "Score (relative_error_loss)", "Rank"], |
|
interactive=False, |
|
label="Leaderboard", |
|
) |
|
|
|
with gr.Tab("Submit Model"): |
|
model_name_input = gr.Textbox(label="Model Name", placeholder="e.g. My Great Model") |
|
model_url_input = gr.Textbox( |
|
label="Hugging Face Model Joblib URL", |
|
placeholder="e.g. https://huggingface.co/username/model/resolve/main/model.joblib", |
|
) |
|
submit_button = gr.Button("Submit") |
|
|
|
submission_output = gr.DataFrame( |
|
headers=["Model Name", "Score (relative_error_loss)", "Rank"], interactive=False, label="Updated Leaderboard" |
|
) |
|
|
|
submit_button.click(submit_model, inputs=[model_name_input, model_url_input], outputs=submission_output) |
|
|
|
if __name__ == "__main__": |
|
app.launch() |
|
|