Mehrdad-S commited on
Commit
910d821
Β·
verified Β·
1 Parent(s): 404dfff

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -10
app.py CHANGED
@@ -1,4 +1,3 @@
1
- # app.py
2
  import gradio as gr
3
  import json
4
  from evaluate import evaluate_model
@@ -17,16 +16,30 @@ except FileNotFoundError:
17
 
18
  def submit_model(model_name):
19
  score = evaluate_model(model_name, dataset)
20
- leaderboard.append({
21
- "model": model_name,
22
- "score": round(score * 100, 2),
23
- "date": datetime.now().strftime("%Y-%m-%d")
24
- })
 
 
 
 
 
 
 
 
 
 
 
 
25
  leaderboard.sort(key=lambda x: x["score"], reverse=True)
 
 
26
  with open("leaderboard.json", "w", encoding="utf-8") as f:
27
  json.dump(leaderboard, f, ensure_ascii=False, indent=2)
28
- return update_table()[1] # Only rows
29
 
 
30
 
31
  def update_table():
32
  headers = ["πŸ… Rank", "πŸ“Œ Model Name", "🎯 Score", "πŸ“† Date"]
@@ -37,15 +50,19 @@ with gr.Blocks(theme=gr.themes.Monochrome()) as demo:
37
  gr.Markdown("""
38
  # πŸ† Persian Embedding Leaderboard
39
  Submit your model to evaluate on the [arshiaafshani/persian-natural-fluently](https://huggingface.co/datasets/arshiaafshani/persian-natural-fluently) dataset.
 
40
  """)
41
 
42
  with gr.Row():
43
  model_input = gr.Textbox(label="Enter HuggingFace Model Name", placeholder="e.g. HooshvareLab/bert-fa-base-uncased")
44
  submit_btn = gr.Button("Evaluate & Submit")
45
 
46
- table = gr.Dataframe(headers=["πŸ… Rank", "πŸ“Œ Model Name", "🎯 Score", "πŸ“† Date"],
47
- value=update_table()[1],
48
- interactive=False)
 
 
 
49
 
50
  submit_btn.click(fn=submit_model, inputs=model_input, outputs=table)
51
 
 
 
1
  import gradio as gr
2
  import json
3
  from evaluate import evaluate_model
 
16
 
17
  def submit_model(model_name):
18
  score = evaluate_model(model_name, dataset)
19
+ score = round(score * 100, 2)
20
+ date = datetime.now().strftime("%Y-%m-%d")
21
+
22
+ # Update existing model or add new one
23
+ for entry in leaderboard:
24
+ if entry["model"] == model_name:
25
+ entry["score"] = score
26
+ entry["date"] = date
27
+ break
28
+ else:
29
+ leaderboard.append({
30
+ "model": model_name,
31
+ "score": score,
32
+ "date": date
33
+ })
34
+
35
+ # Sort by score descending
36
  leaderboard.sort(key=lambda x: x["score"], reverse=True)
37
+
38
+ # Save leaderboard
39
  with open("leaderboard.json", "w", encoding="utf-8") as f:
40
  json.dump(leaderboard, f, ensure_ascii=False, indent=2)
 
41
 
42
+ return update_table()[1] # Return just rows for gr.Dataframe
43
 
44
  def update_table():
45
  headers = ["πŸ… Rank", "πŸ“Œ Model Name", "🎯 Score", "πŸ“† Date"]
 
50
  gr.Markdown("""
51
  # πŸ† Persian Embedding Leaderboard
52
  Submit your model to evaluate on the [arshiaafshani/persian-natural-fluently](https://huggingface.co/datasets/arshiaafshani/persian-natural-fluently) dataset.
53
+ Your submission will update the public leaderboard if it outperforms or modifies your previous result.
54
  """)
55
 
56
  with gr.Row():
57
  model_input = gr.Textbox(label="Enter HuggingFace Model Name", placeholder="e.g. HooshvareLab/bert-fa-base-uncased")
58
  submit_btn = gr.Button("Evaluate & Submit")
59
 
60
+ table = gr.Dataframe(
61
+ headers=["πŸ… Rank", "πŸ“Œ Model Name", "🎯 Score", "πŸ“† Date"],
62
+ value=update_table()[1],
63
+ interactive=False,
64
+ label="πŸ“Š Current Leaderboard"
65
+ )
66
 
67
  submit_btn.click(fn=submit_model, inputs=model_input, outputs=table)
68