モデル概要
モデル特徴
モデル能力
使用事例
🚀 チョコラマ
Llama-2/3ベースのオランダ語言語モデルファミリー
🚀 クイックスタート
ここでは、ChocoLlama-2-7B-baseを紹介します。これはMetaのLlama-2-7bを言語適応させたバージョンで、LoRaを使用して320億のオランダ語Llama-2トークン(104GB)でファインチューニングされています。なお、これはベースモデルであり、会話動作に最適化されていません。もし会話動作が必要な場合は、このモデルを独自のオランダ語データでファインチューニングするか、命令ファインチューニングされたバージョンのChocoLlama-2-7B-instructを使用することをお勧めします。
以下のコードを使用して、モデルを開始しましょう。
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained('ChocoLlama/ChocoLlama-2-7B-base')
model = AutoModelForCausalLM.from_pretrained('ChocoLlama/ChocoLlama-2-7B-base')
✨ 主な機能
チョコラマは、オランダ語に特化したオープンLLMのファミリーで、同ウェイトクラスのオランダ語オープンLLMの最先端技術に貢献しています。
以下の6つのバリアントを提供しています(うち3つはベースモデル、3つは命令ファインチューニングされたモデル)。
- ChocoLlama-2-7B-base (リンク): MetaのLlama-2-7bを言語適応させたバージョンで、LoRaを使用して320億のオランダ語Llama-2トークン(104GB)でファインチューニングされています。
- ChocoLlama-2-7B-instruct (リンク): ChocoLlama-2-7B-baseを命令ファインチューニングしたバージョンで、命令ファインチューニングデータセットのオランダ語翻訳コレクションを使用して、SFTとそれに続くDPOでファインチューニングされています。
- ChocoLlama-2-7B-tokentrans-base (リンク): MetaのLlama-2-7bを言語適応させたバージョンで、オランダ語のRoBERTaベースのトークナイザーを使用しています。このモデルのトークン埋め込みは、Remy et al.によって提案されたトークン翻訳アルゴリズムを使用して再初期化されています。その後、ChocoLlama-2-7B-baseと同じオランダ語データセットで、再びLoRaを使用してファインチューニングされています。
- ChocoLlama-2-7B-tokentrans-instruct (リンク): ChocoLlama-2-7B-tokentrans-baseを命令ファインチューニングしたバージョンで、ChocoLlama-2-7B-instructと同じデータセットを使用して、再びSFTとそれに続くDPOでファインチューニングされています。
- Llama-3-ChocoLlama-8B-base (リンク): MetaのLlama-8-8Bを言語適応させたバージョンで、ChocoLlama-2-7B-baseと同じオランダ語データセットで、再びLoRaを使用してファインチューニングされています。
- Llama-3-ChocoLlama-instruct (リンク): Llama-3-ChocoLlama-8B-baseを命令ファインチューニングしたバージョンで、ChocoLlama-2-7B-instructと同じデータセットを使用して、再びSFTとそれに続くDPOでファインチューニングされています。
すべてのモデルのベンチマーク結果(ベースモデルや他のオランダ語LLMとの比較を含む)については、こちらの論文を参照してください。
モデルの説明
- 開発者: Matthieu Meeus, Anthony Rathé
- 資金提供元: Vlaams Supercomputer Centrum、約40,000GPU時間(NVIDIA A100-80GB)の助成金による
- 言語: オランダ語
- ライセンス: Llama-2 Community License
- ファインチューニング元のモデル: Llama-2-7b-hf
モデルのソース
- リポジトリ: GitHubのこちら
- 論文: ArXivのこちら
📚 ドキュメント
直接利用
これはベースモデルであるため、直接のユースケースでの使用はお勧めしません。代わりに以下のことをお勧めします。
- このモデルを特定のユースケースに合わせてファインチューニングする
- このモデルの命令ファインチューニングされたバージョンを利用する
下流利用
このモデルはベースモデルであるため、オランダ語の理解と生成が必要な特定のユースケースに簡単に適応させることができます。このモデルは、データセットに明示的に含まれているドメインのユースケース、例えばオランダ語の求人広告、企業報告書、法律の分析や生成などに特に有用であると期待されます。
範囲外の利用
- チャットスタイルのインターフェースが必要なユースケース: これはベースモデルであるため、ターンベースのチャットインタラクションには信頼性を持って使用することができません。代わりにこのモデルの命令ファインチューニングされたバージョンを参照してください。
- オランダ語以外の言語のテキストの理解や生成が必要なユースケース: このモデルがファインチューニングされたデータセットにはオランダ語以外の言語のデータは含まれていないため、Llama-2が元々学習された言語である英語については重大な災害的忘却が発生していると考えられます。
バイアス、リスク、制限
データセットには、広く使用されている高品質のデータのみを含めるように注意を払いました。このデータの一部は、元の作成者によってフィルタリングされています。ただし、バイアスや有害なコンテンツに関して、このデータセットに対して明示的に追加のフィルタリングは行っていません。
推奨事項
望ましくない出力を最大限に避けるために、このモデルを独自のデータでファインチューニングすることをお勧めします。
🔧 技術詳細
トレーニングデータ
多様なオランダ語の自然言語データを収集しました。
- OSCAR データの大部分は、OSCARのオランダ語部分(2023年1月版、Common Crawlベース)から収集されました。このデータセットには93GBのテキスト(約286億トークン)が含まれています。
- Open Subtitles 映画の字幕からオランダ語のテキストを収集し、オランダ語の映画またはオランダ語字幕のある映画に焦点を当てました。このデータセットには、214,000サンプルからの5GBのテキスト(約15.4億トークン)が含まれています。
- Project Gutenberg 公開されているスクレイパーを使用して、Project Gutenbergから970冊の完全なオランダ語の本をダウンロードしました。このデータセットには0.3GBのテキスト(約9200万トークン)が含まれており、Hugging Faceで入手可能です。
- Wikipedia 2023年3月のWikipediaダンプを使用して、2.5GBのテキスト(約7.69億トークン)を含めました。OSCARと一部重複していますが、Wikipediaの高品質な内容を考慮して含めています。
- 求人広告 (TechWolf) TechWolfから提供された、5年間にわたって公開ウェブサイトから収集された75万件のオランダ語の求人広告のサンプル。このデータセットには1.5GBのテキスト(約4.62億トークン)が含まれています。
- Staatsblad (Bizzy) Het Belgisch Staatsbladからの8万件の法的ファイリングのサンプル。ドキュメントはOCR処理され、個人データは除外されています。このデータセットには、Bizzyの支援を受けて収集された1.4GBのテキスト(約4.31億トークン)が含まれています。
- 法律 (ML6) Open Data APIを介してアクセス可能なフランダースの法律からの15,000件のドキュメント。このデータセットには、ML6の支援を受けて収集された0.2GBのテキスト(約6200万トークン)が含まれています。
トレーニング手順
このモデルは、低ランク(LoRa)適応を使用してトレーニング可能な埋め込みでファインチューニングされており、合計5.44億のトレーニング可能なパラメータがあります。
トレーニングハイパーパラメータ
- トレーニング方式: bf16非混合精度
- エポック数: 1
- LoRaパラメータ:
- R: 8
- Alpha: 32
- トレーニング可能なモジュール: q_proj, v_proj, k_proj, o_proj, gate_proj, up_proj, down_proj, embed_tokens, lm_head
- LoRaドロップアウト: 0.05
- 学習率:
- スケジューラ: StepLR
- ステップサイズ: 6212
- 学習率: 0.0003
- Gamma: 0.85
- その他のパラメータ:
- ミニバッチサイズ: 16
- 勾配累積ステップ数: 8
- 並列化係数: 8
- 重み減衰: 0
評価
定量的評価
いくつかの業界標準のオランダ語ベンチマークで、元のバージョンから翻訳されたデータを使用してモデルを評価しました。結果は以下の表に示されており、他のいくつかの著名なオランダ語モデルの結果も含まれています。
モデル | ARC | HellaSwag | MMLU | TruthfulQA | 平均 |
---|---|---|---|---|---|
Llama-3-ChocoLlama-instruct | 0.48 | 0.66 | 0.49 | 0.49 | 0.53 |
llama-3-8B-rebatch | 0.44 | 0.64 | 0.46 | 0.48 | 0.51 |
llama-3-8B-instruct | 0.47 | 0.59 | 0.47 | 0.52 | 0.51 |
llama-3-8B | 0.44 | 0.64 | 0.47 | 0.45 | 0.5 |
Reynaerde-7B-Chat | 0.44 | 0.62 | 0.39 | 0.52 | 0.49 |
Llama-3-ChocoLlama-base | 0.45 | 0.64 | 0.44 | 0.44 | 0.49 |
zephyr-7b-beta | 0.43 | 0.58 | 0.43 | 0.53 | 0.49 |
geitje-7b-ultra | 0.40 | 0.66 | 0.36 | 0.49 | 0.48 |
ChocoLlama-2-7B-tokentrans-instruct | 0.45 | 0.62 | 0.34 | 0.42 | 0.46 |
mistral-7b-v0.1 | 0.43 | 0.58 | 0.37 | 0.45 | 0.46 |
ChocoLlama-2-7B-tokentrans-base | 0.42 | 0.61 | 0.32 | 0.43 | 0.45 |
ChocoLlama-2-7B-instruct | 0.36 | 0.57 | 0.33 | 0.45 | 0.43 |
ChocoLlama-2-7B-base | 0.35 | 0.56 | 0.31 | 0.43 | 0.41 |
llama-2-7b-chat-hf | 0.36 | 0.49 | 0.33 | 0.44 | 0.41 |
llama-2-7b-hf | 0.36 | 0.51 | 0.32 | 0.41 | 0.40 |
平均すると、Llama-3-ChocoLlama-instructはこれらのベンチマークで以前の最先端技術を上回っています。
定性的評価
論文では、すべてのモデルの追加の定性的評価も提供しています。これは経験的により信頼性が高いと判断されています。詳細については、論文とChocoLlama-Benchベンチマークを参照してください。
コンピューティングインフラストラクチャ
すべてのChocoLlamaモデルは、Flemish Supercomputer Center (VSC)が提供するコンピューティングクラスターでトレーニングされています。8から16台のNVIDIA A100 GPU(80GB VRAM)を使用しています。
📄 ライセンス
このモデルはLlama-2 Community Licenseの下で提供されています。
引用
もしこのモデルがあなたの研究に役立った場合は、以下の論文を引用してください。
@article{meeus2024chocollama,
title={ChocoLlama: Lessons Learned From Teaching Llamas Dutch},
author={Meeus, Matthieu and Rath{\'e}, Anthony and Remy, Fran{\c{c}}ois and Delobelle, Pieter and Decorte, Jens-Joris and Demeester, Thomas},
journal={arXiv preprint arXiv:2412.07633},
year={2024}
}



