generaliseFromEpisodes method
Generalises from episodic memories into semantic facts.
This is the core consolidation step: repeated episodic patterns → generalised semantic knowledge.
Implementation
int generaliseFromEpisodes(List<Memory> memories) {
var newFacts = 0;
for (final memory in memories) {
final extracted = _extractTriples(memory.content);
for (final triple in extracted) {
final fact = storeFact(
subject: triple.subject,
predicate: triple.predicate,
object: triple.object,
confidence: memory.strength * 0.5,
episodeId: memory.id,
);
if (fact.occurrences == 1) newFacts++;
}
}
if (newFacts > 0) {
_logger.info(
'Generalised $newFacts new semantic fact(s) from episodes');
}
return newFacts;
}