モデル概要
モデル特徴
モデル能力
使用事例
🚀 EXAONE-4.0-1.2B
EXAONE 4.0 を紹介します。このモデルは、非推論モード と 推論モード を統合しており、EXAONE 3.5 の優れた使いやすさと EXAONE Deep の高度な推論能力の両方を実現しています。エージェンティックAIの時代に備えて、EXAONE 4.0 はエージェントツールの使用などの重要な機能を組み込んでおり、多言語対応能力も拡張され、英語と韓国語に加えてスペイン語もサポートしています。
EXAONE 4.0 モデルシリーズは、高性能に最適化された中規模の 32B モデルと、デバイス上でのアプリケーション向けに設計された小規模の 1.2B モデルの2種類のサイズで構成されています。
EXAONE 4.0 アーキテクチャでは、以前のEXAONEモデルと比較して、以下の新しいアーキテクチャの変更を適用しています。
- ハイブリッドアテンション:32Bモデルには、ローカルアテンション(スライディングウィンドウアテンション) と グローバルアテンション(フルアテンション) を3:1の比率で組み合わせたハイブリッドアテンション方式を採用しています。グローバルアテンションにはRoPE(回転位置埋め込み)を使用せず、より良いグローバルコンテキスト理解を実現しています。
- QK-Reorder-Norm:トランスフォーマーブロックにはPre-LNではなくPost-LN(レイヤー正規化)方式を採用し、QとKの投影の直後にRMS正規化を追加しています。これにより、より多くの計算を消費するものの、下流のタスクでより良いパフォーマンスをもたらすことができます。
詳細については、技術レポート、ブログ、および GitHub を参照してください。
🎉 ライセンス更新!より柔軟なライセンス条項を発表できることを嬉しく思います 🤗
✈️ FriendliAI で試す
🚀 クイックスタート
オリジナルからフォークされた transformers ライブラリをインストールする必要があります。これは、私たちの PR で入手できます。このPRがマージされてリリースされたら、このセクションを更新します。
以下のコマンドを実行することで、EXAONE 4.0 をサポートする最新バージョンの transformers をインストールできます。
pip install git+https://github.com/lgai-exaone/transformers@add-exaone4
非推論モード
一般的な使用には、以下の例のように EXAONE 4.0 モデルを使用できます。
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "LGAI-EXAONE/EXAONE-4.0-1.2B"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="bfloat16",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
# あなたのプロンプトを選択
prompt = "Explain how wonderful you are"
prompt = "Explica lo increíble que eres"
prompt = "너가 얼마나 대단한지 설명해 봐"
messages = [
{"role": "user", "content": prompt}
]
input_ids = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt"
)
output = model.generate(
input_ids.to(model.device),
max_new_tokens=128,
do_sample=False,
)
print(tokenizer.decode(output[0]))
推論モード
EXAONE 4.0 モデルは、複雑な問題を処理するための推論能力を備えています。トークナイザーに enable_thinking=True
引数を使用することで、推論モードを有効にすることができます。これにより、<think>
タグで始まる推論ブロックが開かれます。
messages = [
{"role": "user", "content": "Which one is bigger, 3.12 vs 3.9?"}
]
input_ids = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt",
enable_thinking=True,
)
output = model.generate(
input_ids.to(model.device),
max_new_tokens=128,
do_sample=True,
temperature=0.6,
top_p=0.95
)
print(tokenizer.decode(output[0]))
⚠️ 重要な注意
推論モードでのモデル生成は、サンプリングパラメータに敏感に影響を受ける可能性があります。より良い品質を得るためには、使用ガイドライン を参照してください。
エージェントツールの使用
EXAONE 4.0 モデルは、ツール呼び出し機能を備えたエージェントとして使用できます。効果的なツール呼び出しのために、モデルにツールスキーマを提供することができます。
import random
def roll_dice(max_num: int):
return random.randint(1, max_num)
tools = [
{
"type": "function",
"function": {
"name": "roll_dice",
"description": "Roll a dice with the number 1 to N. User can select the number N.",
"parameters": {
"type": "object",
"required": ["max_num"],
"properties": {
"max_num": {
"type": "int",
"description": "Max number of the dice"
}
}
}
}
}
]
messages = [
{"role": "user", "content": "Roll D6 dice twice!"}
]
input_ids = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt",
tools=tools,
)
output = model.generate(
input_ids.to(model.device),
max_new_tokens=1024,
do_sample=True,
temperature=0.6,
top_p=0.95,
)
print(tokenizer.decode(output[0]))
✨ 主な機能
- 非推論モードと推論モードの統合:EXAONE 3.5 の使いやすさと EXAONE Deep の推論能力を兼ね備えます。
- 多言語対応:英語、韓国語、スペイン語をサポートします。
- エージェントツールの使用:ツール呼び出し機能を備えています。
- 新しいアーキテクチャ:ハイブリッドアテンションと QK-Reorder-Norm を採用しています。
📦 インストール
pip install git+https://github.com/lgai-exaone/transformers@add-exaone4
💻 使用例
基本的な使用法
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "LGAI-EXAONE/EXAONE-4.0-1.2B"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="bfloat16",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
# あなたのプロンプトを選択
prompt = "Explain how wonderful you are"
prompt = "Explica lo increíble que eres"
prompt = "너가 얼마나 대단한지 설명해 봐"
messages = [
{"role": "user", "content": prompt}
]
input_ids = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt"
)
output = model.generate(
input_ids.to(model.device),
max_new_tokens=128,
do_sample=False,
)
print(tokenizer.decode(output[0]))
高度な使用法
messages = [
{"role": "user", "content": "Which one is bigger, 3.12 vs 3.9?"}
]
input_ids = tokenizer.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
return_tensors="pt",
enable_thinking=True,
)
output = model.generate(
input_ids.to(model.device),
max_new_tokens=128,
do_sample=True,
temperature=0.6,
top_p=0.95
)
print(tokenizer.decode(output[0]))
🔧 技術詳細
モデル構成
属性 | 詳情 |
---|---|
パラメータ数(埋め込みなし) | 1.07B |
レイヤー数 | 30 |
アテンションヘッド数 | GQA with 32-heads and 8-KV heads |
語彙サイズ | 102,400 |
コンテキスト長 | 65,536トークン |
アーキテクチャの変更
- ハイブリッドアテンション:32Bモデルには、ローカルアテンション(スライディングウィンドウアテンション) と グローバルアテンション(フルアテンション) を3:1の比率で組み合わせたハイブリッドアテンション方式を採用しています。グローバルアテンションにはRoPE(回転位置埋め込み)を使用せず、より良いグローバルコンテキスト理解を実現しています。
- QK-Reorder-Norm:トランスフォーマーブロックにはPre-LNではなくPost-LN(レイヤー正規化)方式を採用し、QとKの投影の直後にRMS正規化を追加しています。これにより、より多くの計算を消費するものの、下流のタスクでより良いパフォーマンスをもたらすことができます。
📚 ドキュメント
詳細については、技術レポート、ブログ、および GitHub を参照してください。
📄 ライセンス
このプロジェクトは exaone ライセンスの下で提供されています。
デプロイメント
TensorRT-LLM
TensorRT-LLM は最新のコミットで EXAONE 4.0 モデルを公式にサポートしています。リリースされる前に、TensorRT-LLM リポジトリをクローンしてソースからビルドする必要があります。
git clone https://github.com/NVIDIA/TensorRT-LLM.git
リポジトリをクローンした後、インストールのためにソースをビルドする必要があります。TensorRT-LLM 環境をビルドするガイドについては、公式ドキュメント を参照してください。
以下の手順で TensorRT-LLM サーバーを実行できます。
- 追加の設定 YAML ファイルを作成します。
# extra_llm_api_config.yaml
kv_cache_config:
enable_block_reuse: false
- 設定を使用してサーバーを実行します。
trtllm-serve serve [MODEL_PATH] --backend pytorch --extra_llm_api_options extra_llm_api_config.yaml
詳細については、TensorRT-LLM の EXAONE のドキュメント を参照してください。
⚠️ 重要な注意
vllm
やsglang
などの他の推論エンジンは、現時点では EXAONE 4.0 を公式にサポートしていません。これらのライブラリが更新されたら、すぐに更新します。
パフォーマンス
以下の表は、各モデルの推論モードと非推論モードでの評価結果を示しています。評価の詳細は 技術レポート を参照してください。
- ✅ は、モデルがハイブリッド推論能力を持っていることを示しており、目的に応じて推論/非推論を選択して評価されています。
- 韓国語の 実用的 および 専門的 な知識を評価するために、KMMLU-Redux と KMMLU-Pro の両方のベンチマークを採用しています。両方のデータセットは公開されています!
32B 推論モード
EXAONE 4.0 32B | Phi 4 reasoning-plus | Magistral Small-2506 | Qwen 3 32B | Qwen 3 235B | DeepSeek R1-0528 | |
---|---|---|---|---|---|---|
モデルサイズ | 32.0B | 14.7B | 23.6B | 32.8B | 235B | 671B |
ハイブリッド推論 | ✅ | ✅ | ✅ | |||
世界知識 | ||||||
MMLU-Redux | 92.3 | 90.8 | 86.8 | 90.9 | 92.7 | 93.4 |
MMLU-Pro | 81.8 | 76.0 | 73.4 | 80.0 | 83.0 | 85.0 |
GPQA-Diamond | 75.4 | 68.9 | 68.2 | 68.4 | 71.1 | 81.0 |
数学/コーディング | ||||||
AIME 2025 | 85.3 | 78.0 | 62.8 | 72.9 | 81.5 | 87.5 |
HMMT Feb 2025 | 72.9 | 53.6 | 43.5 | 50.4 | 62.5 | 79.4 |
LiveCodeBench v5 | 72.6 | 51.7 | 55.8 | 65.7 | 70.7 | 75.2 |
LiveCodeBench v6 | 66.7 | 47.1 | 47.4 | 60.1 | 58.9 | 70.3 |
命令追従 | ||||||
IFEval | 83.7 | 84.9 | 37.9 | 85.0 | 83.4 | 80.8 |
Multi-IF (EN) | 73.5 | 56.1 | 27.4 | 73.4 | 73.4 | 72.0 |
エージェントツールの使用 | ||||||
BFCL-v3 | 63.9 | N/A | 40.4 | 70.3 | 70.8 | 64.7 |
Tau-bench (Airline) | 51.5 | N/A | 38.5 | 34.5 | 37.5 | 53.5 |
Tau-bench (Retail) | 62.8 | N/A | 10.2 | 55.2 | 58.3 | 63.9 |
多言語対応 | ||||||
KMMLU-Pro | 67.7 | 55.8 | 51.5 | 61.4 | 68.1 | 71.7 |
KMMLU-Redux | 72.7 | 62.7 | 54.6 | 67.5 | 74.5 | 77.0 |
KSM | 87.6 | 79.8 | 71.9 | 82.8 | 86.2 | 86.7 |
MMMLU (ES) | 85.6 | 84.3 | 68.9 | 82.8 | 86.7 | 88.2 |
MATH500 (ES) | 95.8 | 94.2 | 83.5 | 94.3 | 95.1 | 96.0 |
32B 非推論モード
EXAONE 4.0 32B | Phi 4 | Mistral-Small-2506 | Gemma 3 27B | Qwen3 32B | Qwen3 235B | Llama-4-Maverick | DeepSeek V3-0324 | |
---|---|---|---|---|---|---|---|---|
モデルサイズ | 32.0B | 14.7B | 24.0B | 27.4B | 32.8B | 235B | 402B | 671B |
ハイブリッド推論 | ✅ | ✅ | ✅ | |||||
世界知識 | ||||||||
MMLU-Redux | 89.8 | 88.3 | 85.9 | 85.0 | 85.7 | 89.2 | 92.3 | 92.3 |
MMLU-Pro | 77.6 | 70.4 | 69.1 | 67.5 | 74.4 | 77.4 | 80.5 | 81.2 |
GPQA-Diamond | 63.7 | 56.1 | 46.1 | 42.4 | 54.6 | 62.9 | 69.8 | 68.4 |
数学/コーディング | ||||||||
AIME 2025 | 35.9 | 17.8 | 30.2 | 23.8 | 20.2 | 24.7 | 18.0 | 50.0 |
HMMT Feb 2025 | 21.8 | 4.0 | 16.9 | 10.3 | 9.8 | 11.9 | 7.3 | 29.2 |
LiveCodeBench v5 | 43.3 | 24.6 | 25.8 | 27.5 | 31.3 | 35.3 | 43.4 | 46.7 |
LiveCodeBench v6 | 43.1 | 27.4 | 26.9 | 29.7 | 28.0 | 31.4 | 32.7 | 44.0 |
命令追従 | ||||||||
IFEval | 84.8 | 63.0 | 77.8 | 82.6 | 83.2 | 83.2 | 85.4 | 81.2 |
Multi-IF (EN) | 71.6 | 47.7 | 63.2 | 72.1 | 71.9 | 72.5 | 77.9 | 68.3 |
長文コンテキスト | ||||||||
HELMET | 58.3 | N/A | 61.9 | 58.3 | 54.5 | 63.3 | 13.7 | N/A |
RULER | 88.2 | N/A | 71.8 | 66.0 | 85.6 | 90.6 | 2.9 | N/A |
LongBench v1 | 48.1 | N/A | 51.5 | 51.5 | 44.2 | 45.3 | 34.7 | N/A |
エージェントツールの使用 | ||||||||
BFCL-v3 | 65.2 | N/A | 57.7 | N/A | 63.0 | 68.0 | 52.9 | 63.8 |
Tau-Bench (Airline) | 25.5 | N/A | 36.1 | N/A | 16.0 | 27.0 | 38.0 | 40.5 |
Tau-Bench (Retail) | 55.9 | N/A | 35.5 | N/A |



