docs/source/en/model_doc/hyperclovax.md
This model was released on 2025-07-21 and added to Hugging Face Transformers on 2026-05-06.
<div style="float: right;"> <div class="flex flex-wrap space-x-1"></div>
HyperCLOVA X SEED Think is NAVER Cloud's language model combining pruning and knowledge distillation with advanced reasoning capabilities. The 14B model features a Transformer-based architecture with Peri-Layer Normalization and Maximal Update Parameterization (μP), 14.74B parameters, and 32k context length. It supports dual-mode reasoning (think / non-think) and function calling via a ChatML-based format.
The model was trained with a multi-stage RL pipeline (SFT → RLVR → Length Controllability → joint RLHF+RLVR) and achieves strong performance on Korean language benchmarks and reasoning tasks.
HyperCLOVA X shares a high degree of implementation similarity with Granite, with the following modifications:
attention_multiplier, residual_multiplier, embedding_multiplier, logits_scaling) to enable stable training across model sizes. head_dim (defaults to hidden_size // num_attention_heads) is used to compute the default attention_multiplier.use_post_norm=True.This model was contributed by NAVER Cloud HyperCLOVA X Team. The original model can be found at naver-hyperclovax/HyperCLOVAX-SEED-Think-14B.
The model uses a ChatML-based format with special tokens <|im_start|>, <|im_end|>, <|endofturn|>, and <|stop|>. The apply_chat_template method accepts the following kwargs:
force_reasoning=True — always think before answeringskip_reasoning=True — always answer directly (non-think mode)None) — model decides based on contextimport torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "naver-hyperclovax/HyperCLOVAX-SEED-Think-14B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
device_map="auto",
)
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "What is the capital of South Korea?"},
]
# Pass force_reasoning=True to always think, or skip_reasoning=True to skip thinking.
model_inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt",
# force_reasoning=True,
# skip_reasoning=True,
).to(model.device)
output = model.generate(
**model_inputs,
tokenizer=tokenizer,
)
print(tokenizer.decode(output[0][model_inputs["input_ids"].shape[-1]:], skip_special_tokens=True))
[[autodoc]] HyperCLOVAXConfig
[[autodoc]] HyperCLOVAXModel - forward
[[autodoc]] HyperCLOVAXForCausalLM - forward