Model Overview
Model Features
Model Capabilities
Use Cases
๐ EXAONE-4.0-32B
EXAONE 4.0 integrates a Non-reasoning mode and Reasoning mode, achieving both the excellent usability of EXAONE 3.5 and the advanced reasoning abilities of EXAONE Deep. It incorporates essential features for the agentic AI era and extends multilingual capabilities to support Spanish in addition to English and Korean. The model series includes a 32B high - performance model and a 1.2B on - device model.
๐ License Updated! We are pleased to announce our more flexible licensing terms ๐ค
โ๏ธ Try on FriendliAI
โจ Features
- Integrated Modes: Combines Non - reasoning mode and Reasoning mode to balance usability and advanced reasoning.
- Multilingual Support: Supports English, Korean, and Spanish.
- Agentic Tool Use: Capable of using tools effectively for various tasks.
- New Architectural Changes: Adopts Hybrid Attention and QK - Reorder - Norm for better performance.
๐ฆ Installation
You should install the transformers library forked from the original, available in our PR. Once this PR is merged and released, we will update this section.
You can install the latest version of transformers with support for EXAONE 4.0 by following the command:
pip install git+https://github.com/lgai-exaone/transformers@add-exaone4
๐ป Usage Examples
Basic Usage
Non - reasoning mode
For general use, you can use the EXAONE 4.0 models with the following example:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "LGAI-EXAONE/EXAONE-4.0-32B"
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype="bfloat16",
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)
# choose your prompt
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]))
Advanced Usage
Reasoning mode
The EXAONE 4.0 models have reasoning capabilities for handling complex problems. You can activate reasoning mode by using the enable_thinking=True
argument with the tokenizer, which opens a reasoning block that starts with <think>
tag without closing it.
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]))
โ ๏ธ Important Note
The model generation with reasoning mode can be affected sensitively by sampling parameters, so please refer to the Usage Guideline for better quality.
Agentic tool use
The EXAONE 4.0 models can be used as agents with their tool calling capabilities. You can provide tool schemas to the model for effective tool calling.
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]))
๐ Documentation
Introduction
We introduce EXAONE 4.0, which integrates a Non-reasoning mode and Reasoning mode to achieve both the excellent usability of EXAONE 3.5 and the advanced reasoning abilities of EXAONE Deep. To pave the way for the agentic AI era, EXAONE 4.0 incorporates essential features such as agentic tool use, and its multilingual capabilities are extended to support Spanish in addition to English and Korean.
The EXAONE 4.0 model series consists of two sizes: a mid - size 32B model optimized for high performance, and a small - size 1.2B model designed for on - device applications.
Model Configuration
Property | Details |
---|---|
Number of Parameters (without embeddings) | 30.95B |
Number of Layers | 64 |
Number of Attention Heads | GQA with 40 - heads and 8 - KV heads |
Vocab Size | 102,400 |
Context Length | 131,072 tokens |
Deployment
TensorRT - LLM
TensorRT - LLM officially supports EXAONE 4.0 models in the latest commits. Before it is released, you need to clone the TensorRT - LLM repository to build from source.
git clone https://github.com/NVIDIA/TensorRT-LLM.git
After cloning the repository, you need to build the source for installation. Please refer to the official documentation for a guide to build the TensorRT - LLM environment.
You can run the TensorRT - LLM server by following steps:
-
Write extra configuration YAML file
# extra_llm_api_config.yaml kv_cache_config: enable_block_reuse: false
-
Run server with the configuration
trtllm-serve serve [MODEL_PATH] --backend pytorch --extra_llm_api_options extra_llm_api_config.yaml
๐ก Usage Tip
Other inference engines including
vllm
andsglang
don't support the EXAONE 4.0 officially now. We will update as soon as these libraries are updated.
Performance
The following tables show the evaluation results of each model, with reasoning and non - reasoning mode. The evaluation details can be found in the technical report.
- โ denotes the model has a hybrid reasoning capability, evaluated by selecting reasoning / non - reasoning on the purpose.
- To assess Korean practical and professional knowledge, we adopt both the KMMLU - Redux and KMMLU - Pro benchmarks. Both datasets are publicly released!
32B Reasoning Mode
EXAONE 4.0 32B | Phi 4 reasoning - plus | Magistral Small - 2506 | Qwen 3 32B | Qwen 3 235B | DeepSeek R1 - 0528 | |
---|---|---|---|---|---|---|
Model Size | 32.0B | 14.7B | 23.6B | 32.8B | 235B | 671B |
Hybrid Reasoning | โ | โ | โ | |||
World Knowledge | ||||||
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 |
Math/Coding | ||||||
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 |
Instruction Following | ||||||
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 |
Agentic Tool Use | ||||||
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 |
Multilinguality | ||||||
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 Non - Reasoning Mode
EXAONE 4.0 32B | Phi 4 | Mistral - Small - 2506 | Gemma 3 27B | Qwen3 32B | Qwen3 235B | Llama - 4 - Maverick | DeepSeek V3 - 0324 | |
---|---|---|---|---|---|---|---|---|
Model Size | 32.0B | 14.7B | 24.0B | 27.4B | 32.8B | 235B | 402B | 671B |
Hybrid Reasoning | โ | โ | โ | |||||
World Knowledge | ||||||||
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 |
Math/Coding | ||||||||
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 |
Instruction Following | ||||||||
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 |
Long Context | ||||||||
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 |
Agentic Tool Use | ||||||||
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 | ... | ... | ... | ... |
๐ง Technical Details
In the EXAONE 4.0 architecture, we apply new architectural changes compared to previous EXAONE models as below:
- Hybrid Attention: For the 32B model, we adopt hybrid attention scheme, which combines Local attention (sliding window attention) with Global attention (full attention) in a 3:1 ratio. We do not use RoPE (Rotary Positional Embedding) for global attention for better global context understanding.
- QK - Reorder - Norm: We adopt the Post - LN (LayerNorm) scheme for transformer blocks instead of Pre - LN, and we add RMS normalization right after the Q and K projection. It helps yield better performance on downstream tasks despite consuming more computation.
For more details, please refer to our technical report, blog, and GitHub.
๐ License
License: other License Name: exaone License Link: LICENSE

