From b8a25d0e1216421b6218ca60796d73ead574bb3d Mon Sep 17 00:00:00 2001 From: Cyrus Leung Date: Thu, 14 May 2026 23:42:10 +0800 Subject: [PATCH] [Bugfix] Fix LM detection for Nemotron Parse (#42641) Signed-off-by: DarkLight1337 --- vllm/model_executor/models/interfaces.py | 3 ++- vllm/model_executor/models/nemotron_parse.py | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/vllm/model_executor/models/interfaces.py b/vllm/model_executor/models/interfaces.py index 7caf4c2207..d278af0607 100644 --- a/vllm/model_executor/models/interfaces.py +++ b/vllm/model_executor/models/interfaces.py @@ -207,7 +207,8 @@ class SupportsMultiModal(Protocol): raise NotImplementedError( f"No language model found in {type(self).__name__}! " - "You should initialize it via `_mark_language_model`." + "You should initialize it via `_mark_language_model`, " + "and make sure `embed_input_ids` is implemented." ) @contextmanager diff --git a/vllm/model_executor/models/nemotron_parse.py b/vllm/model_executor/models/nemotron_parse.py index ae417f095e..6e52e7cfe7 100644 --- a/vllm/model_executor/models/nemotron_parse.py +++ b/vllm/model_executor/models/nemotron_parse.py @@ -281,6 +281,9 @@ class MBartDecoderNoPos(nn.Module): self.layernorm_embedding = nn.LayerNorm(config.d_model) self.layer_norm = nn.LayerNorm(config.d_model) + def embed_input_ids(self, input_ids: torch.Tensor) -> torch.Tensor: + return self.embed_tokens(input_ids) + def forward( self, decoder_input_ids: torch.Tensor | None,