pub enum CacheStateStrategy {
FullKv,
SlidingKv {
window: u64,
},
SlidingKey {
window: u64,
layers: u64,
pooling_layers: u64,
},
MixedKv {
full_layers: u64,
sliding: Vec<SlidingWindowLayerCount>,
},
SharedFullKv {
cached_layers: u64,
shared_layers: u64,
full_attention_layers: u64,
sliding_attention: Vec<SlidingWindowLayerCount>,
},
CompressedMla {
latent_width: u64,
rotary_width: u64,
},
HybridRecurrent {
full_attention_layers: u64,
sliding_attention: Vec<SlidingWindowLayerCount>,
recurrent_layers: u64,
},
Multimodal {
decoder: Box<CacheStateStrategy>,
media_consumes_decoder_positions: bool,
},
}Expand description
Persistent decoder-state strategy used by a model.
Variants§
FullKv
Ordinary full-context K/V attention.
SlidingKv
Every attention cache is bounded by a sliding window.
SlidingKey
Sliding-window key-only attention, optionally with pooled history.
Fields
MixedKv
Full-context and sliding-window attention layers.
Fields
§
sliding: Vec<SlidingWindowLayerCount>Bounded layer counts grouped by retained window.
Full-context KV backing with layers that reuse earlier K/V state.
CompressedMla
Multi-head latent attention compressed state.
Fields
HybridRecurrent
Attention combined with bounded convolution or recurrent state.
Fields
§
sliding_attention: Vec<SlidingWindowLayerCount>Bounded attention layers grouped by exact window.
Multimodal
Multimodal preparation feeding positions into a decoder strategy.
Fields
§
decoder: Box<CacheStateStrategy>Underlying decoder state.
Trait Implementations§
Source§impl Clone for CacheStateStrategy
impl Clone for CacheStateStrategy
Source§fn clone(&self) -> CacheStateStrategy
fn clone(&self) -> CacheStateStrategy
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 moreSource§impl Debug for CacheStateStrategy
impl Debug for CacheStateStrategy
Source§impl<'de> Deserialize<'de> for CacheStateStrategy
impl<'de> Deserialize<'de> for CacheStateStrategy
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for CacheStateStrategy
Source§impl PartialEq for CacheStateStrategy
impl PartialEq for CacheStateStrategy
Source§impl Serialize for CacheStateStrategy
impl Serialize for CacheStateStrategy
impl StructuralPartialEq for CacheStateStrategy
Auto Trait Implementations§
impl Freeze for CacheStateStrategy
impl RefUnwindSafe for CacheStateStrategy
impl Send for CacheStateStrategy
impl Sync for CacheStateStrategy
impl Unpin for CacheStateStrategy
impl UnsafeUnpin for CacheStateStrategy
impl UnwindSafe for CacheStateStrategy
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