Spaces:
Running
Running
Reduced loading of pre-submited model JSON file
Browse files
server.py
CHANGED
@@ -462,7 +462,7 @@ class LeaderboardServer:
|
|
462 |
for competitor_id in tournament_results[submission_id].keys() - {submission_id}: # without self
|
463 |
if competitor_id not in self.submission_id_to_data:
|
464 |
if pre_submit and competitor_id == pre_submit.submission_id:
|
465 |
-
data =
|
466 |
else:
|
467 |
raise gr.Error(f"Internal error: Submission [{competitor_id}] not found")
|
468 |
else:
|
@@ -568,7 +568,7 @@ class LeaderboardServer:
|
|
568 |
for submission_id in tournament_results.keys():
|
569 |
if submission_id not in self.submission_id_to_data:
|
570 |
if pre_submit and submission_id == pre_submit.submission_id:
|
571 |
-
data =
|
572 |
else:
|
573 |
raise gr.Error(f"Internal error: Submission [{submission_id}] not found")
|
574 |
else:
|
@@ -770,7 +770,7 @@ class LeaderboardServer:
|
|
770 |
result = hashlib.sha256(data).hexdigest()
|
771 |
return result
|
772 |
|
773 |
-
PreSubmit = namedtuple('PreSubmit', 'tournament_results, submission_id, file')
|
774 |
|
775 |
def prepare_model_for_submission(self, file, metadata) -> PreSubmit:
|
776 |
with open(file, "r") as f:
|
@@ -799,7 +799,16 @@ class LeaderboardServer:
|
|
799 |
tournament_results = copy.deepcopy(self.tournament_results)
|
800 |
else:
|
801 |
tournament_results = self.start_tournament(submission_id, file)
|
802 |
-
self.pre_submit = self.PreSubmit(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
803 |
break
|
804 |
gr.Info("Waiting in queue...", duration=5)
|
805 |
time.sleep(10)
|
@@ -809,7 +818,7 @@ class LeaderboardServer:
|
|
809 |
def save_pre_submit(self):
|
810 |
with self.pre_submit_lock:
|
811 |
if self.pre_submit:
|
812 |
-
tournament_results, submission_id, file = self.pre_submit
|
813 |
|
814 |
self._upload_submission(submission_id, file)
|
815 |
self._upload_tournament_results(tournament_results)
|
|
|
462 |
for competitor_id in tournament_results[submission_id].keys() - {submission_id}: # without self
|
463 |
if competitor_id not in self.submission_id_to_data:
|
464 |
if pre_submit and competitor_id == pre_submit.submission_id:
|
465 |
+
data = pre_submit.data
|
466 |
else:
|
467 |
raise gr.Error(f"Internal error: Submission [{competitor_id}] not found")
|
468 |
else:
|
|
|
568 |
for submission_id in tournament_results.keys():
|
569 |
if submission_id not in self.submission_id_to_data:
|
570 |
if pre_submit and submission_id == pre_submit.submission_id:
|
571 |
+
data = pre_submit.data
|
572 |
else:
|
573 |
raise gr.Error(f"Internal error: Submission [{submission_id}] not found")
|
574 |
else:
|
|
|
770 |
result = hashlib.sha256(data).hexdigest()
|
771 |
return result
|
772 |
|
773 |
+
PreSubmit = namedtuple('PreSubmit', 'tournament_results, submission_id, file, data')
|
774 |
|
775 |
def prepare_model_for_submission(self, file, metadata) -> PreSubmit:
|
776 |
with open(file, "r") as f:
|
|
|
799 |
tournament_results = copy.deepcopy(self.tournament_results)
|
800 |
else:
|
801 |
tournament_results = self.start_tournament(submission_id, file)
|
802 |
+
self.pre_submit = self.PreSubmit(
|
803 |
+
tournament_results,
|
804 |
+
submission_id,
|
805 |
+
file,
|
806 |
+
{
|
807 |
+
"results": data["results"],
|
808 |
+
"metadata": data.get("metadata", {}),
|
809 |
+
"submission_metadata": metadata,
|
810 |
+
}
|
811 |
+
)
|
812 |
break
|
813 |
gr.Info("Waiting in queue...", duration=5)
|
814 |
time.sleep(10)
|
|
|
818 |
def save_pre_submit(self):
|
819 |
with self.pre_submit_lock:
|
820 |
if self.pre_submit:
|
821 |
+
tournament_results, submission_id, file, data = self.pre_submit
|
822 |
|
823 |
self._upload_submission(submission_id, file)
|
824 |
self._upload_tournament_results(tournament_results)
|