pub struct SemanticCompressor { /* private fields */ }Expand description
Semantic compressor that uses AI to summarize messages.
Implementations§
Source§impl SemanticCompressor
impl SemanticCompressor
pub fn new(min_tokens: u32, target_ratio: f32) -> Self
Sourcepub fn extract_key_info(message: &Message) -> KeyInfo
pub fn extract_key_info(message: &Message) -> KeyInfo
Extract key information from a message.
Sourcepub fn should_summarize(&self, messages: &[Message]) -> bool
pub fn should_summarize(&self, messages: &[Message]) -> bool
Check if messages should be semantically compressed.
Sourcepub fn create_summary_prompt(messages: &[Message]) -> String
pub fn create_summary_prompt(messages: &[Message]) -> String
Generate a summary prompt for the messages.
Sourcepub fn create_summary_message(summary: ConversationSummary) -> Message
pub fn create_summary_message(summary: ConversationSummary) -> Message
Create a compressed summary message.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SemanticCompressor
impl RefUnwindSafe for SemanticCompressor
impl Send for SemanticCompressor
impl Sync for SemanticCompressor
impl Unpin for SemanticCompressor
impl UnsafeUnpin for SemanticCompressor
impl UnwindSafe for SemanticCompressor
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