File size: 2,115 Bytes
f510c1c
 
 
 
 
c1e6bf7
f510c1c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3d1e88b
f510c1c
 
 
 
 
 
2fdaf02
f510c1c
 
c1e6bf7
f510c1c
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58



import pandas as pd
import gradio as gr
from ui.leaderboard import render_leader_board, render_info_html, render_citation, render_dataset_list
from ui.evaluation import render_eval_info
from ui.coming_soon import render_coming_soon
from ui.submission import render_submission_page
import os
from utils import load_leaderboard, custom_css
from huggingface_hub import snapshot_download
import gradio as gr
import os
import json

REPO_ID = os.getenv('REPO_ID')
DB_ERR_PATH = f'./data/data/leaderboard_err.csv'
CITATIONS_PATH = f'./data/data/model_citations.json'

if not os.path.exists('./data/data'):
    snapshot_download(repo_id=REPO_ID, 
                      repo_type="dataset", local_dir='./data/data')

with open(CITATIONS_PATH, 'r') as f:
    model_citations = json.load(f)

# Load leaderboard data
leaderboard_df_err = load_leaderboard(DB_ERR_PATH)

def create_ui():
    with gr.Blocks(theme=gr.themes.Soft(text_size=gr.themes.sizes.text_md), css=custom_css) as demo:
        # gr.Markdown("# Speech Deep Fake Arena")
        gr.Image('./data/data/df_arena_3.jpg', interactive=False, 
                 show_fullscreen_button=False, show_share_button=False, show_label=False)
        
        with gr.Tabs():
            with gr.Tab("πŸ† Leaderboard"):
                with gr.Column():
                    render_info_html()
                    gr.Markdown("Table for Equal Error Rate (EER %) for different systems. All the systems are are trained on the ASVspoof 2019 dataset, except for the Whisper MesoNet system, which is trained on a subset of the ASVspoof 2021 DF dataset.")
                    render_leader_board(leaderboard_df_err, model_citations)  # Adjust this to work with Gradio components
                    render_citation()
                    render_dataset_list()

            with gr.Tab("πŸ“Š Metrics"):
                render_eval_info()  

            with gr.Tab("πŸ“€ Submit your own system !"):
                render_submission_page() 

            with gr.Tab("πŸ”œ Coming Soon"):
                render_coming_soon()  
    return demo

# Launch the app
create_ui().launch()