AlexNijjar commited on
Commit
4379767
·
1 Parent(s): 5f353cb

Add baseline to leaderboard

Browse files
Files changed (2) hide show
  1. src/app.py +6 -2
  2. src/leaderboard.py +25 -1
src/app.py CHANGED
@@ -1,7 +1,7 @@
1
  import gradio as gr
2
 
3
  from chain_data import sync_metagraph
4
- from leaderboard import create_leaderboard, create_dropdown
5
  from model_demo import create_demo
6
  from submissions import create_submissions
7
  from validator_states import create_validator_states
@@ -17,10 +17,14 @@ def main():
17
  dropdown = gr.Dropdown()
18
  dropdown.attach_load_event(lambda: create_dropdown(), None)
19
 
 
 
 
 
 
20
  leaderboard_dataframe = gr.Dataframe()
21
  leaderboard_dataframe.attach_load_event(lambda uid: create_leaderboard(uid), None, inputs=[dropdown])
22
  leaderboard_tab.select(lambda uid: create_leaderboard(uid), inputs=[dropdown], outputs=[leaderboard_dataframe])
23
-
24
  dropdown.change(lambda uid: create_leaderboard(uid), inputs=[dropdown], outputs=[leaderboard_dataframe])
25
  with gr.Tab("Validator States") as validator_states_tab:
26
  validator_states_dataframe = gr.Dataframe()
 
1
  import gradio as gr
2
 
3
  from chain_data import sync_metagraph
4
+ from leaderboard import create_leaderboard, create_dropdown, create_baseline
5
  from model_demo import create_demo
6
  from submissions import create_submissions
7
  from validator_states import create_validator_states
 
17
  dropdown = gr.Dropdown()
18
  dropdown.attach_load_event(lambda: create_dropdown(), None)
19
 
20
+ baseline_dataframe = gr.Dataframe()
21
+ baseline_dataframe.attach_load_event(lambda uid: create_baseline(uid), None, inputs=[dropdown])
22
+ leaderboard_tab.select(lambda uid: create_baseline(uid), inputs=[dropdown], outputs=[baseline_dataframe])
23
+ dropdown.change(lambda uid: create_baseline(uid), inputs=[dropdown], outputs=[baseline_dataframe])
24
+
25
  leaderboard_dataframe = gr.Dataframe()
26
  leaderboard_dataframe.attach_load_event(lambda uid: create_leaderboard(uid), None, inputs=[dropdown])
27
  leaderboard_tab.select(lambda uid: create_leaderboard(uid), inputs=[dropdown], outputs=[leaderboard_dataframe])
 
28
  dropdown.change(lambda uid: create_leaderboard(uid), inputs=[dropdown], outputs=[leaderboard_dataframe])
29
  with gr.Tab("Validator States") as validator_states_tab:
30
  validator_states_dataframe = gr.Dataframe()
src/leaderboard.py CHANGED
@@ -3,6 +3,7 @@ import os
3
  import gradio as gr
4
  import pandas as pd
5
 
 
6
  from wandb_data import get_current_runs
7
 
8
  DEFAULT_VALIDATOR_UID = int(os.environ["DEFAULT_VALIDATOR_UID"])
@@ -28,7 +29,7 @@ def create_dropdown() -> gr.Dropdown:
28
  )
29
 
30
 
31
- def create_leaderboard(validator_uid) -> gr.Dataframe:
32
  data: list[list] = []
33
  runs = get_current_runs()
34
  for run in runs:
@@ -60,3 +61,26 @@ def create_leaderboard(validator_uid) -> gr.Dataframe:
60
  interactive=False,
61
  max_height=800,
62
  )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  import gradio as gr
4
  import pandas as pd
5
 
6
+ from src import Uid
7
  from wandb_data import get_current_runs
8
 
9
  DEFAULT_VALIDATOR_UID = int(os.environ["DEFAULT_VALIDATOR_UID"])
 
29
  )
30
 
31
 
32
+ def create_leaderboard(validator_uid: Uid) -> gr.Dataframe:
33
  data: list[list] = []
34
  runs = get_current_runs()
35
  for run in runs:
 
61
  interactive=False,
62
  max_height=800,
63
  )
64
+
65
+
66
+ def create_baseline(validator_uid: Uid) -> gr.Dataframe:
67
+ data: list[list] = []
68
+ runs = get_current_runs()
69
+ for run in runs:
70
+ if run.uid != validator_uid:
71
+ continue
72
+ data.append([
73
+ f"{run.baseline_metrics.generation_time:.4f}s",
74
+ f"{run.baseline_metrics.size / 1024 ** 3:.4f}GB",
75
+ f"{run.baseline_metrics.vram_used / 1024 ** 3:.4f}GB",
76
+ f"{run.baseline_metrics.ram_used / 1024 ** 3:.4f}GB",
77
+ f"{run.baseline_metrics.watts_used:.3f}W",
78
+ f"{run.baseline_metrics.load_time:.3f}s",
79
+ ])
80
+
81
+ return gr.Dataframe(
82
+ pd.DataFrame(data, columns=["Gen Time", "Size", "VRAM Used", "RAM Used", "Power Used", "Load Time"]),
83
+ datatype=["number", "markdown", "markdown", "markdown", "markdown", "markdown"],
84
+ interactive=False,
85
+ label="Baseline",
86
+ )