[Bugfix][UT]Fix EagleMiniCPMForCausalLM meet TypeError (#48452)
Signed-off-by: Lai, Yejing <yejing.lai@intel.com>
Yejing Lai committed
Jul 13, 2026 at 12:37 UTC
8c5dafcd0986b75602e509c8d3bf7e59451b4181
2 files changed
+11
-3
tests/models/registry.py
+1
-1
@@ -1513,7 +1513,7 @@ _SPECULATIVE_DECODING_EXAMPLE_MODELS = {
1513
tokenizer="meta-llama/Llama-4-Scout-17B-16E-Instruct",
1514
),
1515
"EagleMiniCPMForCausalLM": _HfExamplesInfo(
1516
- "openbmb/MiniCPM-1B-sft-bf16",
1516
+ "openbmb/MiniCPM-2B-sft-bf16",
1517
trust_remote_code=True,
1518
speculative_model="openbmb/MiniCPM-2B-sft-bf16",
1519
speculative_method="eagle",
vllm/model_executor/models/minicpm_eagle.py
+10
-2
@@ -70,6 +70,9 @@ class EagleMiniCPMDecoderLayer(nn.Module):
70
self.quant_config = quant_config
71
self.hidden_size = config.hidden_size
72
self.max_position_embeddings = getattr(config, "max_position_embeddings", 8192)
73
+ self.mup_denominator = getattr(
74
+ config, "mup_denominator", config.num_hidden_layers
75
+ )
76
self.prefix = prefix
77
self._init_attn_block()
78
self._init_ffn_block()
@@ -125,7 +128,7 @@ class EagleMiniCPMDecoderLayer(nn.Module):
128
hidden_states=hidden_states,
129
)
130
hidden_states = residual + hidden_states * (
128
- self.config.scale_depth / math.sqrt(self.config.mup_denominator)
131
+ self.config.scale_depth / math.sqrt(self.mup_denominator)
132
)
133
134
# Fully Connected
@@ -133,7 +136,7 @@ class EagleMiniCPMDecoderLayer(nn.Module):
136
hidden_states = self.post_attention_layernorm(hidden_states)
137
hidden_states = self.mlp(hidden_states)
138
hidden_states = residual + hidden_states * (
136
- self.config.scale_depth / math.sqrt(self.config.mup_denominator)
139
+ self.config.scale_depth / math.sqrt(self.mup_denominator)
140
)
141
142
return hidden_states, None
@@ -360,7 +363,12 @@ class EagleMiniCPMForCausalLM(nn.Module, SupportsLoRA, SupportsPP, SupportsEagle
363
input_ids: torch.Tensor,
364
positions: torch.Tensor,
365
hidden_states: torch.Tensor,
366
+ inputs_embeds: torch.Tensor | None = None,
367
) -> tuple[torch.Tensor, torch.Tensor]:
368
+ if inputs_embeds is not None:
369
+ raise NotImplementedError(
370
+ f"{type(self).__name__} does not support multimodal inputs yet."
371
+ )
372
hidden_states, hidden_states2 = self.model(input_ids, positions, hidden_states)
373
hidden_states = hidden_states / self.scale_width
374
hidden_states2 = hidden_states2 / self.scale_width