pub enum AttentionKind {
Gqa,
KimiHybrid(KimiHybridAttention),
}Expand description
Which attention mechanism a model uses. Gqa (grouped-query
attention + RoPE, uniform across every layer) is the only variant
ferrox-core/ferrox-models::decoder actually implement today –
it’s what every preset runs through, including the two whose real
published attention differs (DeepSeek V4 Pro’s CSA/HCA, Kimi K3’s
hybrid KDA/Gated-MLA). KimiHybrid exists so Kimi K3’s real,
cited attention hyperparameters are captured accurately rather than
silently discarded, even though Decoder itself still runs the
GQA path for every layer (the dedicated Kimi decoder is the one
consumer of the hybrid variant today).
Variants§
Gqa
KimiHybrid(KimiHybridAttention)
Trait Implementations§
Source§impl Clone for AttentionKind
impl Clone for AttentionKind
Source§fn clone(&self) -> AttentionKind
fn clone(&self) -> AttentionKind
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for AttentionKind
impl RefUnwindSafe for AttentionKind
impl Send for AttentionKind
impl Sync for AttentionKind
impl Unpin for AttentionKind
impl UnsafeUnpin for AttentionKind
impl UnwindSafe for AttentionKind
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more