Alvinn-aai commited on
Commit
adcb04b
Β·
2 Parent(s): cc4e1bd 1345efb

Merge commit '1345efbcdfb9dd66c56616c233d2669ce3f84ded'

Browse files
Files changed (1) hide show
  1. app.py +36 -12
app.py CHANGED
@@ -1,4 +1,4 @@
1
- from functools import partial
2
 
3
  import gradio as gr
4
  from gradio_leaderboard import Leaderboard, ColumnFilter, SelectColumns
@@ -43,20 +43,26 @@ SKIP_VALIDATION = True # TODO temp
43
 
44
 
45
  def restart_space():
 
46
  API.restart_space(repo_id=REPO_ID)
47
 
48
 
49
- lbdb = F1Data(cp_ds_name=CODE_PROBLEMS_REPO, sub_ds_name=SUBMISSIONS_REPO, res_ds_name=RESULTS_REPO, split=SPLIT)
50
- leaderboard_df = get_leaderboard_df(RESULTS_REPO)
51
-
52
-
53
- logger.info("Initialized LBDB")
 
54
 
55
- # (
56
- # finished_eval_queue_df,
57
- # running_eval_queue_df,
58
- # pending_eval_queue_df,
59
- # ) = get_evaluation_queue_df(EVAL_REQUESTS_PATH, EVAL_COLS)
 
 
 
 
60
 
61
 
62
  def init_leaderboard(dataframe):
@@ -89,6 +95,19 @@ def init_leaderboard(dataframe):
89
  )
90
 
91
 
 
 
 
 
 
 
 
 
 
 
 
 
 
92
  # Display image using Markdown
93
  # banner = "![Leaderboard Banner](file/assets/banner.png)"
94
 
@@ -129,7 +148,8 @@ with demo:
129
 
130
  with gr.Tabs(elem_classes="tab-buttons") as tabs:
131
  with gr.TabItem("πŸ… FormulaOne Leaderboard", elem_id="formulaone-leaderboar-tab-table", id=0):
132
- leaderboard = init_leaderboard(leaderboard_df)
 
133
 
134
  # with gr.TabItem("πŸ“ About", elem_id="llm-benchmark-tab-table", id=1):
135
  # logger.info("Tab about")
@@ -245,9 +265,13 @@ with demo:
245
  # show_copy_button=True,
246
  # )
247
 
 
 
 
248
  logger.info("Scheduler")
249
  scheduler = BackgroundScheduler()
250
  scheduler.add_job(restart_space, "interval", seconds=1800)
 
251
  scheduler.start()
252
  logger.info("Launch")
253
  demo.queue(default_concurrency_limit=40).launch()
 
1
+ import random
2
 
3
  import gradio as gr
4
  from gradio_leaderboard import Leaderboard, ColumnFilter, SelectColumns
 
43
 
44
 
45
  def restart_space():
46
+ logger.info("Restarting space")
47
  API.restart_space(repo_id=REPO_ID)
48
 
49
 
50
+ def refresh_leaderboard_data():
51
+ """Refresh the leaderboard data from the latest results"""
52
+ global leaderboard_df
53
+ try:
54
+ logger.info("Loading leaderboard data...")
55
+ new_leaderboard_df = get_leaderboard_df(RESULTS_REPO)
56
 
57
+ if new_leaderboard_df is not None and not new_leaderboard_df.empty:
58
+ logger.info("Leaderboard data refreshed successfully")
59
+ leaderboard_df = new_leaderboard_df
60
+ else:
61
+ logger.warning("No new leaderboard data found")
62
+ return None
63
+ except Exception as e:
64
+ logger.error(f"Error refreshing leaderboard data: {e}")
65
+ return None
66
 
67
 
68
  def init_leaderboard(dataframe):
 
95
  )
96
 
97
 
98
+ lbdb = F1Data(cp_ds_name=CODE_PROBLEMS_REPO, sub_ds_name=SUBMISSIONS_REPO, res_ds_name=RESULTS_REPO, split=SPLIT)
99
+
100
+ leaderboard_df = None
101
+
102
+ logger.info("Initialized LBDB")
103
+
104
+ # (
105
+ # finished_eval_queue_df,
106
+ # running_eval_queue_df,
107
+ # pending_eval_queue_df,
108
+ # ) = get_evaluation_queue_df(EVAL_REQUESTS_PATH, EVAL_COLS)
109
+
110
+
111
  # Display image using Markdown
112
  # banner = "![Leaderboard Banner](file/assets/banner.png)"
113
 
 
148
 
149
  with gr.Tabs(elem_classes="tab-buttons") as tabs:
150
  with gr.TabItem("πŸ… FormulaOne Leaderboard", elem_id="formulaone-leaderboar-tab-table", id=0):
151
+ refresh_leaderboard_data() # updates leaderboard_df
152
+ leaderboard_component = init_leaderboard(leaderboard_df)
153
 
154
  # with gr.TabItem("πŸ“ About", elem_id="llm-benchmark-tab-table", id=1):
155
  # logger.info("Tab about")
 
265
  # show_copy_button=True,
266
  # )
267
 
268
+ demo.load(lambda: leaderboard_df, inputs=[], outputs=[leaderboard_component])
269
+
270
+
271
  logger.info("Scheduler")
272
  scheduler = BackgroundScheduler()
273
  scheduler.add_job(restart_space, "interval", seconds=1800)
274
+ scheduler.add_job(refresh_leaderboard_data, "interval", seconds=120)
275
  scheduler.start()
276
  logger.info("Launch")
277
  demo.queue(default_concurrency_limit=40).launch()