pub struct G4eLayer {Show 20 fields
pub input_norm: Vec<f32>,
pub attn_out_norm: Vec<f32>,
pub pre_ffn_norm: Vec<f32>,
pub post_ffw_norm: Vec<f32>,
pub wq: QTensor,
pub wk: Option<QTensor>,
pub wv: Option<QTensor>,
pub wo: QTensor,
pub q_norm: Vec<f32>,
pub k_norm: Option<Vec<f32>>,
pub kv_share_src: Option<usize>,
pub sliding: bool,
pub hd: usize,
pub gate: QTensor,
pub up: QTensor,
pub down: QTensor,
pub ple_gate: QTensor,
pub ple_proj: QTensor,
pub post_ple_norm: Vec<f32>,
pub layer_scalar: Option<f32>,
}Fields§
§input_norm: Vec<f32>Pre-attention norm (HF input_layernorm).
attn_out_norm: Vec<f32>Attention-branch output norm (HF post_attention_layernorm).
pre_ffn_norm: Vec<f32>Pre-FFN norm (HF pre_feedforward_layernorm).
post_ffw_norm: Vec<f32>FFN-branch output norm (HF post_feedforward_layernorm).
wq: QTensor§wk: Option<QTensor>Shared-KV layers carry no k/v projections and read the cache of
kv_share_src instead of appending their own.
wv: Option<QTensor>§wo: QTensor§q_norm: Vec<f32>§k_norm: Option<Vec<f32>>§sliding: bool§hd: usizePer-layer head width: head_dim on sliding layers,
global_head_dim on full layers.
gate: QTensor§up: QTensor§down: QTensor§ple_gate: QTensorPLE injection: gelu(gate·h) ⊙ ple → proj → norm.
ple_proj: QTensor§post_ple_norm: Vec<f32>§layer_scalar: Option<f32>HF layer_scalar — per-block output scale (absent = 1.0).
Auto Trait Implementations§
impl Freeze for G4eLayer
impl RefUnwindSafe for G4eLayer
impl Send for G4eLayer
impl Sync for G4eLayer
impl Unpin for G4eLayer
impl UnsafeUnpin for G4eLayer
impl UnwindSafe for G4eLayer
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
Mutably borrows from an owned value. Read more