Ce référentiel contient le code d'évaluation de Sailor, une suite de modèles de langage ouvert pour l'Asie du Sud-Est.
Sailor est développé par le Sea AI Lab et l'Université de technologie et de design de Singapour.

Sailor est une suite de modèles en langue ouverte adaptés à l'Asie du Sud-Est (mer), en se concentrant sur des langues telles que? Développés avec une conservation minutieuse des données, les modèles de marins sont conçus pour comprendre et générer du texte à travers divers paysages linguistiques de la région de la mer. Construit à partir de Qwen 1.5, Sailor englobe des modèles de tailles variables, passant de 0,5b à des versions 14b pour différentes exigences. Les résultats d'analyse comparative démontrent la compétence de Sailor dans les tâches telles que la réponse aux questions, le raisonnement de bon sens, la compréhension de la lecture, etc. dans les langues maritimes.
Pour en savoir plus, veuillez accéder au rapport technique.
Vous pouvez trouver tous les modèles Sailor sur notre page d'accueil HuggingFace ici:
Voici les résultats de l'évaluation des modèles sur les tâches de réponse aux questions. Les résultats d'évaluation sont présentés sous forme de tableaux, où la première colonne est le nom du modèle, et les colonnes de réinitialisation sont les performances sur les langues thaïlandaises, indonésiennes (ID) et vietnamiennes (VI), respectivement. Les résultats des modèles Sailor sont mis en évidence en gras. Vous pouvez trouver les résultats d'évaluation complets sur les différentes tâches et notre code d'évaluation pour reproduire les résultats du répertoire EVAL.
| 3 tirs (EM / F1) | Xquad (th) | Tydiqa (id) | Xquad (vi) |
|---|---|---|---|
| Qwen1.5-0.5b | 14.19 / 23.35 | 20.71 / 32.64 | 19.85 / 35.38 |
| Sailor-0,5b | 15.84 / 27.58 | 30.44 / 54.74 | 21.13 / 40.57 |
| Qwen1.5-1.8b | 27.24 / 43.56 | 29.73 / 53.76 | 29.17 / 48.15 |
| Marin-1,8b | 32,72 / 48,66 | 40.88 / 65.37 | 34.22 / 53.35 |
| Qwen1.5-4b | 34.03 / 53.40 | 48.32 / 72.68 | 43.71 / 63.86 |
| Marin-4b | 46.82 / 63.34 | 53.98 / 73.48 | 47.65 / 67.09 |
| Lama-2-7b | 30,64 / 43.80 | 56.64 / 72.14 | 46.96 / 66.16 |
| Mistral-7B-V0.1 | 48.48 / 63.27 | 63,54 / 78,73 | 53,72 / 72,75 |
| Scellm-7b-hybride | 49,70 / 67,62 | 50.62 / 75.21 | 49,62 / 70,74 |
| Scellm-7b-v2 | 34,55 / 55.13 | 52.21 / 77.00 | 46.19 / 72.11 |
| Qwen1.5-7b | 53,79 / 69.30 | 57.17 / 77.28 | 56.63 / 76.99 |
| Marin-7b | 57.88 / 71.06 | 60,53 / 75.42 | 53.81 / 74.62 |
Nous utilisons OpenCompass pour évaluer les modèles. Pour installer les packages requis, exécutez la commande suivante dans ce dossier:
# setup opencompass environment
conda create --name opencompass python=3.10 pytorch torchvision pytorch-cuda -c nvidia -c pytorch -y
conda activate opencompass
git clone https://github.com/open-compass/opencompass opencompass
cd opencompass
pip install -e .
pip install pythainlp langid
mkdir dataPour créer le script d'évaluation, exécutez la commande suivante dans ce dossier:
cp -r eval/configs/ * opencompass/configs/
cp -r eval/data/ * opencompass/data/
cp -r eval/datasets/ * opencompass/opencompass/datasets/
cp eval/icl_sailor_evaluator.py opencompass/opencompass/openicl/icl_evaluator/
cp eval/sailor_text_postprocessors.py opencompass/opencompass/utils/
echo " from .icl_sailor_evaluator import AnsEvaluator, TextGenEvaluator # noqa " >> " opencompass/opencompass/openicl/icl_evaluator/__init__.py "
echo " from .sailor_text_postprocessors import * # noqa " >> " opencompass/opencompass/utils/__init__.py "
echo " from .xquad import * # noqa: F401, F403 " >> " opencompass/opencompass/datasets/__init__.py "
echo " from .tydiqa_id import * # noqa: F401, F403 " >> " opencompass/opencompass/datasets/__init__.py "
echo " from .xcopa_sea import * # noqa: F401, F403 " >> " opencompass/opencompass/datasets/__init__.py "
echo " from .m3exam import * # noqa: F401, F403 " >> " opencompass/opencompass/datasets/__init__.py "
echo " from .belebele import * # noqa: F401, F403 " >> " opencompass/opencompass/datasets/__init__.py "
cp eval/eval_sailor.py opencompass/configs/Pour exécuter l'évaluation, exécutez la commande suivante dans ce dossier:
cd opencompass
python run.py configs/eval_sailor.py -w outputs/sailor --hf-num-gpus 1 --max-num-workers 64Vous pouvez également modifier le script pour évaluer d'autres modèles comme Qwen1.5, Llama, Mistral, etc.
Nous fournissons une simple démo pour discuter avec Sailor-14b-chat. Vous pouvez également le développer en utilisant le code de démonstration fourni.
Si vous utilisez ces modèles de référentiel ou de marin, veuillez citer
@inproceedings{dou-etal-2024-sailor,
title = "Sailor: Open Language Models for South-{E}ast {A}sia",
author = "Dou, Longxu and Liu, Qian and Zeng, Guangtao and Guo, Jia and Zhou, Jiahui and Mao, Xin and Jin, Ziqi and Lu, Wei and Lin, Min",
booktitle = "Proceedings of the 2024 Conference on Empirical Methods in Natural Language Processing: System Demonstrations",
year = "2024",
}
Si vous avez des questions, veuillez soulever un problème dans notre github ou nous contacter à [email protected] et [email protected].