Spaces:
Running
Running
from dataclasses import dataclass | |
from enum import Enum | |
class Task: | |
benchmark: str | |
metric: str | |
col_name: str | |
# Init: to update with your specific keys | |
class Tasks(Enum): | |
# task_key in the json file, metric_key in the json file, name to display in the leaderboard | |
task0 = Task("task_name1", "metric_name", "First task") | |
task1 = Task("task_name2", "metric_name", "Second task") | |
# Your leaderboard name | |
# TITLE = """<h1 align="center" id="space-title">π SeaExam and SeaBench Leaderboard</h1>""" | |
TITLE = """<h1 align="left" id="space-title">π LLM Leaderboard for Southeast Asian Languages</h1>""" | |
# subtitle | |
SUB_TITLE = """<h2 align="left" id="space-title">What is the best LLM for Southeast Asian Languagesβ</h1>""" | |
# What does your leaderboard evaluate? | |
# INTRODUCTION_TEXT = """ | |
# This leaderboard is specifically designed to evaluate large language models (LLMs) for Southeast Asian (SEA) languages. Refer to the "π About" tab for more information. | |
# """ | |
# INTRODUCTION_TEXT = """ | |
# This leaderboard is specifically designed to evaluate large language models (LLMs) for Southeast Asian (SEA) languages. It assesses model performance using human-exam type benchmarks - SeaExam and open-ended benchmark - SeaBench. SeaExam reflecting the model's world knowledge (e.g., with language or social science subjects) and reasoning abilities (e.g., with mathematics or natural science subjects). Refer to the "π About" tab for more information. | |
# """ | |
INTRODUCTION_TEXT = """ | |
This leaderboard evaluates Large Language Models (LLMs) on Southeast Asian (SEA) languages through two comprehensive benchmarks: SeaExam and SeaBench. SeaExam assesses world knowledge and reasoning capabilities through exam-style questions, while SeaBench evaluates instruction-following abilities and multi-turn conversational skills. For detailed methodology and results, please refer to the "π About" tab. | |
""" | |
INTRODUCTION_TEXT = """ | |
This leaderboard evaluates Large Language Models (LLMs) on Southeast Asian (SEA) languages through two comprehensive benchmarks - SeaExam and SeaBench: | |
* **SeaExam** assesses world knowledge and reasoning capabilities through exam-style questions (for both base and chat version models) [[data (public)](https://huggingface.co/datasets/SeaLLMs/SeaExam)] [[eval code](https://github.com/DAMO-NLP-SG/SeaExam)] | |
* **SeaBench** evaluates instruction-following abilities and multi-turn conversational skills (thus only for chat version models). [[data (public)](https://huggingface.co/datasets/SeaLLMs/SeaBench)] [[eval code](https://github.com/DAMO-NLP-SG/SeaBench?tab=readme-ov-file)] | |
Below are the aggregated results for SeaExam and SeaBench, shown both the public dataset ("pub") - which you can download via the link above - and our in-house held-out private dataset ("prv"). | |
For detailed results by language, please refer to the individual sub-tabs. | |
For more details, please refer to the "π About" tab. | |
""" | |
# For additional details such as datasets, evaluation criteria, and reproducibility, please refer to the "π About" tab. | |
# Stay tuned for the *SeaBench leaderboard* - focusing on evaluating the model's ability to respond to general human instructions in real-world multi-turn settings. | |
# """ | |
# Which evaluations are you running? how can people reproduce what you have? | |
LLM_BENCHMARKS_TEXT = f""" | |
# About | |
Even though large language models (LLMs) have shown impressive performance on various benchmarks for English, their performance on Southeast Asian (SEA) languages is still underexplored. This leaderboard includes two benchmarks, SeaExam and SeaBench, with public (denoted as "pub") and private dataset (denoted as "prv"), respectively. SeaExam aims to evaluate LLMs on exam-type benchmarks for SEA languages, focusing on world knowledge and reasoning abilities. SeaBench aims to evaluate LLMs on instruction-following and multi-turn conversation skills. The three languages for evaluation are Indonesian (id), Thai (th), and Vietnamese (vi). | |
## Datasets | |
The benchmark data can be found in the [SeaExam dataset](https://huggingface.co/datasets/SeaLLMs/SeaExam) and [SeaBench dataset](https://huggingface.co/datasets/SeaLLMs/SeaBench). | |
- **SeaExam**: a benchmark sourced from real and official human exam questions in multiple-choice format. | |
- **SeaBench**: a manually created benchmark for evaluating the model's ability to follow instructions and engage in multi-turn conversations. The questions are in open-ended format. | |
## Evalation Criteria | |
- **SeaExam**: | |
We evaluate the models with accuracy score. We have the following settings for evaluation: | |
- **few-shot**: the default setting is few-shot (3-shot). All open-source models are evaluated with 3-shot. | |
- **zero-shot**: the zero-shot setting is also available. As closed-source models has format issues with few-shot, they are evaluated with zero-shot. | |
_ **SeaBench**: | |
We evaluate the responses of the models with GPT-4o-2024-08-06. Each response is scored on a scale of 1-10. | |
## Results | |
How to interpret the leaderboard? | |
* Each numerical value represet the accuracy (%) for SeaExam and score for SeaBench. | |
* The "π Overall" shows the average results across the three langauges for SeaExam public dataset (SeaExam-pub), SeaExam private dataset (SeaExam-prv), SeaBench public dataset (SeaBench-pub), (SeaBench-prv). This leaderboard is ranked by SeaExam-prv. | |
* SeaExam and SeaBench have the results for each langauge in both public and private dataset. The leaderboard is ranked by avg_prv, the average score across SEA languages (id, th, and vi) in private set. | |
* The rank is in "R" column. | |
* The "#P(B)" column shows the number of parameters of the model in billions. | |
* "open?" column indicates whether the model is open-source or proprietary. | |
## Reproducibility | |
To reproduce our results, use the script in [SeaExam](https://github.com/DAMO-NLP-SG/SeaExam/tree/main) and [SeaBench](https://github.com/DAMO-NLP-SG/SeaBench). The script will download the model and tokenizer, and evaluate the model on the benchmark data. | |
""" | |
# ```python | |
# python scripts/main.py --model $model_name_or_path | |
# ``` | |
# You can find the detailed numerical results in the results Hugging Face dataset: https://huggingface.co/datasets/SeaLLMs/SeaExam-results | |
EVALUATION_QUEUE_TEXT = """ | |
## Some good practices before submitting a model | |
### 1) Make sure you can load your model and tokenizer using AutoClasses: | |
```python | |
from transformers import AutoConfig, AutoModel, AutoTokenizer | |
config = AutoConfig.from_pretrained("your model name", revision=revision) | |
model = AutoModel.from_pretrained("your model name", revision=revision) | |
tokenizer = AutoTokenizer.from_pretrained("your model name", revision=revision) | |
``` | |
If this step fails, follow the error messages to debug your model before submitting it. It's likely your model has been improperly uploaded. | |
Note: make sure your model is public! | |
Note: if your model needs `use_remote_code=True`, we do not support this option yet but we are working on adding it, stay posted! | |
### 2) Convert your model weights to [safetensors](https://huggingface.co/docs/safetensors/index) | |
It's a new format for storing weights which is safer and faster to load and use. It will also allow us to add the number of parameters of your model to the `Extended Viewer`! | |
### 3) Make sure your model has an open license! | |
This is a leaderboard for Open LLMs, and we'd love for as many people as possible to know they can use your model π€ | |
### 4) Fill up your model card | |
When we add extra information about models to the leaderboard, it will be automatically taken from the model card | |
## In case of model failure | |
If your model is displayed in the `FAILED` category, its execution stopped. | |
Make sure you have followed the above steps first. | |
If everything is done, check you can launch the EleutherAIHarness on your model locally, using the above command without modifications (you can add `--limit` to limit the number of examples per task). | |
""" | |
CITATION_BUTTON_LABEL = "Copy the following snippet to cite these results" | |
CITATION_BUTTON_TEXT = r""" | |
} | |
""" | |
CONTACT_TEXT = f""" | |
## Contact | |
If you have any questions or want to include your models in the leaderboard, please contact Chaoqun Liu (<[email protected]>) and [Wenxuan Zhang](https://isakzhang.github.io/). | |
""" | |