Abhishek Thakur commited on
Commit
846ca30
·
1 Parent(s): 3b208c1

improvements

Browse files
competitions/app.py CHANGED
@@ -1,6 +1,7 @@
1
  import datetime
2
  import os
3
  import threading
 
4
 
5
  from fastapi import Depends, FastAPI, File, Form, HTTPException, Request, UploadFile
6
  from fastapi.responses import HTMLResponse, JSONResponse
@@ -75,7 +76,18 @@ def start_job_runner_thread():
75
  return thread
76
 
77
 
78
- _ = start_job_runner_thread()
 
 
 
 
 
 
 
 
 
 
 
79
 
80
 
81
  app = FastAPI()
@@ -192,7 +204,7 @@ async def fetch_leaderboard(
192
  if lb == "private":
193
  current_utc_time = datetime.datetime.now()
194
  if current_utc_time < competition_info.end_date and not is_user_admin:
195
- return {"response": "Private leaderboard will be available after the competition ends."}
196
  df = leaderboard.fetch(private=lb == "private")
197
 
198
  if len(df) == 0:
 
1
  import datetime
2
  import os
3
  import threading
4
+ import time
5
 
6
  from fastapi import Depends, FastAPI, File, Form, HTTPException, Request, UploadFile
7
  from fastapi.responses import HTMLResponse, JSONResponse
 
76
  return thread
77
 
78
 
79
+ def watchdog(job_runner_thread):
80
+ while True:
81
+ if not job_runner_thread.is_alive():
82
+ logger.warning("Job runner thread stopped. Restarting...")
83
+ job_runner_thread = start_job_runner_thread()
84
+ time.sleep(10)
85
+
86
+
87
+ job_runner_thread = start_job_runner_thread()
88
+ watchdog_thread = threading.Thread(target=watchdog, args=(job_runner_thread,))
89
+ watchdog_thread.daemon = True
90
+ watchdog_thread.start()
91
 
92
 
93
  app = FastAPI()
 
204
  if lb == "private":
205
  current_utc_time = datetime.datetime.now()
206
  if current_utc_time < competition_info.end_date and not is_user_admin:
207
+ return {"response": f"Private leaderboard will be available on {competition_info.end_date} UTC."}
208
  df = leaderboard.fetch(private=lb == "private")
209
 
210
  if len(df) == 0:
competitions/submissions.py CHANGED
@@ -309,6 +309,9 @@ class Submissions:
309
  # repo_type="model",
310
  # )
311
  # create barebones submission runner space
 
 
 
312
  competition_organizer = self.competition_id.split("/")[0]
313
  space_id = f"{competition_organizer}/comp-{submission_id}"
314
  api = HfApi(token=self.token)
 
309
  # repo_type="model",
310
  # )
311
  # create barebones submission runner space
312
+ user_api = HfApi(token=user_token)
313
+ # submission_id is the sha of the submitted model repo
314
+ submission_id = user_api.model_info(repo_id=uploaded_file).sha
315
  competition_organizer = self.competition_id.split("/")[0]
316
  space_id = f"{competition_organizer}/comp-{submission_id}"
317
  api = HfApi(token=self.token)
competitions/templates/index.html CHANGED
@@ -456,21 +456,23 @@
456
  </li>
457
  <li id="loginButton" style="display: none;">
458
  <a href="/login/huggingface"
459
- class="flex bg-blue-500 hover:bg-blue-700 text-white text-center font-bold py-2 px-4 rounded">Login
460
- with
461
- Hugging
462
- Face</a>
463
  </li>
464
  <li id="logoutButton" style="display: none;">
465
  <a href="/logout"
466
- class="flex bg-red-500 hover:bg-red-700 text-white text-center font-bold py-2 px-4 rounded">Logout</a>
 
 
467
  </li>
468
  </ul>
469
 
470
  <footer>
471
  <div class="w-full mx-auto max-w-screen-xl p-4 md:flex md:items-center md:justify-between">
472
  <span class="text-sm text-gray-500 sm:text-center">Powered by <a
473
- href="https://github.com/huggingface/competitions" class="hover:underline">Hugging Face
 
474
  Competitions</a>
475
  </span>
476
  </div>
 
456
  </li>
457
  <li id="loginButton" style="display: none;">
458
  <a href="/login/huggingface"
459
+ class="flex justify-center items-center bg-blue-400 hover:bg-blue-600 text-white text-center font-bold py-2 px-4 rounded transition duration-200 ease-in-out">
460
+ Login with Hugging Face
461
+ </a>
 
462
  </li>
463
  <li id="logoutButton" style="display: none;">
464
  <a href="/logout"
465
+ class="flex justify-center items-center bg-red-400 hover:bg-red-600 text-white text-center font-bold py-2 px-4 rounded transition duration-200 ease-in-out">
466
+ Logout
467
+ </a>
468
  </li>
469
  </ul>
470
 
471
  <footer>
472
  <div class="w-full mx-auto max-w-screen-xl p-4 md:flex md:items-center md:justify-between">
473
  <span class="text-sm text-gray-500 sm:text-center">Powered by <a
474
+ href="https://github.com/huggingface/competitions" target="_blank"
475
+ class="hover:underline">Hugging Face
476
  Competitions</a>
477
  </span>
478
  </div>