license: llama3.1
language:
- el
- en
pipeline_tag: text-generation
library_name: transformers
tags:
- text-generation-inference
base_model:
- ilsp/Llama-Krikri-8B-Base
🚨 公式の量子化バージョンを使用してください: GGUF または特定のバージョンをリクエストしてください 🚨
🚨 モデルの重みを更新したため、サードパーティの量子化バージョンが最新の改善版である保証はありません 🚨
Llama-Krikri-8B-Instruct: ギリシャ語向けの命令調整済み大規模言語モデル
2024年3月26日にMeltemi-7Bをリリースした後、ILSPのオープンなギリシャ語LLMファミリーにKrikriを迎えることを嬉しく思います。
KrikriはLlama-3.1-8Bを基盤として構築され、高品質で地域に関連するギリシャ語テキストの大規模なコーパスを用いた継続的な事前学習により、ギリシャ語の能力を拡張しています。ベースモデルLlama-Krikri-8B-Baseと共に、Llama-Krikri-8B-Instructを発表します。
モデル情報
ベースモデル
- Llama-3.1トークナイザーの語彙をギリシャ語トークンで拡張
- 128kのコンテキスト長(約80,000ギリシャ語単語)
- 大規模なトレーニングコーパスを使用して、Llama-3.1-8Bの事前学習を拡張し、ギリシャ語の能力を追加しました。
- このコーパスには、公開利用可能なリソースから構築された567億の単一言語ギリシャ語トークンが含まれています。
- さらに、破滅的な忘却を緩和し、モデルが二言語能力を持つことを保証するため、単一言語英語テキスト(210億トークン)とギリシャ語-英語並列データ(55億トークン)の追加サブコーパスを使用しました。
- トレーニングコーパスには78億の数学とコードトークンも含まれています。
- このコーパスはデータ品質を確保するために処理、フィルタリング、重複排除されており、以下のように概要を示します:
サブコーパス |
トークン数 |
割合 |
ギリシャ語 |
56.7 B |
62.3 % |
英語 |
21.0 B |
23.1 % |
並列データ |
5.5 B |
6.0 % |
数学/コード |
7.8 B |
8.6 % |
合計 |
91 B |
100% |
910億トークンのコーパスの選択されたサブセットはアップサンプリングされ、1100億トークンのサイズになりました。
命令モデル
Llama-Krikri-8B-Instructは、Llama-Kriki-8B-Baseのポストトレーニングの結果であり、以下の特徴があります:
- ギリシャ語と英語の両方でのチャット能力と命令追従の強化。
- ギリシャ語から英語、フランス語、ドイツ語、イタリア語、ポルトガル語、スペイン語への文書翻訳およびその逆。
- 要約、創造的なコンテンツ作成、テキスト修正、エンティティ認識、感情分析などの生成、理解、編集タスクでの優れたパフォーマンス。
- 法律、金融、医療、科学アプリケーションのための専門的な知識。
- 128kのコンテキスト長を使用した複数文書を用いた検索拡張生成(RAG)。
- 正しいフォーマットとツール使用によるコーディングとエージェント能力の改善。
- データからテキスト、テキストからデータの設定での構造化抽出(例:XML、JSON)。
- 問題解決のための分析的思考と連鎖的思考(CoT)推論。
ポストトレーニング方法論
Llama-Krikri-8B-Instructを構築するために、以下の多段階プロセスを使用しました:
- ギリシャ語と英語の命令-応答ペア(およびマルチターン会話)の組み合わせを用いた2段階の教師ありファインチューニング
- 第1段階: 856,946の命令-応答ペア(371,379ギリシャ語 + 485,567英語)
- 第2段階: 638,408の命令-応答ペア(279,948ギリシャ語 + 358,460英語)
- ギリシャ語と英語の選好トリプレット(命令 - 選択された応答 - 拒否された応答)の組み合わせによるアライメント
- 長さ正規化DPO: 92,394の選好トリプレット(47,132ギリシャ語 + 45,262英語)
ポストトレーニングデータ構築
SFTおよびDPOデータを構築するために、以下の方法論を活用しました:
使用方法
Transformersを使用
from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda"
model = AutoModelForCausalLM.from_pretrained("ilsp/Llama-Krikri-8B-Instruct")
tokenizer = AutoTokenizer.from_pretrained("ilsp/Llama-Krikri-8B-Instruct")
model.to(device)
system_prompt = "Είσαι το Κρικρί, ένα εξαιρετικά ανεπτυγμένο μοντέλο Τεχνητής Νοημοσύνης για τα ελληνικα και εκπαιδεύτηκες από το ΙΕΛ του Ε.Κ. \"Αθηνά\"."
user_prompt = "Σε τι διαφέρει ένα κρικρί από ένα λάμα;"
messages = [
{"role": "system", "content": system_prompt},
{"role": "user", "content": user_prompt},
]
prompt = tokenizer.apply_chat_template(messages, add_generation_prompt=True, tokenize=False)
input_prompt = tokenizer(prompt, return_tensors='pt').to(device)
outputs = model.generate(input_prompt['input_ids'], max_new_tokens=256, do_sample=True)
print(tokenizer.batch_decode(outputs)[0])
vLLM経由のOpenAI互換サーバーを使用
vllm serve ilsp/Llama-Krikri-8B-Instruct \
--enforce-eager \
--dtype 'bfloat16' \
--api-key token-abc123
その後、Pythonを使用してモデルを利用できます:
from openai import OpenAI
api_key = "token-abc123"
base_url = "http://localhost:8000/v1"
client = OpenAI(
api_key=api_key,
base_url=base_url,
)
system_prompt = "Είσαι ένα ανεπτυγμένο μεταφραστικό σύστημα που απαντάει με λίστες Python. Δεν γράφεις τίποτα άλλο στις απαντήσεις σου πέρα από τις μεταφρασμένες λίστες."
user_prompt = "Δώσε μου την παρακάτω λίστα με μεταφρασμένο κάθε string της στα ελληνικά: ['Ethics of duty', 'Postmodern ethics', 'Consequentialist ethics', 'Utilitarian ethics', 'Deontological ethics', 'Virtue ethics', 'Relativist ethics']"
messages = [
{"role": "system", "content": system_prompt},
{"role": "user", "content": user_prompt},
]
response = client.chat.completions.create(model="ilsp/Llama-Krikri-8B-Instruct",
messages=messages,
temperature=0.0,
top_p=0.95,
max_tokens=8192,
stream=False)
print(response.choices[0].message.content)
評価
以下の表に、チャット評価スイートのスコアを報告します。これには以下が含まれます:
Llama-Krikri-8B-Instructは、テストしたすべてのモデルの中で、ギリシャ語と英語の両方での命令追従において最も強力なパフォーマンスを示しています。特に、ギリシャ語IFEvalで**+21.7%、英語IFEvalで+7.3%**、Llama-3.1-8B-Instructを上回っています。
また、ギリシャ語MT-Benchベンチマークで最も強力なチャット能力(Aya Expanse 8Bと比較して+0.28)を示し、英語版MT-Benchベンチマークでも非常に競争力があります。
|
IFEval EL (strict avg) |
IFEval EN (strict avg) |
MT-Bench EL |
MT-Bench EN |
Qwen 2.5 7B Instruct |
46.2% |
74.8% |
5.83 |
7.87 |
EuroLLM 9B Instruct |
51.3% |
64.5% |
5.98 |
6.27 |
Aya Expanse 8B |
50.4% |
62.2% |
7.68 |
6.92 |
Meltemi 7B v1.5 Instruct |
32.7% |
41.2% |
6.25 |
5.46 |
Llama-3.1-8B Instruct |
45.8% |
75.1% |
6.46 |
7.25 |
Llama-Krikri-8B Instruct |
67.5% |
82.4% |
7.96 |
7.21 |
また、Arena-Hard-Auto自動評価ツールと、公開されているギリシャ語版(こちら)を使用しました。Arena-Hard-Autoに対して2つのスコアを報告します:
- スタイル制御なし: ベンチマークのオリジナルバージョン。
- スタイル制御あり: Markdown要素のスタイル制御方法を適用したベンチマーク。方法論と技術的背景についてはこのブログ記事をご覧ください。
以下に、評価モデルとしてgpt-4o-2024-08-06、ベースラインモデルとしてgpt-4o-mini-2024-07-18(デフォルトで50%スコア)を使用して決定された、Arena-Hard-Autoのギリシャ語版のスコアを示します。
Llama-Krikri-8B Instructは、8倍以上のサイズのモデル(Llama-3.1-70B Instructなど)よりも高いスコアを記録し、クローズドソース(例:GPT-4o-Mini)および高性能オープンソースモデル(例:Gemma 2 27B ITおよびAya Expanse 32B)と競合する非常に強力なチャット能力を示しています。

以下に、オリジナルのArena-Hard-Autoデータセットのスコアを示します。評価モデルとしてgpt-4-1106-preview、ベースラインモデルとしてgpt-4-0314を使用したオリジナルの方法論に従いました。
Llama-Krikri-8B Instructは、英語版Arena-Hard-Autoでも非常に良好なパフォーマンスを示し、同サイズのLLMと競合し、Llama-3.1-8B Instructよりも+24.5% / +16%(スタイル制御なし / スタイル制御あり)向上させています。

*ご注意 評価モデルは、それらから蒸留されたデータでトレーニングされた学生モデルに対してバイアスがあります。詳細はこちらをご覧ください。
🚨 ポストトレーニング、方法論、評価に関する詳細情報は近日公開予定です。 🚨
謝辞
ILSPチームは、GRNETがOCRE Cloudフレームワークを通じて提供したAmazonのクラウドコンピューティングサービスを利用しました。これは、ギリシャの学術および研究コミュニティ向けのAmazon Web Servicesを提供しています。