Clémentine
commited on
Commit
•
7a427c5
1
Parent(s):
8f7c1b2
some comments + simplified queue update - uses leaderboard updates as trigger
Browse files
app.py
CHANGED
@@ -90,7 +90,7 @@ def download_dataset(repo_id, local_dir, repo_type="dataset", max_attempts=3, ba
|
|
90 |
attempt += 1
|
91 |
raise Exception(f"Failed to download {repo_id} after {max_attempts} attempts")
|
92 |
|
93 |
-
def get_latest_data_leaderboard(leaderboard_initial_df):
|
94 |
current_time = datetime.datetime.now()
|
95 |
global LAST_UPDATE_LEADERBOARD
|
96 |
if current_time - LAST_UPDATE_LEADERBOARD < datetime.timedelta(minutes=10) and leaderboard_initial_df is not None:
|
@@ -127,7 +127,7 @@ def init_space():
|
|
127 |
restart_space()
|
128 |
|
129 |
# Always redownload the leaderboard DataFrame
|
130 |
-
leaderboard_df = get_latest_data_leaderboard(
|
131 |
|
132 |
# Evaluation queue DataFrame retrieval is independent of initialization detail level
|
133 |
eval_queue_dfs = get_latest_data_queue()
|
@@ -312,7 +312,7 @@ with demo:
|
|
312 |
)
|
313 |
|
314 |
demo.load(fn=get_latest_data_leaderboard, inputs=[leaderboard], outputs=[leaderboard])
|
315 |
-
|
316 |
|
317 |
|
318 |
demo.queue(default_concurrency_limit=40)
|
@@ -363,6 +363,7 @@ def update_leaderboard(payload: WebhookPayload) -> None:
|
|
363 |
verification_mode="no_checks"
|
364 |
)
|
365 |
|
|
|
366 |
LAST_UPDATE_QUEUE = datetime.datetime.now()
|
367 |
@webhooks_server.add_webhook
|
368 |
def update_queue(payload: WebhookPayload) -> None:
|
@@ -371,7 +372,7 @@ def update_queue(payload: WebhookPayload) -> None:
|
|
371 |
current_time = datetime.datetime.now()
|
372 |
global LAST_UPDATE_QUEUE
|
373 |
if current_time - LAST_UPDATE_QUEUE > datetime.timedelta(minutes=10):
|
374 |
-
print("
|
375 |
# We only redownload is last update was more than 10 minutes ago, as the queue is
|
376 |
# updated regularly and heavy to download
|
377 |
#download_dataset(QUEUE_REPO, EVAL_REQUESTS_PATH)
|
|
|
90 |
attempt += 1
|
91 |
raise Exception(f"Failed to download {repo_id} after {max_attempts} attempts")
|
92 |
|
93 |
+
def get_latest_data_leaderboard(leaderboard_initial_df = None):
|
94 |
current_time = datetime.datetime.now()
|
95 |
global LAST_UPDATE_LEADERBOARD
|
96 |
if current_time - LAST_UPDATE_LEADERBOARD < datetime.timedelta(minutes=10) and leaderboard_initial_df is not None:
|
|
|
127 |
restart_space()
|
128 |
|
129 |
# Always redownload the leaderboard DataFrame
|
130 |
+
leaderboard_df = get_latest_data_leaderboard()
|
131 |
|
132 |
# Evaluation queue DataFrame retrieval is independent of initialization detail level
|
133 |
eval_queue_dfs = get_latest_data_queue()
|
|
|
312 |
)
|
313 |
|
314 |
demo.load(fn=get_latest_data_leaderboard, inputs=[leaderboard], outputs=[leaderboard])
|
315 |
+
leaderboard.change(fn=get_latest_data_queue, inputs=None, outputs=[finished_eval_table, running_eval_table, pending_eval_table])
|
316 |
|
317 |
|
318 |
demo.queue(default_concurrency_limit=40)
|
|
|
363 |
verification_mode="no_checks"
|
364 |
)
|
365 |
|
366 |
+
# The below code is not used at the moment, as we can manage the queue file locally
|
367 |
LAST_UPDATE_QUEUE = datetime.datetime.now()
|
368 |
@webhooks_server.add_webhook
|
369 |
def update_queue(payload: WebhookPayload) -> None:
|
|
|
372 |
current_time = datetime.datetime.now()
|
373 |
global LAST_UPDATE_QUEUE
|
374 |
if current_time - LAST_UPDATE_QUEUE > datetime.timedelta(minutes=10):
|
375 |
+
print("Would have updated the queue")
|
376 |
# We only redownload is last update was more than 10 minutes ago, as the queue is
|
377 |
# updated regularly and heavy to download
|
378 |
#download_dataset(QUEUE_REPO, EVAL_REQUESTS_PATH)
|