occiglot-7b-eu5 / README.md
mbrack's picture
Update README.md
fa93aba verified
|
raw
history blame
11.6 kB
metadata
license: apache-2.0
language:
  - en
  - es
  - de
  - fr
  - it
pipeline_tag: text-generation

image/png

Occiglot-7B-EU5

A polyglot language model for the Occident.

Occiglot-7B-EU5 is a generative language model with 7B parameters supporting the top-5 EU languages (English, Spanish, French, German, and Italian) and trained by the Occiglot Research Collective. It is based on Mistral-7B-v0.1 and trained on 293B tokens of additional multilingual and code data with a block size of 8,192 tokens per sample. Note that the model is a general-purpose base model and was not instruction-fine-tuned nor optimized for chat or other applications. We make an instruction tuned variant available as occiglot-7b-eu5-instruct

This is the first release of an ongoing open research project for multilingual language models. If you want to train a model for your own language or are working on evaluations, please contact us or join our Discord server. We are open for collaborations!

Model details

  • Continued-pretraining from: Mistral-7B-v0.1
  • Model type: Causal decoder-only transformer language model
  • Languages: English, Spanish, French, German, Italian, and code.
  • License: Apache 2.0
  • Compute resources: HessianAI's 42
  • Contributors: Manuel Brack, Patrick Schramowski, Pedro Ortiz, Malte Ostendorff, Fabio Barth, Georg Rehm, Kristian Kersting
  • Research labs: Occiglot with support from SAINT and SLT
  • Contact: Discord

How to use

You can use this model directly with a pipeline for text generation. Since the generation relies on some randomness, we set a seed for reproducibility:

>>> from transformers import pipeline, set_seed
>>> generator = pipeline('text-generation', model='occiglot/occiglot-7b-eu5')
>>> set_seed(42)
>>> generator("Hallo, Ich bin ein Sprachmodell,", max_length=40, num_return_sequences=1)
[{'generated_text': 'Hallo, Ich bin ein Sprachmodell, das dir bei der Übersetzung von Texten zwischen Deutsch und Englisch helfen kann. Wenn du mir einen Text in Deutsch'}]

Dataset

The training data was split amongst the 4 target languages (de, es, fr, it) and the continuous training in English and code.

The data distribution by language (estimated) is as follows:

  • English: ~13%
  • Code: ~5%
  • German: ~20%
  • Spanish: ~20%
  • French: ~20%
  • Italian: ~20%

The training data was prepared using lm-datasets. The exact data configuration is here.

Training settings

  • Continual pre-training on 128 x A100-80GB on HessianAI's 42.
  • Framework: Determined
  • Precision: bf16
  • Optimizer: AdamW (lr: 0.00001, warmup_steps: 420)
  • Global batch size: 512 (with 8192 blocksize) split over 128 GPUs
  • Cosine Annealing with Warmup

Tokenizer

Tokenizer is unchanged from Mistral-7B-v0.1.

Evaluation

Preliminary evaluation results can be found below. Please note that the non-English results are based on partially machine-translated datasets and English prompts (Belebele and Okapi framework) and thus should be interpreted with caution, e.g., biased towards English model performance. Currently, we are working on more suitable benchmarks for Spanish, French, German, and Italian.

Evaluation results

English

arc_challenge belebele hellaswag mmlu truthfulqa avg
occiglot/occiglot-7b-eu5 0.530717 0.726667 0.789882 0.531904 0.403678 0.59657
occiglot/occiglot-7b-eu5-instruct 0.558874 0.746667 0.799841 0.535109 0.449034 0.617905
occiglot/occiglot-7b-de-en 0.556314 0.791111 0.803824 0.568438 0.423251 0.628587
occiglot/occiglot-7b-de-en-instruct 0.604096 0.812222 0.80004 0.570574 0.493807 0.656148
LeoLM/leo-mistral-hessianai-7b 0.522184 0.736667 0.777833 0.538812 0.429248 0.600949
mistralai/Mistral-7B-v0.1 0.612628 0.844444 0.834097 0.624555 0.426201 0.668385
mistralai/Mistral-7B-Instruct-v0.2 0.637372 0.824444 0.846345 0.59201 0.668116 0.713657

German

arc_challenge_de belebele_de hellaswag_de mmlu_de truthfulqa_de avg
occiglot/occiglot-7b-eu5 0.493584 0.646667 0.666631 0.483406 0.251269 0.508311
occiglot/occiglot-7b-eu5-instruct 0.529512 0.667778 0.685205 0.488234 0.286802 0.531506
occiglot/occiglot-7b-de-en 0.50556 0.743333 0.67421 0.514633 0.26269 0.540085
occiglot/occiglot-7b-de-en-instruct 0.54491 0.772222 0.688407 0.515915 0.310914 0.566474
LeoLM/leo-mistral-hessianai-7b 0.474765 0.691111 0.682109 0.488309 0.252538 0.517766
mistralai/Mistral-7B-v0.1 0.476476 0.738889 0.610589 0.529567 0.284264 0.527957
mistralai/Mistral-7B-Instruct-v0.2 0.485885 0.688889 0.622438 0.501961 0.376904 0.535215

Spanish

arc_challenge_es belebele_es hellaswag_es mmlu_es truthfulqa_es avg
occiglot/occiglot-7b-eu5 0.508547 0.676667 0.725411 0.499325 0.25602 0.533194
occiglot/occiglot-7b-eu5-instruct 0.535043 0.68 0.737039 0.503525 0.285171 0.548155
occiglot/occiglot-7b-es-en 0.529915 0.627778 0.72253 0.512749 0.243346 0.527264
occiglot/occiglot-7b-es-en-instruct 0.545299 0.636667 0.734372 0.524374 0.257288 0.5396
clibrain/lince-mistral-7b-it-es 0.52906 0.721111 0.687967 0.512749 0.285171 0.547212
mistralai/Mistral-7B-v0.1 0.528205 0.747778 0.672712 0.544023 0.281369 0.554817
mistralai/Mistral-7B-Instruct-v0.2 0.54188 0.73 0.685406 0.511699 0.373891 0.568575

French

arc_challenge_fr belebele_fr hellaswag_fr mmlu_fr truthfulqa_fr avg
occiglot/occiglot-7b-eu5 0.506416 0.675556 0.712358 0.495684 0.23507 0.525017
occiglot/occiglot-7b-eu5-instruct 0.541488 0.7 0.724245 0.499122 0.306226 0.554216
occiglot/occiglot-7b-fr-en 0.532934 0.706667 0.718891 0.51333 0.242694 0.542903
occiglot/occiglot-7b-fr-en-instruct 0.542344 0.752222 0.72553 0.52051 0.29479 0.567079
OpenLLM-France/Claire-Mistral-7B-0.1 0.486741 0.694444 0.642964 0.479566 0.271919 0.515127
mistralai/Mistral-7B-v0.1 0.525235 0.776667 0.66481 0.543121 0.280813 0.558129
mistralai/Mistral-7B-Instruct-v0.2 0.551754 0.758889 0.67916 0.506837 0.382465 0.575821

Italian

arc_challenge_it belebele_it hellaswag_it mmlu_it truthfulqa_it avg
occiglot/occiglot-7b-eu5 0.501283 0.652222 0.700533 0 0.252874 0.421382
occiglot/occiglot-7b-eu5-instruct 0.516681 0.661111 0.71326 0 0.295019 0.437214
occiglot/occiglot-7b-it-en 0.536356 0.684444 0.694768 0 0.247765 0.432667
occiglot/occiglot-7b-it-en-instruct 0.545766 0.717778 0.713804 0 0.303959 0.456261
galatolo/cerbero-7b 0.522669 0.717778 0.631567 0 0.302682 0.434939
mistralai/Mistral-7B-v0.1 0.502139 0.734444 0.630371 0 0.264368 0.426264
mistralai/Mistral-7B-Instruct-v0.2 0.519247 0.703333 0.6394 0 0.349936 0.442383

Acknowledgements

The model training was supported by a compute grant at the 42 supercomputer which is a central component in the development of hessian AI, the AI Innovation Lab (funded by the Hessian Ministry of Higher Education, Research and the Art (HMWK) & the Hessian Ministry of the Interior, for Security and Homeland Security (HMinD)) and the AI Service Centers (funded by the German Federal Ministry for Economic Affairs and Climate Action (BMWK)). The curation of the training data is partially funded by the German Federal Ministry for Economic Affairs and Climate Action (BMWK) through the project OpenGPT-X (project no. 68GX21007D).

License

Apache 2.0

See also