rombodawg commited on
Commit
4bc33ce
·
verified ·
1 Parent(s): ba2164e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -14
app.py CHANGED
@@ -2,14 +2,10 @@ import os
2
  import re
3
  import time
4
  import spaces
5
- import torch
6
  import requests
7
- from transformers import AutoModelForCausalLM, AutoTokenizer
8
  import gradio as gr
9
- from huggingface_hub import HfApi, ModelFilter, list_models
10
  from threading import Thread
11
- import math
12
- import base64
13
 
14
  HF_TOKEN = os.environ.get("HF_TOKEN", None)
15
 
@@ -168,14 +164,18 @@ def generate_leaderboard_data(num_models=100, model_type="all"):
168
  """Generate leaderboard data by analyzing model cards"""
169
  api = HfApi(token=HF_TOKEN)
170
 
171
- # Define filter based on model type
172
  if model_type == "llm":
173
- model_filter = ModelFilter(task="text-generation")
 
 
 
 
174
  else:
175
- model_filter = None
176
-
177
- # List models
178
- models = list_models(filter=model_filter, limit=num_models * 5) # Get more models than needed to account for ones without READMEs
179
 
180
  leaderboard_data = []
181
  count = 0
@@ -207,6 +207,9 @@ def generate_leaderboard_data(num_models=100, model_type="all"):
207
  })
208
 
209
  count += 1
 
 
 
210
 
211
  # Sort by combined rating in descending order
212
  leaderboard_data.sort(key=lambda x: x["combined_rating"], reverse=True)
@@ -305,9 +308,15 @@ def create_leaderboard_html(leaderboard_data):
305
  @spaces.GPU()
306
  def update_leaderboard(num_models, model_type):
307
  """Update leaderboard with new data"""
308
- leaderboard_data = generate_leaderboard_data(num_models, model_type)
309
- leaderboard_html = create_leaderboard_html(leaderboard_data)
310
- return leaderboard_html
 
 
 
 
 
 
311
 
312
  with gr.Blocks(css=CSS, theme="soft") as demo:
313
  gr.HTML(TITLE)
@@ -339,5 +348,12 @@ with gr.Blocks(css=CSS, theme="soft") as demo:
339
  outputs=[leaderboard_html],
340
  )
341
 
 
 
 
 
 
 
 
342
  if __name__ == "__main__":
343
  demo.launch()
 
2
  import re
3
  import time
4
  import spaces
 
5
  import requests
 
6
  import gradio as gr
7
+ from huggingface_hub import HfApi, list_models
8
  from threading import Thread
 
 
9
 
10
  HF_TOKEN = os.environ.get("HF_TOKEN", None)
11
 
 
164
  """Generate leaderboard data by analyzing model cards"""
165
  api = HfApi(token=HF_TOKEN)
166
 
167
+ # Define filter parameters based on model type
168
  if model_type == "llm":
169
+ # Filter to text-generation models using API parameters
170
+ models = list_models(
171
+ task="text-generation",
172
+ limit=num_models * 5 # Get more models than needed to account for ones without READMEs
173
+ )
174
  else:
175
+ # Get all models
176
+ models = list_models(
177
+ limit=num_models * 5 # Get more models than needed to account for ones without READMEs
178
+ )
179
 
180
  leaderboard_data = []
181
  count = 0
 
207
  })
208
 
209
  count += 1
210
+
211
+ # Status update
212
+ print(f"Processed {count}/{num_models} models")
213
 
214
  # Sort by combined rating in descending order
215
  leaderboard_data.sort(key=lambda x: x["combined_rating"], reverse=True)
 
308
  @spaces.GPU()
309
  def update_leaderboard(num_models, model_type):
310
  """Update leaderboard with new data"""
311
+ # Show loading message
312
+ yield "Loading models and analyzing Schizo ratings... This may take a few minutes."
313
+
314
+ try:
315
+ leaderboard_data = generate_leaderboard_data(num_models, model_type)
316
+ leaderboard_html = create_leaderboard_html(leaderboard_data)
317
+ yield leaderboard_html
318
+ except Exception as e:
319
+ yield f"<p>Error generating leaderboard: {str(e)}</p>"
320
 
321
  with gr.Blocks(css=CSS, theme="soft") as demo:
322
  gr.HTML(TITLE)
 
348
  outputs=[leaderboard_html],
349
  )
350
 
351
+ # Add a default leaderboard with a few example entries for initial display
352
+ default_leaderboard = [
353
+ {"model_id": "example/model-1", "combined_rating": 150.0, "word_rating": 100.0, "wordiness_rating": 25.0, "visual_rating": 25.0},
354
+ {"model_id": "example/model-2", "combined_rating": 100.0, "word_rating": 80.0, "wordiness_rating": 10.0, "visual_rating": 10.0},
355
+ {"model_id": "example/model-3", "combined_rating": 75.0, "word_rating": 50.0, "wordiness_rating": 12.5, "visual_rating": 12.5}
356
+ ]
357
+
358
  if __name__ == "__main__":
359
  demo.launch()