pub struct VectorMemory<E = SimpleEmbedder, S = InMemoryVectorStore> { /* private fields */ }Expand description
Memory backend that combines recent history with semantic retrieval.
Implementations§
Source§impl<E, S> VectorMemory<E, S>where
E: Embedder,
S: VectorStore,
impl<E, S> VectorMemory<E, S>where
E: Embedder,
S: VectorStore,
Sourcepub fn with_components(embedder: Arc<E>, store: Arc<S>) -> Self
pub fn with_components(embedder: Arc<E>, store: Arc<S>) -> Self
Creates a vector memory with custom embedder and store.
Trait Implementations§
Source§impl<E, S> Memory for VectorMemory<E, S>where
E: Embedder,
S: VectorStore,
impl<E, S> Memory for VectorMemory<E, S>where
E: Embedder,
S: VectorStore,
Source§fn store<'life0, 'life1, 'async_trait>(
&'life0 mut self,
key: &'life1 str,
value: Message,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn store<'life0, 'life1, 'async_trait>(
&'life0 mut self,
key: &'life1 str,
value: Message,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Stores a message under a logical key.
Source§fn retrieve<'life0, 'life1, 'async_trait>(
&'life0 self,
query: &'life1 str,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn retrieve<'life0, 'life1, 'async_trait>(
&'life0 self,
query: &'life1 str,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<Message>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Retrieves relevant messages for a query.
Source§impl<E, S> SearchableMemory for VectorMemory<E, S>where
E: Embedder,
S: VectorStore,
impl<E, S> SearchableMemory for VectorMemory<E, S>where
E: Embedder,
S: VectorStore,
Auto Trait Implementations§
impl<E, S> Freeze for VectorMemory<E, S>
impl<E, S> RefUnwindSafe for VectorMemory<E, S>where
E: RefUnwindSafe,
S: RefUnwindSafe,
impl<E, S> Send for VectorMemory<E, S>
impl<E, S> Sync for VectorMemory<E, S>
impl<E, S> Unpin for VectorMemory<E, S>
impl<E, S> UnsafeUnpin for VectorMemory<E, S>
impl<E, S> UnwindSafe for VectorMemory<E, S>where
E: RefUnwindSafe,
S: RefUnwindSafe,
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