File size: 2,627 Bytes
a74897e
1a014ff
b787f43
b73db7d
1982aac
a2723b3
2e83d59
d692eef
b787f43
21f0ce7
d692eef
 
 
a2723b3
2f2f3ae
 
d692eef
1982aac
 
 
2f2f3ae
 
 
9b95b87
2f2f3ae
1840d1a
2f2f3ae
a2723b3
9b95b87
 
 
 
 
52101ad
 
 
9b95b87
52101ad
 
 
 
 
 
 
 
 
9b95b87
 
52101ad
 
 
1a014ff
a49fcac
1a014ff
 
 
 
a49fcac
1a014ff
 
 
 
 
 
a49fcac
 
1982aac
2f2f3ae
21f0ce7
 
1982aac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import os
import time
from huggingface_hub import HfApi, HfFileSystem
import time
import pandas as pd
import threading
import gradio as gr
from gradio_space_ci import enable_space_ci
from functions import commit
from pr_worker import run_pr_worker

enable_space_ci()

HF_TOKEN = os.getenv('HF_TOKEN')
BOT_HF_TOKEN = os.getenv('BOT_HF_TOKEN')


api = HfApi()
fs = HfFileSystem()

def refresh(how_much=3600): # default to 1 hour
  time.sleep(how_much)
  try:
      api.restart_space(repo_id="eduagarcia-temp/portuguese-leaderboard-results-to-modelcard")
  except Exception as e:
      print(f"Error while scraping leaderboard, trying again... {e}")
      refresh(600) # 10 minutes if any error happens

gradio_title="🧐 Open Portuguese LLM Leaderboard Results PR Opener"
gradio_desc= """
This a fork of the [🧐 Open LLM Leaderboard Results PR Opener
](https://huggingface.co/spaces/Weyaxi/leaderboard-results-to-modelcard) from [@Weyaxi](https://huggingface.co/Weyaxi) modfied to work with the [Open Portuguese LLM Leaderboard](https://huggingface.co/spaces/eduagarcia/open_pt_llm_leaderboard).  
🎯 This tool's aim is to provide [Open Portuguese LLM Leaderboard](https://huggingface.co/spaces/eduagarcia/open_pt_llm_leaderboard) results in the model card.

## 💭 What Does This Tool Do:

- This tool adds the [Open Portuguese LLM Leaderboard](https://huggingface.co/spaces/eduagarcia/open_pt_llm_leaderboard) result of your model at the end of your model card.

- This tool also adds evaluation results as your model's metadata to showcase the evaluation results as a widget.

## 🛠️ Backend

The leaderboard's backend mainly runs on the [Hugging Face Hub API](https://huggingface.co/docs/huggingface_hub/v0.5.1/en/package_reference/hf_api).

## 🤝 Acknowledgements

- Thanks to [Yağız Çalık (Weyaxi)](https://huggingface.co/Weyaxi) for creating the original [🧐 Open LLM Leaderboard Results PR Opener
](https://huggingface.co/spaces/Weyaxi/leaderboard-results-to-modelcard) tool.

"""

with gr.Blocks() as demo:
    gr.HTML(f"""<h1 align="center" id="space-title">{gradio_title}</h1>""")
    gr.Markdown(gradio_desc)

    with gr.Row(equal_height=False):
        with gr.Column():
            model_id = gr.Textbox(label="Model ID or URL", lines=1)
            gr.LoginButton()

        with gr.Column():
            output = gr.Textbox(label="Output", lines=1)
            gr.LogoutButton()

    submit_btn = gr.Button("Submit", variant="primary")        
    submit_btn.click(commit, model_id, output)

threading.Thread(target=refresh).start()
threading.Thread(target=run_pr_worker).start()

demo.launch()