61 transformer blocks › 58 MoE blocks › Mixture of experts › 256 routed experts
Element-wise product
×no parametersF.silu(self.w1(x).float()) * self.w3(x).float()
Gate the up features by the activated gate, feature by feature.
- in
- [B batch, T positions, 2048 expert d_ff] [B batch, T positions, 2048 expert d_ff]
- out
- [B batch, T positions, 2048 expert d_ff]
Codemodel.py 730–732, 744
self.w1 = Linear(dim, inter_dim)
self.w2 = Linear(inter_dim, dim)
self.w3 = Linear(dim, inter_dim) return self.w2((F.silu(self.w1(x).float()) * self.w3(x).float()).type_as(x))Sources1
Direct evidence
Each routed expert is its own SwiGLU MLP of moe_inter_dim hidden features.
expert · deepseek-ai/DeepSeek-V3.2-Exp / inference/model.py
Pinned revision 87e509a2e5a1 ↗ · lines 730–744
Read code excerpt
self.w1 = Linear(dim, inter_dim)
self.w2 = Linear(inter_dim, dim)
self.w3 = Linear(dim, inter_dim)… lines 733–743 omitted …
return self.w2((F.silu(self.w1(x).float()) * self.w3(x).float()).type_as(x))