Shiyu Zhao commited on
Commit
e65749f
·
1 Parent(s): 85d9e2b

Update space

Browse files
Files changed (2) hide show
  1. app.py +11 -4
  2. utils/hub_storage.py +23 -28
app.py CHANGED
@@ -225,11 +225,12 @@ def scan_submissions_directory():
225
 
226
  # Get submissions directory content from HuggingFace hub
227
  try:
228
- repo_files = api.list_files_info(
229
  repo_id=REPO_ID,
230
- repo_type="space",
231
- paths=["submissions"]
232
  )
 
 
233
  except Exception as e:
234
  print(f"Error listing repository contents: {str(e)}")
235
  return
@@ -294,7 +295,12 @@ def scan_submissions_directory():
294
 
295
  # Read metadata file
296
  try:
297
- metadata_content = hub_storage.get_file_content(metadata_file)
 
 
 
 
 
298
  submission_data = json.loads(metadata_content)
299
  except Exception as e:
300
  print(f"Error reading metadata for {folder_name}: {str(e)}")
@@ -306,6 +312,7 @@ def scan_submissions_directory():
306
 
307
  # Update corresponding DataFrame
308
  update_leaderboard_data(submission_data)
 
309
 
310
  except Exception as e:
311
  print(f"Error processing folder {folder_name}: {str(e)}")
 
225
 
226
  # Get submissions directory content from HuggingFace hub
227
  try:
228
+ repo_files = api.list_repo_files(
229
  repo_id=REPO_ID,
230
+ repo_type="space"
 
231
  )
232
+ # Filter for files in submissions directory
233
+ repo_files = [f for f in repo_files if f.startswith('submissions/')]
234
  except Exception as e:
235
  print(f"Error listing repository contents: {str(e)}")
236
  return
 
295
 
296
  # Read metadata file
297
  try:
298
+ metadata_content = api.hf_hub_download(
299
+ repo_id=REPO_ID,
300
+ repo_type="space",
301
+ filename=metadata_file,
302
+ text=True
303
+ )
304
  submission_data = json.loads(metadata_content)
305
  except Exception as e:
306
  print(f"Error reading metadata for {folder_name}: {str(e)}")
 
312
 
313
  # Update corresponding DataFrame
314
  update_leaderboard_data(submission_data)
315
+ print(f"Added submission from {folder_name} to {split} leaderboard")
316
 
317
  except Exception as e:
318
  print(f"Error processing folder {folder_name}: {str(e)}")
utils/hub_storage.py CHANGED
@@ -4,43 +4,38 @@ from .token_handler import TokenHandler
4
 
5
  class HubStorage:
6
  def __init__(self, repo_id):
7
- self.token_handler = TokenHandler()
8
- self.token = self.token_handler.get_verified_token()
9
- self.api = HfApi()
10
  self.repo_id = repo_id
 
11
 
12
- def save_to_hub(self, file_content, path_in_repo, commit_message):
13
- """Save file to HuggingFace Hub"""
14
- return self.api.upload_file(
15
- path_or_fileobj=file_content,
16
- path_in_repo=path_in_repo,
17
- repo_id=self.repo_id,
18
- repo_type="space",
19
- commit_message=commit_message,
20
- token=self.token
21
- )
22
-
23
- def load_from_hub(self, path_in_repo):
24
- """Load file from HuggingFace Hub"""
25
- return self.api.hf_hub_download(
26
- repo_id=self.repo_id,
27
- filename=path_in_repo,
28
- repo_type="space",
29
- token=self.token
30
- )
31
-
32
  def get_file_content(self, file_path):
33
  """
34
  Get content of a file from the repository
35
  """
36
  try:
37
- api = HfApi()
38
- content = api.file_download(
39
  repo_id=self.repo_id,
40
  repo_type="space",
41
- filename=file_path
 
42
  )
43
- return content.read().decode('utf-8')
44
  except Exception as e:
45
  print(f"Error reading file {file_path}: {str(e)}")
46
- return None
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
 
5
  class HubStorage:
6
  def __init__(self, repo_id):
 
 
 
7
  self.repo_id = repo_id
8
+ self.api = HfApi()
9
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  def get_file_content(self, file_path):
11
  """
12
  Get content of a file from the repository
13
  """
14
  try:
15
+ content = self.api.hf_hub_download(
 
16
  repo_id=self.repo_id,
17
  repo_type="space",
18
+ filename=file_path,
19
+ text=True
20
  )
21
+ return content
22
  except Exception as e:
23
  print(f"Error reading file {file_path}: {str(e)}")
24
+ return None
25
+
26
+ def save_to_hub(self, file_content, path_in_repo, commit_message):
27
+ """
28
+ Save a file to the hub
29
+ """
30
+ try:
31
+ self.api.upload_file(
32
+ path_or_fileobj=file_content,
33
+ path_in_repo=path_in_repo,
34
+ repo_id=self.repo_id,
35
+ repo_type="space",
36
+ commit_message=commit_message
37
+ )
38
+ return True
39
+ except Exception as e:
40
+ print(f"Error saving file to hub: {str(e)}")
41
+ return False