Expand description
§Ceylon Memory
Memory backend implementations for agent state persistence.
This crate provides pluggable storage backends implementing the ceylon_core::Memory trait:
InMemoryBackend- Fast, thread-safe in-memory storage (default)- [
SqliteBackend] - File-based persistent storage (feature:sqlite) - [
RedisBackend] - Distributed persistent storage (feature:redis) - [
QdrantBackend] - Qdrant vector database (feature:qdrant) - [
ChromaDBBackend] - ChromaDB vector database (feature:chromadb) - [
PineconeBackend] - Pinecone vector database (feature:pinecone)
§Example
use ceylon_memory::InMemoryBackend;
use ceylon_core::{Memory, MemoryEntry, MemoryQuery};
let memory = InMemoryBackend::new();
// Store an entry
let entry = MemoryEntry::new("Important note");
let id = memory.store(entry).await?;
// Retrieve by ID
if let Some(entry) = memory.get(&id).await? {
println!("Content: {}", entry.content);
}Structs§
- InMemory
Backend - In-memory storage backend with TTL support
- Memory
Entry - Entry stored in memory
- Memory
Query - Query filter for memory retrieval
Traits§
- Memory
- Base memory trait - all backends must implement this
- Vector
Memory - Extended trait for vector-based semantic search