pub enum CompactionStrategy {
Drop,
Summarize,
}Expand description
Strategy applied when conversation history exceeds max_context_messages.
Variants§
Drop
Drop the oldest messages silently (default, preserves existing behavior).
Summarize
Summarize overflow messages and prepend the summary to the system prompt.
Requires a Summarizer to be injected at
build_context time. Falls back to Drop if none is provided.
Trait Implementations§
Source§impl Clone for CompactionStrategy
impl Clone for CompactionStrategy
Source§fn clone(&self) -> CompactionStrategy
fn clone(&self) -> CompactionStrategy
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 CompactionStrategy
impl Debug for CompactionStrategy
Source§impl Default for CompactionStrategy
impl Default for CompactionStrategy
Source§fn default() -> CompactionStrategy
fn default() -> CompactionStrategy
Returns the “default value” for a type. Read more
Source§impl PartialEq for CompactionStrategy
impl PartialEq for CompactionStrategy
impl Copy for CompactionStrategy
impl Eq for CompactionStrategy
impl StructuralPartialEq for CompactionStrategy
Auto Trait Implementations§
impl Freeze for CompactionStrategy
impl RefUnwindSafe for CompactionStrategy
impl Send for CompactionStrategy
impl Sync for CompactionStrategy
impl Unpin for CompactionStrategy
impl UnsafeUnpin for CompactionStrategy
impl UnwindSafe for CompactionStrategy
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.