モデル概要
モデル特徴
モデル能力
使用事例
🚀 Llama-2-Ko 🦙🇰🇷
Llama-2-Koは、Llama 2の高度なバージョンです。拡張された語彙と韓国語コーパスを用いた追加事前学習の恩恵を受けています。前作と同様に、Llama-2-Koは70億から700億のパラメータを持つ広範な生成テキストモデルの中で動作します。このリポジトリは、Hugging Face Transformersフォーマットに合わせた7B事前学習バージョンに焦点を当てています。他のモデルにアクセスするには、以下のインデックスを参照してください。
✨ 主な機能
モデルの詳細
- モデル開発者:Junbum Lee (Beomi)
- バリエーション:Llama-2-Koは、7B、13B、70Bといった様々なパラメータサイズのほか、事前学習バージョンと微調整バージョンが用意されます。
- 入力:モデルはテキストのみを入力とします。
- 出力:モデルはテキストのみを生成します。
- モデルアーキテクチャ:Llama-2-Koは、Llama-2に基づく最適化されたトランスフォーマーアーキテクチャを使用する自己回帰型言語モデルです。
プロパティ | 詳細 |
---|---|
モデルタイプ | Llama-2-Koは、Llama-2に基づく最適化されたトランスフォーマーアーキテクチャを使用する自己回帰型言語モデルです。 |
学習データ | 韓国語のオンラインデータの新しいミックス |
パラメータ | 7B |
コンテンツ長 | 4k |
GQA | ❌ |
トークン | >40B* |
学習率 | 1e-5 |
*200Bトークンまで学習する予定
語彙拡張
モデル名 | 語彙サイズ | 説明 |
---|---|---|
オリジナルのLlama-2 | 32000 | Sentencepiece BPE |
拡張版のLlama-2-Ko | 46336 | Sentencepiece BPE。韓国語の語彙とマージを追加 |
トークン化の例
「안녕하세요, 오늘은 날씨가 좋네요.」のトークン化
モデル | トークン |
---|---|
Llama-2 | ['▁', '안', '<0xEB>', '<0x85>', '<0x95>', '하', '세', '요', ',', '▁', '오', '<0xEB>', '<0x8A>', '<0x98>', '은', '▁', '<0xEB>', '<0x82>', '<0xA0>', '씨', '가', '▁', '<0xEC>', '<0xA2>', '<0x8B>', '<0xEB>', '<0x84>', '<0xA4>', '요'] |
Llama-2-Ko | ['▁안녕', '하세요', ',', '▁오늘은', '▁날', '씨가', '▁좋네요'] |
「Llama 2: Open Foundation and Fine-Tuned Chat Models」のトークン化
モデル | トークン |
---|---|
Llama-2 | ['▁L', 'l', 'ama', '▁', '2', ':', '▁Open', '▁Foundation', '▁and', '▁Fine', '-', 'T', 'un', 'ed', '▁Ch', 'at', '▁Mod', 'els'] |
Llama-2-Ko | ['▁L', 'l', 'ama', '▁', '2', ':', '▁Open', '▁Foundation', '▁and', '▁Fine', '-', 'T', 'un', 'ed', '▁Ch', 'at', '▁Mod', 'els'] |
📚 ドキュメント
モデルベンチマーク
LM Eval Harness - 韓国語 (polyglotブランチ)
- EleutherAIのlm-evaluation-harnessを使用:https://github.com/EleutherAI/lm-evaluation-harness/tree/polyglot
NSMC (Acc) - 50000件の完全テスト
TBD
COPA (F1)
モデル | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|
https://huggingface.co/skt/ko-gpt-trinity-1.2B-v0.5 | 0.6696 | 0.6477 | 0.6419 | 0.6514 |
https://huggingface.co/kakaobrain/kogpt | 0.7345 | 0.7287 | 0.7277 | 0.7479 |
https://huggingface.co/facebook/xglm-7.5B | 0.6723 | 0.6731 | 0.6769 | 0.7119 |
https://huggingface.co/EleutherAI/polyglot-ko-1.3b | 0.7196 | 0.7193 | 0.7204 | 0.7206 |
https://huggingface.co/EleutherAI/polyglot-ko-3.8b | 0.7595 | 0.7608 | 0.7638 | 0.7788 |
https://huggingface.co/EleutherAI/polyglot-ko-5.8b | 0.7745 | 0.7676 | 0.7775 | 0.7887 |
https://huggingface.co/EleutherAI/polyglot-ko-12.8b | 0.7937 | 0.8108 | 0.8037 | 0.8369 |
Llama-2 Original 7B* | 0.562033 | 0.575982 | 0.576216 | 0.595532 |
Llama-2-Ko-7b 20B (10k) | 0.738780 | 0.762639 | 0.780761 | 0.797863 |
Llama-2-Ko-7b 40B (20k) | 0.743630 | 0.792716 | 0.803746 | 0.825944 |
*Llama-2 Original 7Bはhttps://huggingface.co/meta-llama/Llama-2-7b-hf を使用(トークナイザ未更新)
HellaSwag (F1)
モデル | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|
https://huggingface.co/skt/ko-gpt-trinity-1.2B-v0.5 | 0.5243 | 0.5272 | 0.5166 | 0.5352 |
https://huggingface.co/kakaobrain/kogpt | 0.5590 | 0.5833 | 0.5828 | 0.5907 |
https://huggingface.co/facebook/xglm-7.5B | 0.5665 | 0.5689 | 0.5565 | 0.5622 |
https://huggingface.co/EleutherAI/polyglot-ko-1.3b | 0.5247 | 0.5260 | 0.5278 | 0.5427 |
https://huggingface.co/EleutherAI/polyglot-ko-3.8b | 0.5707 | 0.5830 | 0.5670 | 0.5787 |
https://huggingface.co/EleutherAI/polyglot-ko-5.8b | 0.5976 | 0.5998 | 0.5979 | 0.6208 |
https://huggingface.co/EleutherAI/polyglot-ko-12.8b | 0.5954 | 0.6306 | 0.6098 | 0.6118 |
Llama-2 Original 7B* | 0.415390 | 0.431382 | 0.421342 | 0.442003 |
Llama-2-Ko-7b 20B (10k) | 0.451757 | 0.466751 | 0.472607 | 0.482776 |
Llama-2-Ko-7b 40B (20k) | 0.456246 | 0.465665 | 0.469810 | 0.477374 |
*Llama-2 Original 7Bはhttps://huggingface.co/meta-llama/Llama-2-7b-hf を使用(トークナイザ未更新)
BoolQ (F1)
モデル | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|
https://huggingface.co/skt/ko-gpt-trinity-1.2B-v0.5 | 0.3356 | 0.4014 | 0.3640 | 0.3560 |
https://huggingface.co/kakaobrain/kogpt | 0.4514 | 0.5981 | 0.5499 | 0.5202 |
https://huggingface.co/facebook/xglm-7.5B | 0.4464 | 0.3324 | 0.3324 | 0.3324 |
https://huggingface.co/EleutherAI/polyglot-ko-1.3b | 0.3552 | 0.4751 | 0.4109 | 0.4038 |
https://huggingface.co/EleutherAI/polyglot-ko-3.8b | 0.4320 | 0.5263 | 0.4930 | 0.4038 |
https://huggingface.co/EleutherAI/polyglot-ko-5.8b | 0.4356 | 0.5698 | 0.5187 | 0.5236 |
https://huggingface.co/EleutherAI/polyglot-ko-12.8b | 0.4818 | 0.6041 | 0.6289 | 0.6448 |
Llama-2 Original 7B* | 0.352050 | 0.563238 | 0.474788 | 0.419222 |
Llama-2-Ko-7b 20B (10k) | 0.360656 | 0.679743 | 0.680109 | 0.662152 |
Llama-2-Ko-7b 40B (20k) | 0.578640 | 0.697747 | 0.708358 | 0.714423 |
*Llama-2 Original 7Bはhttps://huggingface.co/meta-llama/Llama-2-7b-hf を使用(トークナイザ未更新)
SentiNeg (F1)
モデル | 0-shot | 5-shot | 10-shot | 50-shot |
---|---|---|---|---|
https://huggingface.co/skt/ko-gpt-trinity-1.2B-v0.5 | 0.6065 | 0.6878 | 0.7280 | 0.8413 |
https://huggingface.co/kakaobrain/kogpt | 0.3747 | 0.8942 | 0.9294 | 0.9698 |
https://huggingface.co/facebook/xglm-7.5B | 0.3578 | 0.4471 | 0.3964 | 0.5271 |
https://huggingface.co/EleutherAI/polyglot-ko-1.3b | 0.6790 | 0.6257 | 0.5514 | 0.7851 |
https://huggingface.co/EleutherAI/polyglot-ko-3.8b | 0.4858 | 0.7950 | 0.7320 | 0.7851 |
https://huggingface.co/EleutherAI/polyglot-ko-5.8b | 0.3394 | 0.8841 | 0.8808 | 0.9521 |
https://huggingface.co/EleutherAI/polyglot-ko-12.8b | 0.9117 | 0.9015 | 0.9345 | 0.9723 |
Llama-2 Original 7B* | 0.347502 | 0.529124 | 0.480641 | 0.788457 |
Llama-2-Ko-7b 20B (10k) | 0.485546 | 0.829503 | 0.871141 | 0.851253 |
Llama-2-Ko-7b 40B (20k) | 0.459447 | 0.761079 | 0.727611 | 0.936988 |
*Llama-2 Original 7Bはhttps://huggingface.co/meta-llama/Llama-2-7b-hf を使用(トークナイザ未更新)
oobabooga/text-generation-webuiに関する注意事項
modules/models.py
のload_tokenizer
関数(109行目またはその近く)でValueError
を削除してください。
diff --git a/modules/models.py b/modules/models.py
index 232d5fa..de5b7a0 100644
--- a/modules/models.py
+++ b/modules/models.py
@@ -106,7 +106,7 @@ def load_tokenizer(model_name, model):
trust_remote_code=shared.args.trust_remote_code,
use_fast=False
)
- except ValueError:
+ except:
tokenizer = AutoTokenizer.from_pretrained(
path_to_model,
trust_remote_code=shared.args.trust_remote_code,
Llama-2-Koは、sentencepieceパッケージではなくHF tokenizersが提供するFastTokenizerを使用するため、トークナイザを初期化する際にuse_fast=True
オプションを使用する必要があります。
Apple SilliconはBF16演算をサポートしていないため、代わりにCPUを使用してください。(NVIDIA GPUを使用する場合はBF16がサポートされます)
引用
@misc {l._junbum_2023,
author = { {L. Junbum} },
title = { llama-2-ko-7b (Revision 4a9993e) },
year = 2023,
url = { https://huggingface.co/beomi/llama-2-ko-7b },
doi = { 10.57967/hf/1098 },
publisher = { Hugging Face }
}
謝辞
この学習は、TPU Research Cloudプログラムによってサポートされています。
Open LLM Leaderboard Evaluation Results
詳細な結果はこちらで確認できます。
メトリック | 値 |
---|---|
平均 | 39.43 |
ARC (25-shot) | 48.46 |
HellaSwag (10-shot) | 75.28 |
MMLU (5-shot) | 39.56 |
TruthfulQA (0-shot) | 34.49 |
Winogrande (5-shot) | 72.14 |
GSM8K (5-shot) | 1.97 |
DROP (3-shot) | 4.1 |
更新履歴
- 2023.12.27
- 新しいモデルが登場!オープンアクセス可能な韓国語テキストコーパスのみで学習:https://huggingface.co/beomi/open-llama-2-ko-7b
- 2023.10.19
transforemrs>=4.34.0
以降でのトークナイザのバグ(デコード時にスペースが適用されない)を修正



