|
import gradio as gr |
|
import pandas as pd |
|
|
|
csv_filename = 'leaderboard.csv' |
|
|
|
|
|
def get_data_classifica(): |
|
dataset = pd.read_csv("leaderboard_general.csv", sep=',') |
|
if 'model ' in dataset.columns: |
|
dataset.rename(columns={'model ': 'model'}, inplace=True) |
|
df_classifica = dataset[['model', 'helloswag_it acc norm', 'arc_it acc norm', 'm_mmul acc shot 5']] |
|
df_classifica['media'] = df_classifica[['helloswag_it acc norm', 'arc_it acc norm', 'm_mmul acc shot 5']].mean(axis=1) |
|
df_classifica['media'] = df_classifica['media'].round(3) |
|
df_classifica = df_classifica.sort_values(by='media', ascending=False) |
|
df_classifica = df_classifica[['model', 'media', 'helloswag_it acc norm', 'arc_it acc norm', 'm_mmul acc shot 5']] |
|
|
|
return df_classifica |
|
|
|
def get_data_totale(): |
|
dataset = pd.read_csv("leaderboard_general.csv", sep=',') |
|
if 'model ' in dataset.columns: |
|
dataset.rename(columns={'model ': 'model'}, inplace=True) |
|
return dataset |
|
|
|
with gr.Blocks() as demo: |
|
|
|
with gr.Tab('Classifica Generale'): |
|
|
|
gr.Markdown('''# Classifica generale degli LLM italiani''') |
|
discord_link = 'https://discord.gg/m7sS3mduY2' |
|
gr.Markdown(''' |
|
I modelli sottostanti sono stati testati con [lm_evaluation_harness](https://github.com/EleutherAI/lm-evaluation-harness) su task specifici per l'italiano introdotti con questa [PR](https://github.com/EleutherAI/lm-evaluation-harness/pull/1358). |
|
L'intero progetto, i modelli e i dataset sono rigorosamente open source e tutti i risultati sono riproducibili lanciando dei comandi come questo: |
|
``` |
|
lm_eval --model hf --model_args pretrained=HUGGINGFACE_MODEL_ID --tasks xcopa_it,hellaswag_it,lambada_openai_mt_it,belebele_ita_Latn,arc_it --device cuda:0 --batch_size 8 |
|
``` |
|
''') |
|
gr.DataFrame(get_data_classifica, every=3600) |
|
gr.Markdown(f"Contributore principale: @giux78") |
|
gr.Markdown(''' |
|
### Reference on Italian task from mixtral paper |
|
|
|
| Model | Arc-c | HellaS | MMUL | AVG | |
|
| --- | --- | --- | --- | --- | |
|
| Mixtral 7x8 | 52.8 | 75.1 | 70.9 | 66.26666667 | |
|
| LLama2 70b | 49.4 | 70.9 | 65.1 | 61.8 | |
|
| LLama1 34B | 42.9 | 65.4 | 49.0 | 52.43333333 | |
|
| Mistral 7B | 41.49 | 61.22 | 52.53 | 51.74 | |
|
''') |
|
|
|
|
|
with gr.Tab('Classifica RAG'): |
|
|
|
gr.Markdown('''# Classifica RAG degli LLM italiani''') |
|
gr.Markdown(f'''In questa sezione i modelli sono valutati su dei task di Q&A e ordinati per F1 Score e EM (Exact Match). La repo di riferimento è [questa](https://github.com/C080/open-llm-ita-leaderboard). |
|
I modelli in cima alla classifica sono ritenuti preferibili per i task di Retrieval Augmented Generation.''') |
|
gr.Dataframe(pd.read_csv(csv_filename, sep=';')) |
|
gr.Markdown(f"Si ringrazia il @galatolo per il codice dell'eval.") |
|
|
|
|
|
with gr.Tab('Eval aggiuntive'): |
|
|
|
gr.Markdown('''# Altre evaluation''') |
|
gr.Markdown('''Qui ci sono altri test di altri modelli, che non sono ancora stati integrati nella classifica generale.''') |
|
gr.DataFrame(get_data_totale, every=3600) |
|
|
|
with gr.Tab('Informazioni'): |
|
|
|
form_link = "https://forms.gle/Gc9Dfu52xSBhQPpAA" |
|
gr.Markdown('''# Community discord |
|
Se vuoi contribuire al progetto o semplicemente unirti alla community di LLM italiani unisciti al nostro [discord!](https://discord.gg/m7sS3mduY2) |
|
# Aggiungi il tuo modello |
|
Se hai sviluppato un tuo modello che vuoi far valutare, compila il form [qui](https://forms.gle/Gc9Dfu52xSBhQPpAA) è tutto gratuito! |
|
''') |
|
|
|
with gr.Tab('Sponsor'): |
|
|
|
gr.Markdown(''' |
|
# Sponsor |
|
Le evaluation della classifica generale sono state gentilmente offerte da un provider cloud italiano [seeweb.it](https://www.seeweb.it/) specializzato in servizi di GPU cloud e AI. |
|
''') |
|
|
|
demo.launch() |