pub struct KVCacheConfig {
pub enabled: bool,
pub retrieval_enabled: bool,
pub clear_after_conversations: usize,
pub memory_threshold_percent: f32,
pub bridge_enabled: bool,
pub max_cache_entries: usize,
pub min_importance_to_preserve: f32,
pub generate_cache_embeddings: bool,
pub retrieval_strategy: RetrievalStrategy,
pub preserve_system_prompts: bool,
pub preserve_code_entries: bool,
pub snapshot_strategy: SnapshotStrategy,
}Expand description
Configuration for the KV cache management system
Fields§
§enabled: boolWhether cache management is enabled
retrieval_enabled: boolWhether retrieval is enabled
clear_after_conversations: usizeNumber of conversations before clearing cache
memory_threshold_percent: f32Memory threshold percentage (0.6 = 60%) for clearing
bridge_enabled: boolWhether to create bridging sentences between cached and retrieved content
max_cache_entries: usizeMaximum entries to keep in KV cache after clearing
min_importance_to_preserve: f32Minimum importance score to preserve entries during clearing
generate_cache_embeddings: boolWhether to generate embeddings for cache retrieval
retrieval_strategy: RetrievalStrategyRetrieval strategy to use
preserve_system_prompts: boolWhether to preserve system prompts in cache
preserve_code_entries: boolWhether to preserve code-related KV entries
snapshot_strategy: SnapshotStrategySnapshot strategy to use
Trait Implementations§
Source§impl Clone for KVCacheConfig
impl Clone for KVCacheConfig
Source§fn clone(&self) -> KVCacheConfig
fn clone(&self) -> KVCacheConfig
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 KVCacheConfig
impl Debug for KVCacheConfig
Source§impl Default for KVCacheConfig
impl Default for KVCacheConfig
Source§impl<'de> Deserialize<'de> for KVCacheConfig
impl<'de> Deserialize<'de> for KVCacheConfig
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
Auto Trait Implementations§
impl Freeze for KVCacheConfig
impl RefUnwindSafe for KVCacheConfig
impl Send for KVCacheConfig
impl Sync for KVCacheConfig
impl Unpin for KVCacheConfig
impl UnsafeUnpin for KVCacheConfig
impl UnwindSafe for KVCacheConfig
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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