File size: 8,360 Bytes
9c1b957
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2678c49
14f2c25
9c1b957
60867e4
2678c49
60867e4
9c1b957
c69a5b0
 
 
 
4ecf403
 
 
 
9c1b957
4ecf403
d31b48d
cc86cb5
2678c49
14f2c25
cf3c7c9
 
2678c49
14f2c25
b0f2c39
14f2c25
2678c49
 
d31b48d
 
 
 
9c1b957
 
 
01bb2e0
4ecf403
01bb2e0
d31b48d
01bb2e0
2678c49
4ecf403
 
01bb2e0
 
4ecf403
 
 
 
 
 
 
01bb2e0
2678c49
8c8300c
4ecf403
 
 
0e06db3
4ecf403
 
9c1b957
 
2678c49
9c1b957
 
2678c49
 
 
 
8c8300c
 
9c1b957
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2678c49
9c1b957
35957e0
 
 
 
14f2c25
35957e0
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
from dataclasses import dataclass
from enum import Enum

@dataclass
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/).
"""