pub struct FlashAttention { /* private fields */ }Expand description
Flash Attention: Memory-efficient scaled dot-product attention.
This struct provides the flash attention computation without maintaining learned parameters. It is designed to be used within attention modules that handle Q, K, V projections separately.
Implementations§
Source§impl FlashAttention
impl FlashAttention
Sourcepub fn new(dim_head: usize, config: FlashAttentionConfig) -> Self
pub fn new(dim_head: usize, config: FlashAttentionConfig) -> Self
Create a new Flash Attention module.
§Arguments
dim_head- Dimension of each attention head (for scaling)config- Flash Attention configuration
Sourcepub fn with_dim_head(dim_head: usize) -> Self
pub fn with_dim_head(dim_head: usize) -> Self
Create with default configuration.
Trait Implementations§
Source§impl Clone for FlashAttention
impl Clone for FlashAttention
Source§fn clone(&self) -> FlashAttention
fn clone(&self) -> FlashAttention
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 moreAuto Trait Implementations§
impl Freeze for FlashAttention
impl RefUnwindSafe for FlashAttention
impl Send for FlashAttention
impl Sync for FlashAttention
impl Unpin for FlashAttention
impl UnsafeUnpin for FlashAttention
impl UnwindSafe for FlashAttention
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