Este repositorio contiene el código de evaluación para Sailor, un conjunto de modelos de lenguaje abierto para el sudeste asiático.
Sailor es desarrollado por el Sea AI Lab y la Universidad Tecnológica y el Diseño de Singapur.

Sailor es un conjunto de modelos de idiomas abiertos adaptados al sudeste asiático (mar), centrándose en idiomas como? Indonesia,? Tailandia, "Vietnamita, ?? Malayo y? Desarrollado con una cuidadosa curación de datos, los modelos de marinero están diseñados para comprender y generar texto en diversos paisajes lingüísticos de la región del mar. Construido a partir de Qwen 1.5, Sailor abarca modelos de tamaños variables, que abarcan de 0.5B a 14B para diferentes requisitos. Los resultados de la evaluación comparativa demuestran el dominio de los marineros en tareas como la respuesta a las preguntas, el razonamiento de sentido común, la comprensión de lectura, etc. en los idiomas marítimos.
Para obtener más detalles, acceda al informe técnico.
Puede encontrar todos los modelos de marinero en nuestra página de inicio de Huggingface aquí:
Aquí están los resultados de la evaluación de los modelos en las tareas de respuesta de preguntas. Los resultados de la evaluación se presentan en forma de tablas, donde la primera columna es el nombre del modelo, y las columnas de reinicio son el rendimiento de los idiomas tailandeses (th), indonesios (ID) y vietnamitas (vi), respectivamente. Los resultados de los modelos de marinero se destacan en negrita. Puede encontrar los resultados de la evaluación completos en las diferentes tareas y nuestro código de evaluación para reproducir los resultados en el directorio Eval.
| 3-SHOT (EM / F1) | XQUAD (TH) | Tydiqa (ID) | Xquad (vi) |
|---|---|---|---|
| QWEN1.5-0.5B | 14.19 / 23.35 | 20.71 / 32.64 | 19.85 / 35.38 |
| Marinero-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 |
| Marinero-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 |
| Marinero-4b | 46.82 / 63.34 | 53.98 / 73.48 | 47.65 / 67.09 |
| LLAMA-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 |
| SealLM-7B-Hybrid | 49.70 / 67.62 | 50.62 / 75.21 | 49.62 / 70.74 |
| SealLM-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 |
| Marinero-7b | 57.88 / 71.06 | 60.53 / 75.42 | 53.81 / 74.62 |
Utilizamos OpenCompass para evaluar los modelos. Para instalar los paquetes requeridos, ejecute el siguiente comando en esta carpeta:
# 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 dataPara construir el script de evaluación, ejecute el siguiente comando en esta carpeta:
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/Para ejecutar la evaluación, ejecute el siguiente comando en esta carpeta:
cd opencompass
python run.py configs/eval_sailor.py -w outputs/sailor --hf-num-gpus 1 --max-num-workers 64También puede modificar el script para evaluar otros modelos como Qwen1.5, Llama, Mistral, etc.
Proporcionamos una demostración simple para chatear con Sailor-14b-Chat. También puede desarrollarlo utilizando el código de demostración proporcionado.
Si usa este repositorio o modelos de marinero, cite
@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 tiene alguna pregunta, plantee un problema en nuestro GitHub o contáctenos en [email protected] y [email protected].