File size: 2,292 Bytes
a74897e
1a014ff
b787f43
b73db7d
1982aac
a2723b3
2e83d59
d692eef
b787f43
d692eef
 
 
a2723b3
2f2f3ae
 
d692eef
1982aac
 
 
2f2f3ae
 
 
1231b89
2f2f3ae
1840d1a
2f2f3ae
a2723b3
1231b89
7b57662
52101ad
7b57662
52101ad
 
 
 
7b57662
 
52101ad
 
1a014ff
a49fcac
1a014ff
 
 
 
a49fcac
1a014ff
 
 
 
 
 
a49fcac
 
1982aac
2f2f3ae
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
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

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="Weyaxi/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 LLM Leaderboard Results PR Opener"
gradio_desc= """🎯 This tool's aim is to provide [Open LLM Leaderboard](https://huggingface.co/spaces/HuggingFaceH4/open_llm_leaderboard) results in the model card.
## 💭 What Does This Tool Do:
- This tool adds the [Open LLM Leaderboard](https://huggingface.co/spaces/HuggingFaceH4/open_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
- Special thanks to [Clémentine Fourrier (clefourrier)](https://huggingface.co/clefourrier) for her help and contributions to the code.
- Special thanks to [Lucain Pouget (Wauplin)](https://huggingface.co/Wauplin) for assisting with the [Hugging Face Hub API](https://huggingface.co/docs/huggingface_hub/v0.5.1/en/package_reference/hf_api).
"""

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()
demo.launch()