pub struct ConsolidationConfig {
pub enabled: bool,
pub consolidation_provider: ProviderName,
pub confidence_threshold: f32,
pub sweep_interval_secs: u64,
pub sweep_batch_size: usize,
pub similarity_threshold: f32,
}Expand description
Configuration for the All-Mem lifelong memory consolidation sweep ([memory.consolidation]).
When enabled = true, a background loop periodically clusters semantically similar messages
and merges them into consolidated entries via an LLM call. Originals are never deleted —
they are marked as consolidated and deprioritized in recall via temporal decay.
Fields§
§enabled: boolEnable the consolidation background loop. Default: false.
consolidation_provider: ProviderNameProvider name from [[llm.providers]] for consolidation LLM calls.
Falls back to the primary provider when empty. Default: "".
confidence_threshold: f32Minimum LLM-assigned confidence for a topology op to be applied. Default: 0.7.
sweep_interval_secs: u64How often the background consolidation sweep runs, in seconds. Default: 3600.
sweep_batch_size: usizeMaximum number of messages to evaluate per sweep cycle. Default: 50.
similarity_threshold: f32Minimum cosine similarity for two messages to be considered consolidation candidates.
Default: 0.85.
Trait Implementations§
Source§impl Clone for ConsolidationConfig
impl Clone for ConsolidationConfig
Source§fn clone(&self) -> ConsolidationConfig
fn clone(&self) -> ConsolidationConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ConsolidationConfig
impl Debug for ConsolidationConfig
Source§impl Default for ConsolidationConfig
impl Default for ConsolidationConfig
Source§impl<'de> Deserialize<'de> for ConsolidationConfigwhere
ConsolidationConfig: Default,
impl<'de> Deserialize<'de> for ConsolidationConfigwhere
ConsolidationConfig: Default,
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>,
Auto Trait Implementations§
impl Freeze for ConsolidationConfig
impl RefUnwindSafe for ConsolidationConfig
impl Send for ConsolidationConfig
impl Sync for ConsolidationConfig
impl Unpin for ConsolidationConfig
impl UnsafeUnpin for ConsolidationConfig
impl UnwindSafe for ConsolidationConfig
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
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>
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>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request