fietje-2-chat / README.md
BramVanroy's picture
Update README.md
364b423 verified
|
raw
history blame
5.59 kB
metadata
language:
  - nl
license: mit
tags:
  - trl
  - fietje
  - alignment-handbook
  - dpo
base_model: BramVanroy/fietje-2-instruct
datasets:
  - BramVanroy/ultra_feedback_dutch_cleaned
  - BramVanroy/orca_dpo_pairs_dutch_cleaned
pipeline_tag: text-generation
inference: false
model-index:
  - name: fietje-2-chat
    results: []

Fietje banner

Fietje 2 Chat

An open and efficient LLM for Dutch

πŸ‘±β€β™€οΈ Base version - πŸ€– Instruct version - πŸ’¬ Chat version (this one) - πŸš€ GGUF of Chat

Chat with Fietje here!

This is the chat version of Fietje, a DPO-tuned (aligned) continuation on the instruct version. Fietje is an adapated version of microsoft/phi-2, tailored to Dutch text generation by training on 28B tokens. It is small and efficient with a size of 2.7 billion parameters while performing almost on par with more powerful Dutch LLMs of twice its size like GEITje 7B Ultra.

A thorough description of the creation and evaluation of Fietje as well as usage examples are available in this Github repository.

Intended uses & limitations

The same limitations as phi-2, and LLMs in general, apply here. LLMs hallucinate, make mistakes, and should not be trusted. Use at your own risk!

Training and evaluation data

Fietje 2 Chat was finetuned from the instruct model on the following datasets. Number of training samples per dataset given in brackets, totalling 18,653 samples.

A lot of different learning rates, beta, en batch sizes were investigated in search of a converging combination. You can find them all in the W&B runs.

Training procedure

I am thankful to the Flemish Supercomputer Center (VSC) for providing the computational power to accomplish this project. Accounting for waiting for jobs, training a single run took around nine hours on one A100 80GB.

Training was done with the wonderful alignment-handbook, using DeepSpeed as a back-end. Exact training recipes and SLURM script are given in the Github repository.

Training hyperparameters

The following hyperparameters were used during training:

  • beta: 0.2
  • learning_rate: 2e-06
  • train_batch_size: 8
  • eval_batch_size: 4
  • seed: 42
  • distributed_type: multi-GPU
  • gradient_accumulation_steps: 2
  • total_train_batch_size: 16
  • optimizer: Adam with betas=(0.9,0.98) and epsilon=1e-07
  • lr_scheduler_type: cosine
  • lr_scheduler_warmup_ratio: 0.1
  • num_epochs: 1.0

Training results

Training Loss Epoch Step Validation Loss Rewards/chosen Rewards/rejected Rewards/accuracies Rewards/margins Logps/rejected Logps/chosen Logits/rejected Logits/chosen
0.2515 1.0 1166 0.2842 -1.1549 -3.6363 0.8867 2.4815 -657.6813 -451.3364 -1.2868 -1.3528

Framework versions

  • Transformers 4.39.1
  • Pytorch 2.1.2+cu121
  • Datasets 2.18.0
  • Tokenizers 0.15.2

Open LLM Leaderboard Evaluation Results

Results for the English Open LLM Leaderboard. For results specific to Dutch, check out ScandEval.

Detailed results can be found here

Metric Value
Avg. 10.39
IFEval (0-Shot) 29.17
BBH (3-Shot) 17.72
MATH Lvl 5 (4-Shot) 0.53
GPQA (0-shot) 0.00
MuSR (0-shot) 3.20
MMLU-PRO (5-shot) 11.72