Este repositório contém o Código de Avaliação para Sailor, um conjunto de modelos de linguagem aberta para o Sudeste Asiático.
Sailor é desenvolvido pelo Sea AI Lab e pela Universidade de Tecnologia e Design de Cingapura.

O marinheiro é um conjunto de modelos de linguagem aberta adaptados para o sudeste da Ásia (mar), com foco em idiomas como? Desenvolvidos com curadoria de dados cuidadosa, os modelos de marinheiros são projetados para entender e gerar texto em diversas paisagens linguísticas da região do mar. Construído a partir do QWEN 1.5, o Sailor abrange modelos de tamanhos variados, abrangendo de 0,5b a 14b versões para diferentes requisitos. Os resultados do benchmarking demonstram a proficiência do marinheiro em tarefas como resposta a perguntas, raciocínio de senso comum, compreensão de leitura e etc. em idiomas marinhos.
Para saber mais detalhes, acesse o relatório técnico.
Você pode encontrar todos os modelos de marinheiros em nossa página inicial do HuggingFace aqui:
Aqui estão os resultados da avaliação dos modelos em tarefas de resposta a perguntas. Os resultados da avaliação são apresentados na forma de tabelas, onde a primeira coluna é o nome do modelo, e as colunas de redefinição são o desempenho nas línguas tailandesas (TH), indonésias (ID) e vietnamita (vi), respectivamente. Os resultados dos modelos de marinheiros são destacados em negrito. Você pode encontrar os resultados completos da avaliação nas diferentes tarefas e nosso código de avaliação para reproduzir os resultados no diretório de avaliação.
| 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 |
| Marinheiro-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 |
| Marinheiro-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 |
| Marinheiro-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 |
| Marinheiro-7b | 57.88 / 71.06 | 60.53 / 75.42 | 53.81 / 74.62 |
Usamos o OpenCompass para avaliar os modelos. Para instalar os pacotes necessários, execute o seguinte comando nesta pasta:
# 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 o script de avaliação, execute o seguinte comando nesta pasta:
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 executar a avaliação, execute o seguinte comando nesta pasta:
cd opencompass
python run.py configs/eval_sailor.py -w outputs/sailor --hf-num-gpus 1 --max-num-workers 64Você também pode modificar o script para avaliar outros modelos como Qwen1.5, llama, Mistral, etc.
Fornecemos uma demonstração simples para conversar com o Sailor-14b-Chat. Você também pode desenvolvê -lo usando o código de demonstração fornecido.
Se você usar este repositório ou modelos de marinheiro, 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",
}
Se você tiver alguma dúvida, levante um problema em nosso github ou entre em contato conosco em [email protected] e [email protected].