🚀 llm-jp-3.1-13b-instruct4
LLM-jp-3.1は、国立情報学研究所の大規模言語モデル研究開発センターによって開発された一連の大規模言語モデルです。
LLM-jp-3シリーズをベースに、LLM-jp-3.1モデルはミッドトレーニング(命令事前学習)を組み込んでおり、元のLLM-jp-3モデルと比較して命令に沿った応答能力が大幅に向上しています。
このリポジトリでは、llm-jp-3.1-13b-instruct4モデルを提供しています。
様々なパラメータサイズのLLM-jp-3.1モデルの概要については、以下を参照してください。
🚀 クイックスタート
必要なライブラリとそのバージョン
- torch>=2.3.0
- transformers>=4.40.1
- tokenizers>=0.19.1
- accelerate>=0.29.3
- flash-attn>=2.5.8
使い方
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("llm-jp/llm-jp-3.1-13b-instruct4")
model = AutoModelForCausalLM.from_pretrained("llm-jp/llm-jp-3.1-13b-instruct4", device_map="auto", torch_dtype=torch.bfloat16)
chat = [
{"role": "system", "content": "以下は、タスクを説明する指示です。要求を適切に満たす応答を書きなさい。"},
{"role": "user", "content": "自然言語処理とは何か"},
]
tokenized_input = tokenizer.apply_chat_template(chat, add_generation_prompt=True, tokenize=True, return_tensors="pt").to(model.device)
with torch.no_grad():
output = model.generate(
tokenized_input,
max_new_tokens=100,
do_sample=True,
top_p=0.95,
temperature=0.7,
repetition_penalty=1.05,
)[0]
print(tokenizer.decode(output))
✨ 主な機能
このモデルは、大規模言語モデルLLM-jp-3.1シリーズの一つで、命令事前学習により命令に沿った応答能力が向上しています。また、多言語のデータセットを用いて学習されており、様々な言語に対応しています。
📚 ドキュメント
モデルの詳細
属性 |
详情 |
モデルタイプ |
Transformerベースの言語モデル |
アーキテクチャ |
- 密モデル:
|
トークナイザー
このモデルのトークナイザーは、huggingface/tokenizersのUnigram byte-fallbackモデルに基づいています。語彙エントリは、llm-jp-tokenizer v3.0
から変換されています。語彙構築手順の詳細については、llm-jp-tokenizer
のREADME.mdを参照してください(純粋なSentencePieceトレーニングでは、この語彙を再現できません)。
データセット
事前学習
モデルは、以下のデータセットの混合を使用して事前学習されています。
ミッドトレーニング
LLM-jp-3.1シリーズでは、命令事前学習に基づいて継続的な事前学習を行っています。命令事前学習は、大量の命令と応答のペアで事前学習を続けることで、モデルが命令に沿った応答を生成する能力を向上させます。
約90Bトークンの命令と応答のデータを用意し、事前学習データセットと混合して、合計400Bトークンで継続的な事前学習を行いました。
各モデルは、既存のチェックポイント(llm-jp/llm-jp-3-1.8b、llm-jp/llm-jp-3-13b、およびllm-jp/llm-jp-3-8x13b)から初期化され、継続的な命令事前学習を行いました。
LLM-jp-3シリーズは元々2.1Tトークンで事前学習されていたため、合計の事前学習トークン数は2.5Tトークンになります。
この学習プロセスの詳細は、今後公開される論文で明らかにされます。この学習に使用された命令と応答のデータセットも公開される予定です。
事後学習
事前学習済みのチェックポイントを教師あり微調整で微調整し、さらに直接嗜好最適化(Direct Preference Optimization)で調整しています。
教師あり微調整
教師あり微調整に使用されるデータセットは以下の通りです。
直接嗜好最適化
直接嗜好最適化(DPO)には、棄却サンプリングを採用しています。
教師あり微調整で使用されたデータセットからプロンプトをサンプリングし、各プロンプトに対して複数の応答を生成します。
これらの応答は、Qwen/Qwen2.5-32B-Instructによってスコア付けされ、高スコアの応答を正例、低スコアの応答を負例としてDPOを行います。
DPOは2段階で行われます。
2段階目では、安全性に焦点を当てた日本語の嗜好データセットであるac-self-instを追加で使用しています。
評価
MT Bench(日本語と英語)
モデルはgpt-4o-2024-08-06
を使用して評価されました。
スコアは、3回の推論と評価から得られた平均値を表しています。
詳細については、コードを参照してください。
AnswerCarefully-Eval
AnswerCarefully-Evalは、llm-jp/AnswerCarefullyのテストセットに基づいて、LLM-as-a-Judgeアプローチを使用して日本語モデル出力の安全性を評価します。
モデルはgpt-4o-2024-08-06
を使用して評価されました。
スコアは、3回の推論と評価から得られた平均値を表しています。
詳細については、コードを参照してください。
リスクと制限
ここで公開されているモデルは、研究開発の初期段階のものであり、出力が人間の意図や安全性の考慮に沿ったものになるように調整されていません。
質問の送信先
llm-jp(at)nii.ac.jp
📄 ライセンス
Apache License, Version 2.0
モデルカード作成者
名前はアルファベット順に並んでいます。
Hirokazu KiyomaruとTakashi Kodama。