From dcbb3f18715b8c1e23d63bc6daa80482552ebcfa Mon Sep 17 00:00:00 2001 From: bogdanm <152898065+bogdan01m@users.noreply.github.com> Date: Thu, 16 Oct 2025 17:27:44 +0500 Subject: [PATCH] [Bugfix] Correct LayerNorm epsilon parameter in modernbert.py (#27008) Signed-off-by: bogdanm <152898065+bogdan01m@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> --- vllm/model_executor/models/modernbert.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/vllm/model_executor/models/modernbert.py b/vllm/model_executor/models/modernbert.py index 5dbf38c69..5a0769f3b 100644 --- a/vllm/model_executor/models/modernbert.py +++ b/vllm/model_executor/models/modernbert.py @@ -39,9 +39,12 @@ class ModernBertEmbeddings(nn.Module): self.tok_embeddings = VocabParallelEmbedding( config.vocab_size, config.hidden_size ) - self.norm = nn.LayerNorm( - config.hidden_size, eps=config.layer_norm_eps, bias=config.norm_bias + eps = ( + getattr(config, "norm_eps", None) + or getattr(config, "layer_norm_eps", None) + or 1e-5 ) + self.norm = nn.LayerNorm(config.hidden_size, eps=eps, bias=config.norm_bias) def get_input_embeddings(self, input_ids: torch.Tensor) -> torch.Tensor: return self.tok_embeddings(input_ids)