pub struct EnrichmentConfig {
pub enabled: bool,
pub trigger_interval: u64,
pub min_confidence: f32,
pub max_enrichment_confidence: f32,
pub enable_user_model: bool,
pub entity_merge_threshold: f32,
pub entity_separate_threshold: f32,
pub copy_source_attributes: Vec<String>,
pub candidate_types: Vec<MemoryType>,
}Expand description
Configuration for sleeptime enrichment pipeline.
Enrichment runs BETWEEN conversations, never in the hot path. The engine tracks state and provides candidates; callers invoke the async LLM pipeline when ready.
Fields§
§enabled: boolWhether enrichment is enabled. Default: false (opt-in).
trigger_interval: u64Run enrichment after this many process_turn calls. Default: 50.
min_confidence: f32Minimum confidence for extracted memories to be stored. Default: 0.6.
max_enrichment_confidence: f32Maximum confidence for enrichment-generated memories. Default: 0.7.
enable_user_model: boolWhether to generate a user model summary. Default: false.
entity_merge_threshold: f32Embedding similarity threshold to merge entities. Default: 0.7.
entity_separate_threshold: f32Embedding similarity below which entities are kept separate. Default: 0.4.
copy_source_attributes: Vec<String>Attribute keys copied from the source memories onto every derived memory (facts, entities, communities), so caller supplied provenance (a document id, a channel) follows the knowledge derived from it. The first source carrying a key wins. Default: none.
candidate_types: Vec<MemoryType>Memory types enrichment reads as candidates. Default: episodic only.
Derived memories (tagged source:enrichment) are never candidates.