pub struct BuiltinCompactAlgorithm;Expand description
The shipped default algorithm. All hooks are the trait defaults (builtin behavior).
Trait Implementations§
Source§impl Clone for BuiltinCompactAlgorithm
impl Clone for BuiltinCompactAlgorithm
Source§fn clone(&self) -> BuiltinCompactAlgorithm
fn clone(&self) -> BuiltinCompactAlgorithm
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 CompactAlgorithm for BuiltinCompactAlgorithm
impl CompactAlgorithm for BuiltinCompactAlgorithm
Source§fn decide_compact<'life0, 'life1, 'async_trait>(
&'life0 self,
context_tokens: u64,
context_window: u32,
settings: &'life1 CompactionSettings,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn decide_compact<'life0, 'life1, 'async_trait>(
&'life0 self,
context_tokens: u64,
context_window: u32,
settings: &'life1 CompactionSettings,
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Decide whether a compaction should trigger at this context level.
Default: the builtin 80%-of-window heuristic.
Source§fn select_cut_point<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
entries: &'life1 [SessionTreeEntry],
settings: &'life2 CompactionSettings,
) -> Pin<Box<dyn Future<Output = CutPointResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn select_cut_point<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
entries: &'life1 [SessionTreeEntry],
settings: &'life2 CompactionSettings,
) -> Pin<Box<dyn Future<Output = CutPointResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Choose the cut point (entries[..cut] get folded). Must land on a valid index in
[0, entries.len()]. Default: turn-boundary-safe keep_recent_tokens walk.Source§fn summarize_prefix<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
request: &'life1 SummarizeRequest<'life2>,
) -> Pin<Box<dyn Future<Output = Result<SummaryOutcome, SummarizeError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn summarize_prefix<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
request: &'life1 SummarizeRequest<'life2>,
) -> Pin<Box<dyn Future<Output = Result<SummaryOutcome, SummarizeError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Summarize the folded prefix. Default: LLM summarization with the budget-retry loop.
impl Copy for BuiltinCompactAlgorithm
Source§impl Debug for BuiltinCompactAlgorithm
impl Debug for BuiltinCompactAlgorithm
Source§impl Default for BuiltinCompactAlgorithm
impl Default for BuiltinCompactAlgorithm
Source§fn default() -> BuiltinCompactAlgorithm
fn default() -> BuiltinCompactAlgorithm
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for BuiltinCompactAlgorithm
impl RefUnwindSafe for BuiltinCompactAlgorithm
impl Send for BuiltinCompactAlgorithm
impl Sync for BuiltinCompactAlgorithm
impl Unpin for BuiltinCompactAlgorithm
impl UnsafeUnpin for BuiltinCompactAlgorithm
impl UnwindSafe for BuiltinCompactAlgorithm
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