pub enum LinearRole {
Show 18 variants
Q,
K,
V,
O,
Qkvz,
Ba,
GdnOut,
GateUp,
Down,
SharedGateUp,
SharedDown,
SharedGate,
MtpFc,
MambaIn,
MambaOut,
SharedUp,
MoeLatentIn,
MoeLatentOut,
}Expand description
2026-09-28: What a linear (GEMV/GEMM) node projects. Closed, like OpKind.
Variants§
Q
2026-09-28: Attention Q with its output gate, interleaved per head.
K
2026-09-28: Attention K.
V
2026-09-28: Attention V.
O
2026-09-28: Attention output projection.
Qkvz
2026-09-28: GatedDeltaNet in_proj_qkv and in_proj_z in one projection.
Ba
2026-09-28: GatedDeltaNet in_proj_b and in_proj_a (the beta and decay inputs).
GdnOut
2026-09-28: GatedDeltaNet out_proj.
GateUp
2026-09-28: MLP gate and up projections.
Down
2026-09-28: MLP down projection.
2026-09-28: MoE shared-expert gate and up projections.
2026-09-28: MoE shared-expert down projection.
2026-09-28: MoE shared-expert scalar gate (shared_expert_gate).
MtpFc
2026-09-28: MTP head input projection (fc, embedding and hidden concatenated).
MambaIn
2026-09-29: Mamba2 in_proj: z, x, B, C and dt in one projection.
MambaOut
2026-09-29: Mamba2 out_proj.
2026-09-29: An ungated MoE shared expert’s up projection.
MoeLatentIn
2026-09-30: A latent MoE’s projection from the hidden width into the experts’ latent
width (fc1_latent_proj, Nemotron-3 Super).
MoeLatentOut
2026-09-30: A latent MoE’s projection of the routed sum back to the hidden width
(fc2_latent_proj).
Implementations§
Trait Implementations§
Source§impl Clone for LinearRole
impl Clone for LinearRole
Source§fn clone(&self) -> LinearRole
fn clone(&self) -> LinearRole
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LinearRole
impl Debug for LinearRole
Source§impl Hash for LinearRole
impl Hash for LinearRole
Source§impl Ord for LinearRole
impl Ord for LinearRole
Source§fn cmp(&self, other: &LinearRole) -> Ordering
fn cmp(&self, other: &LinearRole) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for LinearRole
impl PartialEq for LinearRole
Source§impl PartialOrd for LinearRole
impl PartialOrd for LinearRole
impl Copy for LinearRole
impl Eq for LinearRole
impl StructuralPartialEq for LinearRole
Auto Trait Implementations§
impl Freeze for LinearRole
impl RefUnwindSafe for LinearRole
impl Send for LinearRole
impl Sync for LinearRole
impl Unpin for LinearRole
impl UnwindSafe for LinearRole
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.