Skip to content

Commit 700ac97

Browse files
committed
fix(granitemoe): Use an inline conditional for creation of self.block_sparse_moe
This will prevent additional SparseMoeBlock code from being injected during modelin_* generation. Branch: GraniteMoeAsDenseFix Signed-off-by: Gabe Goodhart <ghart@us.ibm.com>
1 parent d071704 commit 700ac97

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

src/transformers/models/granitemoe/modular_granitemoe.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -102,10 +102,9 @@ class GraniteMoeDecoderLayer(MixtralDecoderLayer):
102102
def __init__(self, config: GraniteMoeConfig, layer_idx: int):
103103
super().__init__(config, layer_idx)
104104
self.self_attn = GraniteMoeAttention(config=config, layer_idx=layer_idx)
105-
if config.num_local_experts > 0: # Diff with mixtral!
106-
self.block_sparse_moe = GraniteMoeMoE(config)
107-
elif self.block_sparse_moe:
108-
delattr(self, "block_sparse_moe") # Added by mixtral parent class
105+
self.block_sparse_moe = (
106+
GraniteMoeRMSNorm(config.hidden_size, eps=config.rms_norm_eps) if config.num_local_experts > 0 else None
107+
) # Diff with mixtral!
109108
self.input_layernorm = GraniteMoeRMSNorm(config.hidden_size, eps=config.rms_norm_eps)
110109
self.post_attention_layernorm = GraniteMoeRMSNorm(config.hidden_size, eps=config.rms_norm_eps)
111110

0 commit comments

Comments
 (0)