pub enum CompressionStrategy {
SlidingWindow {
window_size: usize,
},
Summarize {
max_summary_tokens: usize,
},
DropOldest {
keep_last: usize,
},
Hybrid {
window_size: usize,
summary_tokens: usize,
},
}Expand description
Strategy used when compressing a context window.
Variants§
SlidingWindow
Keep only the last window_size non-system messages (plus all system messages).
Summarize
Replace dropped messages with a synthetic summary up to max_summary_tokens.
DropOldest
Keep system messages plus the last keep_last messages.
Hybrid
Drop oldest until within window, then summarize if still over budget.
Trait Implementations§
Source§impl Clone for CompressionStrategy
impl Clone for CompressionStrategy
Source§fn clone(&self) -> CompressionStrategy
fn clone(&self) -> CompressionStrategy
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 moreAuto Trait Implementations§
impl Freeze for CompressionStrategy
impl RefUnwindSafe for CompressionStrategy
impl Send for CompressionStrategy
impl Sync for CompressionStrategy
impl Unpin for CompressionStrategy
impl UnsafeUnpin for CompressionStrategy
impl UnwindSafe for CompressionStrategy
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§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>
Wrap the input message
T in a tonic::Request