ZhangYuhan's picture
update leaderboard
9cb5506
import gradio as gr
import os
import json
from pathlib import Path
from serve.css import block_css
from serve.markdown import *
from serve.leaderboard import build_leaderboard_tab
from serve.model import model_config
# SERVER_PORT, ROOT_PATH, ELO_RESULTS_DIR
SERVER_PORT = 7860
LEADERBOARD_DIR = "leaderboards"
def build_combine_demo():
with gr.Blocks(
title="",
theme=gr.themes.Default(),
css=block_css,
) as demo:
gr.Markdown(get_title_md(), elem_id="title_markdown")
gr.Markdown(get_intro_md(), elem_id="intro_markdown")
gr.Markdown("Models", elem_id="subtitle_markdown")
gr.Markdown(get_model_intro_md(), elem_id="intro_markdown")
with gr.Accordion("🔍 Expand to see detailed generative models involved", open=False):
gr.Markdown(get_model_description_md(model_config), elem_id="model_description_markdown")
gr.Markdown("Criteria", elem_id="subtitle_markdown")
gr.Markdown(get_object_dimension_intro_md(), elem_id="intro_markdown")
with gr.Accordion("🔍 Expand to see detailed evaluation dimensions", open=False):
gr.Markdown(get_object_dimension_description_md(), elem_id="evaldim_markdown")
gr.Markdown("Leaderboard", elem_id="subtitle_markdown")
# gr.Markdown(get_leaderboard_intro_md(), elem_id="intro_markdown")
with gr.Tab("Hi3DEval"):
gr.Markdown(get_hi3deval_intro_md(), elem_id="intro_markdown")
hi3deval_leaderboard_file = gr.Textbox(value=os.path.join(LEADERBOARD_DIR, "object_hi3deval.csv"), visible=False)
hi3deval_task_dropdown = gr.Dropdown(
label="Choose Task",
choices=["Full Leaderboard", "Text-to-3D only", "Image-to-3D only"],
value="Full Leaderboard", # 默认值
interactive=True, # 可交互
multiselect=False # 单选
)
hi3deval_leaderboard_table = build_leaderboard_tab(hi3deval_leaderboard_file)
gr.Markdown(get_citation_md("hi3deval"), elem_id="citation_markdown")
gr.Markdown("---", elem_id="intro_markdown")
gr.Markdown("### Acknowledgement", elem_id="ack_markdown")
gr.Markdown(get_ack_md, elem_id="ack_markdown")
# with gr.Tab("Image-to-3D Generation", id=1):
# build_leaderboard_tab()
hi3deval_task_dropdown.change(
build_leaderboard_tab,
[hi3deval_leaderboard_file, hi3deval_task_dropdown],
hi3deval_leaderboard_table
)
return demo
if __name__ == "__main__":
demo = build_combine_demo()
# demo.queue(max_size=20).launch(server_port=server_port, root_path=ROOT_PATH, debug=True)
demo.queue(max_size=20).launch(server_port=SERVER_PORT, debug=True)