AI Agents · Lektion

Gedächtnisverfall und Garbage Collection

Vergessen Sie alte, wenig relevante Erinnerungen nach einem Zeitplan, damit der Index fokussiert bleibt.

Lektion 4 von 415 Schritte

Gedächtnisverfall und Garbage Collection ist eine kostenlose AI Agents-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Agents-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.

Der Speicher wächst unbegrenzt

Ohne aktive Wartung wächst Ihr Speicherbestand ständig weiter. Alte, irrelevante Erinnerungen beeinträchtigen den Abruf und verschwenden Speicherplatz.

Speicher benötigt genau wie jede andere Ressource eine Garbage Collection.

Warum Erinnerungen löschen?

  • Datenschutz – erfüllen Sie Löschanfragen gemäß DSGVO/CCPA
  • Relevanz – alte Fakten sind inzwischen möglicherweise nicht mehr korrekt
  • Kosten – Vektorspeicher summiert sich bei großen Datenmengen
  • Qualität – überfüllte Indizes verwässern die Relevanz der Suchergebnisse

Strategie 1: TTL

Legen Sie für jede Erinnerung einen Ablaufzeitpunkt fest:

ALTER TABLE semantic_facts ADD COLUMN expires_at TIMESTAMPTZ;

-- short-lived
INSERT INTO semantic_facts (..., expires_at) VALUES (..., NOW() + INTERVAL '7 days');

-- garbage collect
DELETE FROM semantic_facts WHERE expires_at < NOW();

Strategie 2: Zeitbasierter Verfall

Verringern Sie das Vertrauen mit zunehmendem Alter – ältere Erinnerungen werden nachrangig behandelt:

import math

def decayed_confidence(original, age_days, half_life_days=30):
    return original * math.exp(-age_days * math.log(2) / half_life_days)

# Then retrieval filters: WHERE decayed_confidence > 0.3
for age in [0, 30, 60, 90]:
    print(f"Age {age} days -> confidence {decayed_confidence(1.0, age):.3f}")

Strategie 3: Nutzungsbasierter Verfall

Erinnerungen, die nie abgerufen werden, sind nicht nützlich – löschen Sie sie nach einer Schonfrist:

ALTER TABLE semantic_facts ADD COLUMN last_used_at TIMESTAMPTZ DEFAULT NOW();

-- update on retrieval
UPDATE semantic_facts SET last_used_at = NOW() WHERE id = ANY(:retrieved_ids);

-- gc
DELETE FROM semantic_facts WHERE last_used_at < NOW() - INTERVAL '90 days';

Strategie 4: Kapazitätsgrenze pro Benutzer

Begrenzen Sie die Anzahl der Erinnerungen pro Benutzer. Wenn das Limit erreicht ist, entfernen Sie den am seltensten verwendeten Eintrag:

MAX_FACTS = 500

SELECT COUNT(*) FROM semantic_facts WHERE user_id = %s;
-- if > MAX_FACTS: delete oldest unused

Komprimierung: Ähnliche Erinnerungen zusammenführen

Mehrere Erinnerungen können in unterschiedlicher Form dasselbe aussagen. Clustern und führen Sie sie regelmäßig zusammen:

def compact(user_id):
    facts = all_facts(user_id)
    clusters = cluster_by_embedding(facts, threshold=0.85)
    for cluster in clusters:
        merged = llm.invoke(f'Merge these into one canonical statement: {cluster}')
        replace_with_merged(cluster, merged)

Widersprüche auflösen

Wenn sich zwei Erinnerungen widersprechen, markieren Sie die ältere als veraltet:

def resolve(user_id, new_fact):
    similar = retrieve(user_id, new_fact, k=5)
    for s in similar:
        if llm_says_contradicts(s, new_fact):
            mark_obsolete(s.id)
    save(new_fact)

Strategie 5: Gewichtung nach Wichtigkeit

Manche Erinnerungen sind wichtiger als andere. Bewerten Sie jede einzelne:

importance_prompt = 'Rate the importance of this fact for future interactions (0-1):\n{fact}'

for fact in facts:
    score = float(llm.invoke(importance_prompt.format(fact=fact)).content)
    update_importance(fact.id, score)

# Retrieval: weight by importance and recency

Zusammenfassung nach dem Letta-Prinzip

Letta (MemGPT) komprimiert alte Archivdaten, indem beim Füllen des Speichers Blöcke zusammengehöriger Fakten zusammengefasst werden:

if archival_size > LIMIT:
    block = oldest_facts(50)
    summary = summarise(block)
    replace(block, summary)

Vom Benutzer ausgelöschte Daten

Geben Sie Benutzern eine Schaltfläche „Alles über mich vergessen“. Bei einem Klick darauf:

def forget_user(user_id):
    conn.execute('DELETE FROM semantic_facts WHERE user_id = %s', (user_id,))
    conn.execute('DELETE FROM episodes WHERE user_id = %s', (user_id,))
    vector_db.delete(filter={'user_id': user_id})

Soft Delete vs. Hard Delete

Für Audits ist Soft Delete vorzuziehen (als gelöscht markieren und verschlüsselt aufbewahren), bis die Aufbewahrungsfrist abgelaufen ist. Danach führen Sie ein Hard Delete durch:

ALTER TABLE semantic_facts ADD COLUMN deleted_at TIMESTAMPTZ;
-- queries always: WHERE deleted_at IS NULL

Geplante GC-Jobs

Führen Sie die GC nach einem Zeitplan aus (Cron, täglicher Worker). Führen Sie keine umfangreiche GC inline aus – das erhöht die Latenz für Benutzer:

# Daily cron at 03:00 UTC
for user_id in all_users():
    decay_confidence(user_id)
    delete_expired(user_id)
    compact_clusters(user_id)

Warum Verfall?

Warum sollte das Vertrauen in Erinnerungen mit der Zeit abnehmen?

Zusammenfassung

TTL, Verfall, nutzungsbasierte Entfernung, Kapazitätsgrenzen, Komprimierung, Auflösung von Widersprüchen und vom Benutzer ausgelöschte Daten. Der Speicher braucht eine Reinigungskraft – bauen Sie eine ein.

Kostenlos starten

Lerne AI Agents mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
60
Lektionen
239

Häufig gestellte Fragen

Ist die Lektion „Gedächtnisverfall und Garbage Collection“ kostenlos?

Ja — der vollständige Text von „Gedächtnisverfall und Garbage Collection“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Agents-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Gedächtnisverfall und Garbage Collection“?

Vergessen Sie alte, wenig relevante Erinnerungen nach einem Zeitplan, damit der Index fokussiert bleibt. Du übst AI Agents mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um AI Agents zu starten?

Keine Vorkenntnisse erforderlich. AI Agents auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Gedächtnisverfall und Garbage Collection“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser AI Agents-Lektion Code schreiben und ausführen?

Ja. Jede AI Agents-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Episodisches Gedächtnis (Verlauf pro Sitzung)
  2. Semantisches Gedächtnis (vektorisierte Fakten)
  3. Prozedurales Gedächtnis (Fähigkeitsbibliothek)
  4. Gedächtnisverfall und Garbage Collection
← Zurück zu AI Agents