pub struct EmbryoGraphModel {Show 38 fields
pub id: u64,
pub hidden: usize,
pub intermediate: usize,
pub vocab: usize,
pub layers: usize,
pub phase_heads: usize,
pub nphase: usize,
pub phase_dv: usize,
pub anchor_q_heads: usize,
pub anchor_kv_heads: usize,
pub anchor_head_dim: usize,
pub rotary_dim: usize,
pub max_seq: usize,
pub cluster_count: usize,
pub cluster_size: usize,
pub phase_state_len: usize,
pub state_stride: usize,
pub kv_stride: usize,
pub norm_gemma: bool,
pub phase_mass: f32,
pub weights: Vec<f32>,
pub meta: Vec<u32>,
pub lm_head: Vec<f32>,
pub clusters: Vec<f32>,
pub final_norm: Vec<f32>,
pub inv_freq: Vec<f32>,
pub bounded: bool,
pub kv_layers: usize,
pub state_layers: usize,
pub anchor_window: usize,
pub anchor_sink: usize,
pub phase_layers: usize,
pub gdn_layers: usize,
pub gdn_heads: usize,
pub gdn_k_heads: usize,
pub gdn_dk: usize,
pub gdn_dv: usize,
pub gdn_kk: usize,
}Expand description
Packed, f32-only Embryo model consumed by the resident Vulkan graph.
This is deliberately a separate representation from CmfModel: the
Embryo graph owns one contiguous device copy and never dereferences the
mmap or asks the ordinary per-op residency path for a tensor. meta
contains byte-free element offsets into weights; UINT_MAX marks an
absent optional matrix. The builder lives in pipeline.rs, where the
architecture-specific weight types are visible.
Fields§
§id: u64§intermediate: usize§vocab: usize§layers: usize§phase_heads: usize§nphase: usize§phase_dv: usize§anchor_q_heads: usize§anchor_kv_heads: usize§anchor_head_dim: usize§rotary_dim: usize§max_seq: usize§cluster_count: usize§cluster_size: usize§phase_state_len: usize§state_stride: usize§kv_stride: usize§norm_gemma: bool§phase_mass: f32§weights: Vec<f32>§meta: Vec<u32>§lm_head: Vec<f32>§clusters: Vec<f32>§final_norm: Vec<f32>§inv_freq: Vec<f32>§bounded: boolNatively bounded anchors (swa_sink_v1): every anchor layer owns a
ring of anchor_window raw keys/values instead of a max_seq KV
plane, so kv_stride is the ring size, kv_layers counts the
anchors, and no position cap applies (the operator has none).
kv_layers: usizeLayers that own a KV/ring slot of kv_stride f32 (all layers for
the legacy full anchor — offsets are layer·kv_stride — or the
bounded anchors only).
state_layers: usizeRecurrent (phase or GDN) layers — the state buffer holds one
state_stride per such layer; anchors own none.
anchor_window: usize§anchor_sink: usize§phase_layers: usizevmf_phase mixer layers (kind 0/1) in the stack.
gdn_layers: usizeGatedDeltaNet mixer layers (kind 4) in the stack; their geometry
is gdn_heads (nv), gdn_k_heads (nk), gdn_dk, gdn_dv,
gdn_kk (conv taps) — header words 24..29 of meta.
gdn_heads: usize§gdn_k_heads: usize§gdn_dk: usize§gdn_dv: usize§gdn_kk: usize