pub struct MultiQueryAttentionConfig {
pub num_heads: usize,
pub num_kv_heads: usize,
pub head_dim: usize,
pub dropout_prob: f64,
pub causal: bool,
}Expand description
Configuration for Multi-Query Attention
Fields§
§num_heads: usizeNumber of query heads
num_kv_heads: usizeNumber of KV heads (1 = pure MQA, num_heads = standard MHA)
head_dim: usizePer-head dimension
dropout_prob: f64Dropout probability
causal: boolWhether to apply causal masking
Implementations§
Source§impl MultiQueryAttentionConfig
impl MultiQueryAttentionConfig
Sourcepub fn with_num_kv_heads(self, n: usize) -> Self
pub fn with_num_kv_heads(self, n: usize) -> Self
Set number of KV heads (1 = MQA, num_heads = MHA)
Sourcepub fn with_causal(self, causal: bool) -> Self
pub fn with_causal(self, causal: bool) -> Self
Enable or disable causal masking
Sourcepub fn with_dropout(self, prob: f64) -> Self
pub fn with_dropout(self, prob: f64) -> Self
Set dropout probability
Trait Implementations§
Source§impl Clone for MultiQueryAttentionConfig
impl Clone for MultiQueryAttentionConfig
Source§fn clone(&self) -> MultiQueryAttentionConfig
fn clone(&self) -> MultiQueryAttentionConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MultiQueryAttentionConfig
impl Debug for MultiQueryAttentionConfig
Auto Trait Implementations§
impl Freeze for MultiQueryAttentionConfig
impl RefUnwindSafe for MultiQueryAttentionConfig
impl Send for MultiQueryAttentionConfig
impl Sync for MultiQueryAttentionConfig
impl Unpin for MultiQueryAttentionConfig
impl UnsafeUnpin for MultiQueryAttentionConfig
impl UnwindSafe for MultiQueryAttentionConfig
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.