Santi Diana
Added retrieval and revaluated every model
8b42620
import gradio as gr
import pandas as pd
dataframe = pd.read_csv('data/general.csv')
NUM_DATASETS = 7
NUM_SCORES = 0
NUM_MODELS = len(dataframe)
def general_dataframe_update():
"""
Returns general dataframe for general table.
"""
dataframe = pd.read_csv('data/general.csv')
return dataframe
def classification_dataframe_update():
"""
Returns classification dataframe for classification table.
"""
dataframe = pd.read_csv('data/classification.csv')
return dataframe
def sts_dataframe_udpate():
"""
Returns sts dataframe for sts table.
"""
dataframe = pd.read_csv('data/sts.csv')
return dataframe
def clustering_dataframe_update():
"""
Returns clustering dataframe for clustering table.
"""
dataframe = pd.read_csv("data/clustering.csv")
return dataframe
def retrieval_dataframe_update():
"""
Returns retrieval dataframe for retrieval table.
"""
dataframe = pd.read_csv('data/retrieval.csv')
return dataframe
def make_clickable_model(link):
"""
Load json from models. Este update lo tengo que hacer antes de pasarle el df al gradio.
"""
model_display_name = link.split("/")[-1]
# Remove user from model name
return (
f'<a target="_blank" style="text-decoration: underline" href="{link}">{model_display_name.split("/")[-1]}</a>'
)
block = gr.Blocks()
with block:
gr.Markdown(f"""**Leaderboard de modelos de Embeddings en español
Massive Spanish Text Embedding Benchmark (MSTEB) Leaderboard.**
- **Total Datasets**: {NUM_DATASETS}
- **Total Languages**: 1
- **Total Scores**: {NUM_SCORES}
- **Total Models**: {NUM_MODELS}
""")
with gr.Tabs():
with gr.TabItem("Overall"):
with gr.Row():
gr.Markdown("""
**Tabla General de Embeddings**
- **Métricas:** Varias, con sus respectivas medias.
- **Idioma:** Español
""")
with gr.Row():
overall = general_dataframe_update()
data_overall = gr.components.Dataframe(
overall,
type="pandas",
wrap=True,
)
with gr.TabItem("Classification"):
with gr.Row():
gr.Markdown("""
**Tabla Classification de Embeddings**
- **Métricas:** Accuracy.
- **Idioma:** Español
""")
with gr.Row():
# Create and display a sample DataFrame
classification = classification_dataframe_update()
data_overall = gr.components.Dataframe(
classification,
type="pandas",
wrap=True,
)
with gr.TabItem("STS"):
with gr.Row():
gr.Markdown("""
**Tabla STS de Embeddings**
- **Metricas:** Spearman correlation basada en cosine similarity.
- **Idioma:** Español
""")
with gr.Row():
# Create and display a sample DataFrame
sts = sts_dataframe_udpate()
data_overall = gr.components.Dataframe(
sts,
type="pandas",
wrap=True,
)
with gr.TabItem("Clustering"):
with gr.Row():
gr.Markdown("""
**Tabla Clustering de Embeddings**
- **Metricas:** V_measure.
- **Idioma:** Español
""")
with gr.Row():
# Create and display a sample DataFrame
clustering = clustering_dataframe_update()
data_overall = gr.components.Dataframe(
clustering,
type="pandas",
wrap=True,
)
with gr.TabItem("Retrieval"):
with gr.Row():
gr.Markdown("""
**Tabla Retrieval de Embeddings**
- **Metricas:** ncdg_10.
- **Idioma:** Español
""")
with gr.Row():
# Create and display a sample DataFrame
sts = retrieval_dataframe_update()
data_overall = gr.components.Dataframe(
sts,
type="pandas",
wrap=True,
)
block.launch()